diff --git a/devtools/travis-ci/setup_env.sh b/devtools/travis-ci/setup_env.sh index faa176c6..15096411 100755 --- a/devtools/travis-ci/setup_env.sh +++ b/devtools/travis-ci/setup_env.sh @@ -23,6 +23,7 @@ source activate myenv # mock pip install mock +pip install matplotlib==2.0.0 pip install moviepy==0.2.2.11 pip install imageio==1.6 diff --git a/js/src/widget_ngl.js b/js/src/widget_ngl.js index 1b2d70bf..cfa00065 100644 --- a/js/src/widget_ngl.js +++ b/js/src/widget_ngl.js @@ -308,6 +308,12 @@ var NGLView = widgets.DOMWidgetView.extend({ this.sync_camera = false; }, + viewXZPlane: function() { + var m = new NGL.Matrix4().makeRotationX( Math.PI / 2 ); + var q = new NGL.Quaternion().setFromRotationMatrix( m ); + this.stage.viewerControls.rotate( q ); + }, + makeDefaultRepr: function(o) { var reprDefList = this.model.get("_init_representations"); reprDefList.forEach(function(reprDef) { diff --git a/nglview/static/index.js b/nglview/static/index.js index cea97f48..9e466311 100644 --- a/nglview/static/index.js +++ b/nglview/static/index.js @@ -379,6 +379,12 @@ define(["jupyter-js-widgets"], function(__WEBPACK_EXTERNAL_MODULE_2__) { return this.sync_camera = false; }, + viewXZPlane: function() { + var m = new NGL.Matrix4().makeRotationX( Math.PI / 2 ); + var q = new NGL.Quaternion().setFromRotationMatrix( m ); + this.stage.viewerControls.rotate( q ); + }, + makeDefaultRepr: function(o) { var reprDefList = this.model.get("_init_representations"); reprDefList.forEach(function(reprDef) { diff --git a/nglview/static/index.js.map b/nglview/static/index.js.map index 50061ca2..1c4a51f3 100644 --- a/nglview/static/index.js.map +++ b/nglview/static/index.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///webpack/bootstrap f38227723018389c2ac0","webpack:///./src/index.js","webpack:///./src/widget_ngl.js","webpack:///external \"jupyter-js-widgets\"","webpack:///./~/ngl/dist/ngl.js","webpack:///./~/timers-browserify/main.js","webpack:///./~/setimmediate/setImmediate.js","webpack:///./~/process/browser.js","webpack:///./~/jquery/dist/jquery.js","webpack:///./~/jquery-ui/ui/widgets/draggable.js","webpack:///./~/jquery-ui/ui/widgets/mouse.js","webpack:///./~/jquery-ui/ui/ie.js","webpack:///./~/jquery-ui/ui/version.js","webpack:///./~/jquery-ui/ui/widget.js","webpack:///./~/jquery-ui/ui/data.js","webpack:///./~/jquery-ui/ui/plugin.js","webpack:///./~/jquery-ui/ui/safe-blur.js","webpack:///./~/jquery-ui/ui/scroll-parent.js","webpack:///./~/jquery-ui/ui/safe-active-element.js","webpack:///./~/jquery-ui/ui/widgets/slider.js","webpack:///./~/jquery-ui/ui/keycode.js","webpack:///./~/jquery-ui/ui/widgets/dialog.js","webpack:///./~/jquery-ui/ui/widgets/button.js","webpack:///./~/jquery-ui/ui/widgets/controlgroup.js","webpack:///./~/jquery-ui/ui/widgets/checkboxradio.js","webpack:///./~/jquery-ui/ui/escape-selector.js","webpack:///./~/jquery-ui/ui/form-reset-mixin.js","webpack:///./~/jquery-ui/ui/form.js","webpack:///./~/jquery-ui/ui/labels.js","webpack:///./~/jquery-ui/ui/widgets/resizable.js","webpack:///./~/jquery-ui/ui/disable-selection.js","webpack:///./~/jquery-ui/ui/focusable.js","webpack:///./~/jquery-ui/ui/tabbable.js","webpack:///./~/jquery-ui/ui/unique-id.js","webpack:///./~/jquery-ui/ui/position.js","webpack:///./package.json"],"names":[],"mappings":";AAAA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,uBAAe;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;;;;;;ACtCA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;;;;AClBA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,EAAC;AACD;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAS;;AAET;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAa;AACb;;AAEA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,cAAa;AACb,UAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,UAAS;;AAET;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;;AAET;AACA;AACA;AACA,UAAS;;AAET;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;;AAET;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAa;AACb;AACA;AACA;AACA,UAAS;;AAET;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;;AAET;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAa;AACb;AACA;AACA;AACA,UAAS;;AAET;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAa;AACb;AACA;AACA,cAAa;AACb,UAAS;;AAET;AACA;AACA;AACA,UAAS;;AAET;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAkB;AAClB;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAK;;AAEL;AACA;AACA,MAAK;;AAEL;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA,UAAS;AACT,MAAK;;AAEL;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAa;AACb;AACA,MAAK;;AAEL;AACA;AACA;;AAEA,wBAAuB,kBAAkB;AACzC;AACA;AACA;AACA,4BAA2B,0BAA0B;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT,MAAK;;AAEL;AACA;AACA;AACA,aAAY;AACZ;AACA;AACA,SAAQ;AACR;AACA;AACA,MAAK;;AAEL;AACA;AACA,MAAK;;AAEL;AACA;AACA,MAAK;;AAEL;AACA;AACA,MAAK;;AAEL;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA,UAAS;;AAET;AACA;AACA;AACA,MAAK;;;AAGL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,sBAAqB;AACrB;AACA;AACA,kBAAiB;AACjB,cAAa;AACb;AACA;AACA;AACA;AACA;AACA,cAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAqB;AACrB;AACA;AACA,2BAA0B;AAC1B,kBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAqB;AACrB,kBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAa;;AAEb;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA;;AAEA,wBAAuB,gCAAgC;AACvD;AACA;AACA;AACA;AACA;AACA,kBAAiB;AACjB;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,cAAa;AACb;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAa;AACb;AACA,MAAK;;AAEL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAmB,mBAAmB;AACtC,UAAS;AACT;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAuB,mBAAmB;AAC1C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA,iDAAgD,mBAAmB;AACnE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAc;AACd;AACA;AACA,WAAU;AACV,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,oBAAmB,SAAS;AAC5B;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAa;AACb;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA,cAAa;AACb,UAAS;AACT,MAAK;;AAEL;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAa;AACb;AACA;AACA;AACA,uBAAsB,IAAI,mBAAmB;AAC7C,cAAa;AACb,UAAS;AACT;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;AACA,cAAa;AACb;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAa;AACb;AACA;AACA;AACA,cAAa;AACb;AACA;AACA;AACA;AACA,uBAAsB,IAAI,mBAAmB;AAC7C,cAAa;AACb;AACA;AACA;AACA,cAAa;AACb,UAAS;AACT;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;AACA,cAAa;AACb,MAAK;;AAEL;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAa;AACb;AACA,MAAK;;AAEL;AACA;AACA;AACA,MAAK;;AAEL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA,UAAS;AACT,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA,iEAAgE;AAChE;AACA;AACA,cAAa;AACb;AACA,UAAS;AACT,MAAK;;AAEL;;AAEA;;AAEA,wBAAuB,kBAAkB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA,oBAAmB,sCAAsC;AACzD,MAAK;;AAEL;AACA,yBAAwB,yBAAyB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAkB;AAClB,eAAc;AACd;AACA;AACA,mBAAkB;AAClB;AACA;AACA;AACA,qBAAoB,mBAAmB;AACvC,eAAc;AACd,WAAU;AACV;AACA;AACA,qBAAoB,mBAAmB;AACvC,eAAc;AACd;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAqB;AACrB;AACA;AACA;AACA,sBAAqB;AACrB;AACA,sBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;;AAEA,4BAA2B,iBAAiB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;;AAEA,wBAAuB,iBAAiB;AACxC;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA,cAAa;AACb;AACA,cAAa;AACb,4BAA2B,gCAAgC;AAC3D;AACA;AACA;AACA;AACA,MAAK;AACL,EAAC;;AAED;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAa;AACb,UAAS;AACT,MAAK;;AAEL;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAa;AACb,UAAS;AACT;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;AACA,cAAa;AACb,MAAK;AACL,EAAC;;AAED;AACA;AACA;AACA;AACA;;;;;;;ACv8BA,gD;;;;;;ACAA,oEAAe,8FAA6I,EAAE,kBAAkB,aAAa,cAAc,gBAAgB,kBAAkB,sBAAsB,cAAc,qFAAqF,8DAA8D,+EAA+E,gBAAgB,KAAK,aAAa,YAAY,gFAAgF,8CAA8C,8DAA8D,MAAM,IAAI,cAAc,SAAS,2BAA2B,eAAe,GAAG,gBAAgB,IAAI,0EAA0E,kDAAkD,aAAa,yDAAyD,gDAAgD,2BAA2B,SAAS,QAAQ,gBAAgB,2BAA2B,cAAc,qDAAqD,yBAAyB,EAAE,kCAAkC,IAAI,yBAAyB,kBAAkB,kBAAkB,wGAAwG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ACA;;AAEA;AACA;AACA,2CAA0C,sBAAsB,EAAE;AAClE;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,UAAS;AACT;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,0CAAyC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,WAAU;AACV;AACA;;AAEA,MAAK;AACL;AACA;;AAEA,MAAK;AACL;AACA;;AAEA,MAAK;AACL;AACA;;AAEA,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA,EAAC;;;;;;;;ACzLD;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA,MAAK;AACL;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;AACA;;;;AAIA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,wBAAuB,sBAAsB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAqB;AACrB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,4BAA2B;AAC3B;AACA;AACA;AACA,6BAA4B,UAAU;;;;;;;ACnLtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;;AAEA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;;;AAIA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,gCAA+B;AAC/B;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,SAAQ,YAAY;;AAEpB;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,OAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF,qBAAoB;;AAEpB;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,kDAAiD;AACjD;AACA;;AAEA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;;AAEJ;AACA;;AAEA;AACA;AACA;AACA,GAAE;;AAEF,iCAAgC;AAChC;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA,WAAU,YAAY;AACtB;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA,UAAS,SAAS;AAClB;AACA;;AAEA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,UAAS,YAAY;AACrB;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAU,YAAY;AACtB;;AAEA;AACA;AACA;AACA;;AAEA;AACA,IAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,EAAC;;AAED;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA,cAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS,SAAS;AAClB;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,2BAA0B;AAC1B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;;AAEA,iBAAgB,IAAI;;AAEpB;AACA;;AAEA;AACA;;AAEA;AACA,yCAAwC,IAAI;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;AACD,UAAS;;AAET;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;;AAEA;AACA,OAAM;;AAEN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,MAAK;AACL;AACA;;AAEA;AACA,MAAK;AACL;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA,OAAM;AACN;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAM;AACN,OAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,cAAa,yBAAyB;AACtC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAW,SAAS;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAW,SAAS;AACpB;AACA;AACA;;AAEA;AACA;AACA,GAAE;AACF;AACA,GAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAW,OAAO;AAClB,YAAW,SAAS;AACpB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAW,QAAQ;AACnB,YAAW,QAAQ;AACnB,cAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,YAAW,OAAO;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAW,OAAO;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAW,SAAS;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH,GAAE;AACF;;AAEA;AACA;AACA,YAAW,gBAAgB;AAC3B,cAAa,uBAAuB;AACpC;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,YAAW,eAAe;AAC1B,cAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAW,eAAe;AAC1B,cAAa,OAAO;AACpB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,IAAG;AACH;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,KAAI;AACJ;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAG;AACH;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAE;AACF;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,IAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,YAAW,UAAU;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,YAAW,cAAc;AACzB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;AACA;AACA;AACA,IAAG;AACH;AACA,iCAAgC,MAAM;AACtC;AACA;AACA;AACA,GAAE;AACF;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA,gBAAe;;AAEf,UAAS;;AAET;AACA,SAAQ,iCAAiC;AACzC,SAAQ,oBAAoB;AAC5B,SAAQ,sCAAsC;AAC9C,SAAQ;AACR,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,KAAI;AACJ;AACA;;AAEA;AACA,IAAG;;AAEH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,KAAI;AACJ;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;AACA,iBAAgB,aAAa,EAAE;AAC/B;AACA;AACA;AACA,IAAG;;AAEH;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAK;AACL,IAAG;;AAEH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,6DAA4D;;AAE5D;AACA;AACA;AACA,0CAAyC;;AAEzC;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,QAAO;AACP;AACA;AACA;AACA;AACA,8DAA6D;;AAE7D;AACA;AACA;AACA,2CAA0C;;AAE1C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,iEAAgE;;AAEhE;AACA;AACA;AACA,8CAA6C;;AAE7C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAM;AACN;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA,IAAG;;AAEH;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,IAAG;;AAEH;AACA;AACA;AACA,kEAAiE,UAAU;AAC3E,uCAAsC,2BAA2B;AACjE;AACA,iCAAgC,MAAM;AACtC;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA,IAAG;;AAEH;AACA;AACA,IAAG;;AAEH;AACA;AACA,WAAU,YAAY;AACtB;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA,WAAU,YAAY;AACtB;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA,WAAU,UAAU;AACpB;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA,WAAU,cAAc;AACxB;AACA;AACA;AACA,IAAG;AACH;AACA;;AAEA;;AAEA;AACA,aAAY,uEAAuE;AACnF;AACA;AACA,aAAY,4BAA4B;AACxC;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAQ,SAAS;AACjB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA,4DAA2D;;AAE3D;AACA;AACA,qFAAoF;;AAEpF;AACA;;AAEA;AACA;AACA,QAAO;AACP;AACA;;AAEA,oCAAmC;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;;AAEA;AACA;AACA;AACA,SAAQ,SAAS;AACjB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAAQ,SAAS;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA,GAAE;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH,SAAQ,SAAS;AACjB;AACA;AACA,IAAG;AACH;;AAEA;AACA;AACA;AACA;AACA,YAAW,SAAS;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAuC,iDAAiD;AACxF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,kDAAiD;AACjD,WAAU,wCAAwC;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAW,gBAAgB;AAC3B;AACA,YAAW,QAAQ;AACnB,YAAW,MAAM;AACjB,YAAW,MAAM;AACjB;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,KAAI;AACJ;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA,GAAE;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA,GAAE;AACF;;AAEA;AACA;AACA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;;AAEA;;AAEA,EAAC;;;;AAID;AACA;AACA;AACA;AACA;AACA;AACA;;;;AAIA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;;AAEA,SAAQ,GAAG;AACX;AACA;AACA;AACA;;AAEA;AACA;;;AAGA;;AAEA;;;;AAIA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;;AAEA;AACA;AACA;AACA,IAAG;;AAEH;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,GAAE;AACF;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,iBAAgB,SAAS;AACzB;AACA;AACA;AACA;AACA,KAAI;AACJ;;AAEA,eAAc,SAAS;AACvB;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;AACA,GAAE;AACF;AACA;AACA,GAAE;AACF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;;AAGD;;;AAGA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,KAAI;AACJ;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,SAAQ;AACR;AACA;AACA;AACA;;AAEA;;AAEA;AACA,MAAK;AACL;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,KAAI;AACJ;;AAEA;AACA;AACA,KAAI;AACJ;AACA;;AAEA;AACA,IAAG;AACH;AACA;AACA;;AAEA;AACA;AACA,IAAG;AACH;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;;AAGA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAU,OAAO;AACjB;AACA;AACA;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,UAAS,OAAO;AAChB,0BAAyB,wBAAwB;;AAEjD;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;AACA,GAAE;AACF;AACA;AACA,GAAE;AACF;AACA;AACA,GAAE;AACF;AACA;AACA,GAAE;AACF;AACA;AACA,GAAE;AACF;AACA;AACA,GAAE;AACF;AACA;AACA,GAAE;AACF;AACA;AACA,GAAE;AACF;AACA,2CAA0C;AAC1C,GAAE;AACF;AACA;AACA,GAAE;AACF;AACA;AACA;AACA,EAAC;AACD;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,EAAC;AACD;;;;AAIA;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,oBAAmB;;AAEnB;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,WAAU,cAAc;AACxB;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,MAAK;AACL;AACA;AACA;AACA,IAAG;;AAEH;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAAQ;;AAER;AACA;AACA;AACA,QAAO;AACP,OAAM;;AAEN;AACA;AACA;AACA;AACA;AACA,KAAI;;AAEJ;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA,KAAI;;AAEJ;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;;AAEJ;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;;AAEJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA,KAAI;;AAEJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA,KAAI;;AAEJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;;AAEJ;AACA;AACA;AACA;AACA,KAAI;;AAEJ;AACA;AACA;AACA;AACA;;AAEA;AACA;;;AAGA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;AACA;AACA,SAAQ;AACR,QAAO;AACP;AACA,OAAM;AACN,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,+CAA8C;AAC9C,MAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAM;AACN;AACA;AACA;AACA,KAAI;;AAEJ;;AAEA,6CAA4C;AAC5C;AACA;AACA;AACA;AACA,WAAU,YAAY;AACtB;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,EAAC;;;AAGD;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,IAAG;;AAEH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAE;AACF;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,KAAI;AACJ;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,WAAU,SAAS;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;AAKA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA,GAAE;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA,OAAM;AACN;AACA;AACA;;AAEA;AACA,GAAE;AACF;AACA;AACA;;AAEA;AACA;AACA;;AAEA,wBAAuB,aAAa;AACpC,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAE;AACF;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,IAAG;;AAEH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;;AAEA;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA,GAAE;AACF;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,qBAAoB,SAAS;AAC7B;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAI;;AAEJ;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAI;AACJ;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ,IAAG;AACH,GAAE;;AAEF;AACA;AACA;AACA,IAAG;AACH;AACA,EAAC;;;AAGD;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ,IAAG;AACH;AACA,EAAC;;AAED;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,KAAI;AACJ,GAAE;AACF;AACA;AACA;AACA,IAAG;AACH,GAAE;AACF;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;AACD;;AAEA;;;AAGA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;;;AAIA;AACA;AACA;AACA;AACA;AACA,gBAAe,oBAAoB,EAAE;AACrC,gBAAe,qCAAqC,EAAE;AACtD;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,IAAG;AACH;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;;;AAIA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;;AAGA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;;AAEA,SAAQ,OAAO;AACf;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA,uBAAsB;;AAEtB;AACA;AACA;AACA;AACA;AACA;;AAEA,SAAQ,OAAO;AACf;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,KAAI;AACJ;;AAEA;AACA,KAAI;AACJ;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,EAAC;;;AAGD;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAE,gBAAgB;AAClB;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,GAAE;AACF;;AAEA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;;AAEA;AACA;AACA;AACA;AACA;;AAEA,YAAW;;AAEX;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;;AAEJ;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAI;AACJ;AACA;;AAEA;AACA;AACA;;AAEA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,4CAA2C;AAC3C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;;AAEA;AACA;AACA;AACA,qDAAoD;AACpD;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,0BAAyB;AACzB;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,gEAA+D;AAC/D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,WAAU,cAAc;;AAExB;AACA;AACA;AACA;AACA,kBAAiB,mBAAmB;AACpC;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA0B,+BAA+B;AACzD;AACA;AACA;AACA;;AAEA;AACA;AACA,wBAAuB,wDAAwD;AAC/E;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;;AAEA,cAAa;;AAEb;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,uCAAsC,cAAc;AACpD;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,sCAAqC;AACrC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA,IAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA,IAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;;AAEJ;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,uCAAsC;AACtC;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,GAAE;AACF;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,GAAE;AACF;AACA;;AAEA;;AAEA;AACA;AACA;AACA,GAAE;AACF;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,sCAAqC;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;AACD;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA,GAAE;AACF;AACA;AACA,GAAE;AACF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA,EAAC;;;AAGD;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAE;AACF;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,4CAA2C,OAAO;AAClD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,+BAA8B;;AAE9B;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,GAAE;AACF;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAU,OAAO;AACjB;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA,iBAAgB,gBAAgB;AAChC;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,SAAQ,+BAA+B;AACvC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,wCAAuC,OAAO;AAC9C;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,yCAAwC,OAAO;AAC/C;AACA;AACA,KAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA,UAAS,qCAAqC;AAC9C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,SAAQ;AACR;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;AAED;;AAEA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL,IAAG;AACH,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;AACA;;AAEA,UAAS,8BAA8B;AACvC;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;AACA,8BAA6B;AAC7B;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA,aAAY,OAAO;AACnB;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,MAAK;AACL;;AAEA;AACA;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,IAAG;AACH;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;;AAEA,UAAS,WAAW;AACpB;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,EAAC;;;AAGD;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAW,OAAO;AAClB,YAAW,OAAO;AAClB;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,YAAW,OAAO;AAClB;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;;AAGA;;;;AAIA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,sCAAqC,UAAU,SAAS,MAAM,aAAa;AAC3E,cAAa,eAAe;AAC5B;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,mCAAkC,2BAA2B,sBAAsB;AACnF,uBAAsB,cAAc;AACpC,iBAAgB,WAAW,YAAY;AACvC,YAAW;AACX;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,6BAA4B,SAAS,QAAQ,QAAQ;AACrD;;AAEA;AACA;AACA,qCAAoC,uBAAuB;AAC3D,oBAAmB,SAAS,SAAS;AACrC;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,GAAE;AACF,EAAC;;;AAGD;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,mBAAkB;AAClB;AACA;AACA;AACA;;;AAGA;;AAEA;AACA;AACA;AACA;;AAEA,aAAY,+DAA+D;AAC3E;AACA;AACA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA,SAAQ,OAAO;;AAEf;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,SAAQ,gBAAgB;AACxB;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,kBAAiB,gBAAgB;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,IAAG;;AAEH;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA,mBAAkB,gBAAgB;AAClC;AACA,OAAM;AACN;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,wBAAuB,4BAA4B;AACnD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA,kBAAiB;;AAEjB;AACA;;AAEA,WAAU,OAAO;AACjB;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA,aAAY;AACZ;;AAEA;AACA;AACA;;AAEA,YAAW,SAAS;AACpB;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH,GAAE;AACF;AACA;AACA,GAAE;AACF;AACA;AACA,GAAE;AACF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA,IAAG;AACH;AACA,EAAC;;;AAGD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;;AAEA;AACA;AACA;AACA,GAAE;AACF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAE;AACF;AACA;AACA,GAAE;AACF;AACA;;AAEA;;AAEA;AACA;;;;;AAKA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAW;;AAEX;AACA;AACA;AACA,SAAQ,QAAQ;AAChB;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAQ,gBAAgB;AACxB;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAW;AACX;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ,IAAG;AACH;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;;AAEA;AACA,IAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH,kDAAiD;AACjD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA,KAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAE;AACF;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,WAAU,iBAAiB;AAC3B;AACA;;AAEA;;AAEA;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA,IAAG;AACH;AACA;AACA,4BAA2B;AAC3B;AACA,sBAAqB;AACrB;AACA,KAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAW,iBAAiB;AAC5B;AACA;;AAEA,8CAA6C;AAC7C;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA,IAAG;AACH;;AAEA;;AAEA,SAAQ,iBAAiB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;;AAEA;AACA;AACA;;AAEA,UAAS,iBAAiB;AAC1B;AACA;AACA;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA,EAAC;;AAED;AACA,kEAAiE;AACjE;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA,qBAAoB,cAAc;AAClC,GAAE;AACF;AACA;AACA;AACA;;AAEA;AACA,kDAAiD;;AAEjD;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAE;AACF;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA;AACA;AACA;;AAEA,gCAA+B,SAAS;AACxC;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH,GAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,gCAA+B,SAAS;AACxC;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAmB,gBAAgB;AACnC;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAG;AACH;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA,WAAU,kBAAkB;AAC5B,YAAW,kBAAkB;AAC7B,eAAc;AACd,EAAC;AACD;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;;AAEA;;AAEA,SAAQ,mBAAmB;AAC3B;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;;;AAGA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;;AAGD;AACA;;AAEA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,IAAG;AACH;AACA,EAAC;;AAED;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;;;;AAKD;AACA;;AAEA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,IAAG;AACH;AACA,EAAC;;AAED;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;;;;AAKD;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAI;AACJ;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAI;AACJ;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,OAAM;AACN;AACA;AACA;;AAEA;AACA,KAAI;AACJ;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,EAAC;;;;;AAKD;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAI;AACJ;AACA;;AAEA,kCAAiC;AACjC;AACA;;AAEA,KAAI;AACJ;;AAEA,KAAI;AACJ;AACA;AACA,MAAK;AACL;;AAEA;;AAEA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA,EAAC;;AAED;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,YAAW,SAAS;AACpB;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,KAAI;;AAEJ;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;;;;AAKD;;;AAGA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA,uCAAsC;AACtC;AACA;AACA;;AAEA;;AAEA,0BAAyB;AACzB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,+CAA8C;AAC9C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,4CAA2C;AAC3C;;AAEA;AACA;AACA;AACA;AACA,WAAU,KAAK;AACf;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,kDAAiD;AACjD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,EAAC;;AAED;;AAEA;AACA;AACA;AACA,IAAG;AACH,GAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;;AAGD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA,EAAC;;;;;AAKD;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAe,qCAAqC;;AAEpD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;;AAEA,MAAK;AACL;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;;AAEA;;AAEA;;;;AAIA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAE;AACF;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAgB;;AAEhB;AACA;AACA;AACA;AACA;AACA,iBAAgB;;AAEhB,iDAAgD;AAChD;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,oBAAmB;AACnB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA,IAAG;AACH;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,yDAAwD;AACxD;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,kBAAiB;;AAEjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA,KAAI;;AAEJ;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,UAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,OAAM;AACN;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,UAAS;AACT;;AAEA;;AAEA;AACA;;AAEA;AACA,kBAAiB;AACjB,UAAS;;AAET;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mDAAkD;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAa;AACb;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA,4BAA2B;;AAE3B;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,mCAAkC;;AAElC;AACA,uBAAsB;AACtB,4BAA2B;;AAE3B;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAO;;AAEP;AACA;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAI;;AAEJ;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,uDAAsD;AACtD;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,eAAc,oCAAoC;AAClD;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAK;AACL;;AAEA;AACA;AACA;AACA,KAAI;;AAEJ;AACA;AACA;;AAEA;AACA,MAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,MAAK;AACL;;AAEA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAI;;AAEJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAI;AACJ;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;;AAED;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA,EAAC;;;AAGD;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;;;AAGA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAI;AACJ;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,KAAI;AACJ;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA,KAAI;AACJ;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,KAAI;AACJ;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;;AAEA;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA,EAAC;;;AAGD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,KAAI;;AAEJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH,GAAE;;AAEF;AACA;AACA;AACA;;AAEA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAG;;AAEH,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAE;AACF;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA,eAAc;AACd,OAAM;AACN,OAAM;AACN,IAAG;AACH;AACA,EAAC;;;AAGD;AACA;AACA;AACA,GAAE;AACF;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,GAAE;AACF;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,SAAQ;;AAER;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;;AAEA,oDAAmD;AACnD;AACA;AACA;AACA;AACA,SAAQ;AACR;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,YAAW,uBAAuB;AAClC,YAAW,yBAAyB;AACpC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAQ;AACR;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA,KAAI;;AAEJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;;;;AAKD;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;AACA,GAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;;;;AAKD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,KAAI;AACJ;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,IAAG;;AAEH;AACA;AACA;AACA,EAAC;;;;;AAKD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;;AAGA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,GAAE;AACF;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA,KAAI;AACJ,IAAG;AACH;;AAEA;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;;;;AAKD;AACA;AACA;AACA,GAAE;AACF;;;;;AAKA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,IAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA,sDAAqD;AACrD;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,IAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;;AAEA;AACA;AACA,WAAU,kBAAkB;AAC5B;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA,oBAAmB;;AAEnB,6DAA4D,eAAe;AAC3E;AACA;;AAEA;AACA;;AAEA,IAAG;;AAEH;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,IAAG;AACH;AACA,EAAC;;AAED;AACA,eAAc,sDAAsD;AACpE;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,KAAI;AACJ;AACA;AACA,IAAG;AACH;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;;AAGD;AACA,eAAc,mCAAmC;AACjD,gBAAe,6DAA6D;AAC5E;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,KAAI;AACJ;AACA,GAAE;AACF,EAAC;;;AAGD;;AAEA;AACA;AACA,GAAE;AACF;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;AACF;;AAEA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;AACA;AACA,EAAC;;AAED;;;;;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAE;AACF;;;;AAIA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,EAAC;;;;;;;ACrlTD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAE;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;;AAEJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,+BAA8B;AAC9B;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;;AAEA;AACA,4CAA2C,4BAA4B;AACvE,IAAG;AACH;AACA;;AAEA;;AAEA,GAAE;;AAEF;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA,GAAE;;AAEF;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA,WAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,UAAS;AACT;;AAEA;AACA;AACA;AACA;;AAEA,GAAE;;AAEF;AACA;AACA,YAAW;AACX;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,GAAE;;AAEF;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF,aAAY;;AAEZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,EAAC;;AAED;AACA;AACA,gCAA+B;AAC/B;AACA,IAAG;;AAEH;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH,GAAE;AACF;AACA,gCAA+B;AAC/B;AACA,IAAG;;AAEH;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,KAAI;;AAEJ;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAG;AACH,GAAE;AACF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAK;AACL;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,OAAM;;AAEN;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAI;;AAEJ;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,OAAM;AACN;AACA;AACA,IAAG;AACH;AACA,EAAC;;AAED;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAE;AACF;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA,IAAG;;AAEH;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA,EAAC;;AAED;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAM;AACN;AACA,KAAI;;AAEJ,GAAE;AACF;;AAEA;AACA;AACA;AACA;AACA;;AAEA,0CAAyC,QAAQ;;AAEjD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAkC,wCAAwC;AAC1E;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAM;AACN;AACA;AACA;AACA;AACA;AACA,OAAM;AACN;AACA;AACA;AACA;AACA;AACA,OAAM;AACN;AACA;AACA;AACA;AACA;AACA,OAAM;AACN;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAM;AACN;AACA;AACA;AACA;AACA;AACA,OAAM;AACN;AACA;AACA;AACA;AACA;AACA,OAAM;AACN;AACA;AACA;AACA;AACA;AACA,OAAM;AACN;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;;AAEA;;AAEA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;;AAEJ,yBAAwB,QAAQ;;AAEhC;AACA;AACA;AACA,IAAG;AACH;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;;AAEA;AACA;AACA;AACA;AACA,EAAC;;AAED;;AAEA,EAAC;;;;;;;ACjuCD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;;AAEA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;;AAEJ;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAI;AACJ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,KAAI;;AAEJ;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA,yCAAwC;AACxC,wCAAuC;AACvC,wCAAuC;AACvC,0CAAyC,aAAa;AACtD,EAAC;;AAED,EAAC;;;;;;;ACjOD;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA,EAAC;;;;;;;ACdD;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA,EAAC;;;;;;;AChBD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;;AAED;AACA;;AAEA;AACA;AACA;AACA,eAAc,+BAA+B;AAC7C;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,KAAI;AACJ;AACA;AACA;AACA,EAAC;;AAED;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,yCAAwC;AACxC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,uBAAsB;;AAEtB;AACA;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;AACA,6CAA4C;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,IAAG;AACH,GAAE;AACF;;AAEA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA,GAAE;AACF;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAAQ,0BAA0B;AAClC;AACA;AACA;;AAEA;AACA;AACA;AACA,0BAAyB;;AAEzB;AACA,0BAAyB;;AAEzB;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,kCAAiC;AACjC;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA,IAAG;;AAEH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,oCAAmC;AACnC;AACA;AACA;AACA,MAAK;AACL;AACA;AACA,KAAI;AACJ;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,cAAa;AACb;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,qCAAoC;AACpC;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,8BAA6B;AAC7B;;AAEA;;AAEA,+CAA8C,OAAO,WAAW;AAChE;AACA;AACA;AACA;AACA,qDAAoD;AACpD,iBAAgB,sBAAsB;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA,6BAA4B,kBAAkB;AAC9C,GAAE;;AAEF;AACA,6BAA4B,iBAAiB;AAC7C,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA,gBAAe,oBAAoB;AACnC;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAI;AACJ;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,UAAS,kCAAkC;AAC3C;AACA;AACA,eAAc;AACd;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,eAAc;AACd;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,IAAG;AACH;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA,EAAC;;AAED;;AAEA,EAAC;;;;;;;AC5tBD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA,EAAC;AACD,EAAC;;;;;;;ACtCD;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,eAAc,gBAAgB;AAC9B;AACA;AACA;AACA;AACA;AACA;;AAEA,EAAC;;;;;;;AC3CD;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;AACD;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,EAAC;;;;;;;ACpBD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;;AAEA,EAAC;;;;;;;AC5CD;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;AACD;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,EAAC;;;;;;;ACvCD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA,oCAAmC,iBAAiB;AACpD;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,KAAI;AACJ;;AAEA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,eAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,0CAAyC,kBAAkB;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA,mBAAkB,iCAAiC;AACnD;;AAEA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAG;AACH;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,iBAAgB,iBAAiB;AACjC;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA,MAAK;AACL;AACA;AACA;AACA,IAAG;AACH;AACA;AACA,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,8BAA6B,QAAQ;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,IAAG;;AAEH;AACA;AACA;AACA,gBAAe,iBAAiB;AAChC;AACA;;AAEA;AACA,IAAG;AACH;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA,qBAAoB,0BAA0B;AAC9C;AACA;AACA,qBAAoB,6BAA6B;AACjD;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAQ;AACR;AACA;AACA;AACA;AACA,SAAQ;AACR;AACA;AACA,SAAQ;AACR;AACA,OAAM;AACN;AACA;AACA;AACA,SAAQ;AACR;AACA;AACA;AACA;AACA,SAAQ;AACR;AACA;AACA,SAAQ;AACR;AACA;AACA;AACA;AACA,KAAI;AACJ,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,IAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;AAED,EAAC;;;;;;;AC/uBD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,EAAC;;;;;;;AC5CD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA,KAAI;AACJ;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAI;AACJ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,OAAM;AACN;AACA,MAAK;AACL;AACA;AACA;AACA,OAAM;AACN;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;;AAEA;;AAEA;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;AACA;AACA,IAAG;AACH,uBAAsB;AACtB;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAK,2BAA2B;AAChC;;AAEA;AACA,uBAAsB,iBAAiB;;AAEvC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL,IAAG;AACH;AACA;AACA,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA,KAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,KAAI;AACJ;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ,IAAG;AACH;AACA;;AAEA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,KAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;;AAEA;;AAEA,EAAC;;;;;;;AC36BD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAI;;AAEJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;AACA;;AAEA;AACA,uBAAsB,uBAAuB;AAC7C;;AAEA;AACA;AACA,EAAC;;AAED;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,EAAC;;;;;;;ACjYD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;AACD,kDAAiD,IAAI;;AAErD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAI;AACJ,gBAAe,YAAY;AAC3B;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,+CAA8C;;AAE9C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAK;AACL,IAAG;;AAEH;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;;AAEA,KAAI;AACJ;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA,KAAI;;AAEJ;AACA;AACA;AACA;AACA,EAAC;AACD,EAAC;;;;;;;ACzSD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,IAAG;AACH;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA,IAAG;AACH,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA,KAAI;AACJ;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,uBAAsB,yBAAyB;AAC/C;AACA;;AAEA,EAAC;;AAED;;AAEA,EAAC;;;;;;;AC7RD;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA,0CAAyC,WAAW,EAAE;AACtD;AACA;AACA;AACA,EAAC;;AAED,EAAC;;;;;;;ACpBD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ,IAAG;AACH,GAAE;;AAEF;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA,EAAC;;;;;;;AC5ED;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;;AAEA,EAAC;;;;;;;ACnBD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;;AAED;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA,EAAC;;;;;;;AC7DD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;;AAEA;AACA,yDAAwD;AACxD;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAI;;AAEJ;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;;AAEA;AACA,GAAE;;AAEF;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;;AAEA;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,gBAAe,cAAc;;AAE7B;AACA;AACA;AACA;;AAEA,gBAAe,mBAAmB;;AAElC;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,MAAK;AACL;AACA,oCAAmC,+BAA+B;AAClE;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,oBAAmB;;AAEnB;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,4BAA2B;AAC3B,iCAAgC;;AAEhC;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,qCAAoC,uBAAuB;AAC3D;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;;AAEA;AACA;AACA,IAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH;AACA;;AAEA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,UAAS,OAAO;AAChB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAE;;AAEF;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,UAAS,+CAA+C;;AAExD;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAI;;AAEJ;;AAEA,GAAE;;AAEF;;AAEA;AACA;;AAEA;;AAEA,iEAAgE;;AAEhE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;;AAEJ;AACA;AACA;;AAEA,IAAG;AACH;AACA;;AAEA,GAAE;;AAEF;AACA;AACA,YAAW;AACX,IAAG;AACH;AACA;AACA,YAAW;AACX,IAAG;AACH;AACA;AACA,YAAW;AACX,IAAG;AACH;AACA,YAAW;AACX,IAAG;AACH;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,GAAE;;AAEF,aAAY;;AAEZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,EAAC;;AAED;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA;;AAEA;AACA,oCAAmC,uBAAuB,KAAK;AAC/D;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,0BAAyB,yCAAyC;AAClE;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,EAAC;;AAED;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA,KAAI;;AAEJ;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA,EAAC;;AAED;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ,IAAG;AACH,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,wFAAuF;AACvF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA,KAAI;AACJ,GAAE;;AAEF;AACA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;;AAEA,EAAC;;AAED;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA;AACA;AACA;;AAEA,EAAC;;AAED;;AAEA,EAAC;;;;;;;AChrCD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAI;AACJ;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;;AAED,EAAC;;;;;;;AC7CD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA,GAAE;AACF;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,EAAC;;AAED;;AAEA,EAAC;;;;;;;ACnFD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;AAED,EAAC;;;;;;;AClCD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA,GAAE;;AAEF;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA,EAAC;;AAED,EAAC;;;;;;;AChDD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,aAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA,aAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA,aAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA0B,kBAAkB,WAAW,YAAY,gBAAgB;AACnF,+BAA8B,WAAW;AACzC;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA,GAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAgD,kBAAkB;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,wBAAuB;;AAEvB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,6BAA4B;;AAE5B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAE;AACF;AACA;;AAEA;AACA;AACA,GAAE;AACF;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA0B;AAC1B;;AAEA;AACA;AACA,IAAG;AACH;AACA;;AAEA;AACA;AACA,IAAG;AACH;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA,IAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;;AAEA,qCAAoC,eAAe;AACnD,GAAE;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAK;AACL;;AAEA;AACA,MAAK;AACL;AACA;AACA,OAAM;AACN;AACA;AACA;;AAEA;AACA,KAAI;AACJ;;AAEA;AACA,KAAI;AACJ;;AAEA;AACA,KAAI;AACJ;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAK;AACL;;AAEA;AACA,MAAK;AACL;AACA;AACA,OAAM;AACN;AACA;AACA;;AAEA;AACA,KAAI;AACJ;;AAEA;AACA,KAAI;AACJ;;AAEA;AACA,KAAI;AACJ;AACA;AACA;AACA,GAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA,EAAC;;AAED;;AAEA,EAAC;;;;;;;ACjfD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;AACA,GAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,G","file":"index.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\texports: {},\n \t\t\tid: moduleId,\n \t\t\tloaded: false\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.loaded = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap f38227723018389c2ac0","module.exports = {};\n\nvar loadedModules = [\n require(\"./widget_ngl.js\"),\n //require(\"./ngl.js\"),\n]\n\nfor (var i in loadedModules) {\n if (loadedModules.hasOwnProperty(i)) {\n var loadedModule = loadedModules[i];\n for (var target_name in loadedModule) {\n if (loadedModule.hasOwnProperty(target_name)) {\n module.exports[target_name] = loadedModule[target_name];\n }\n }\n }\n}\n\nmodule.exports['version'] = require('../package.json').version;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/index.js\n// module id = 0\n// module chunks = 0","var widgets = require(\"jupyter-js-widgets\");\nvar NGL = require('ngl');\nvar $ = require('jquery');\nrequire('jquery-ui/ui/widgets/draggable');\nrequire('jquery-ui/ui/widgets/slider');\nrequire('jquery-ui/ui/widgets/dialog');\n\nvar Jupyter;\nif (typeof window !== 'undefined') {\n Jupyter = window['Jupyter'] = window['Jupyter'] || {};\n} else {\n Jupyter = Jupyter || {};\n}\n\nvar NGLView = widgets.DOMWidgetView.extend({\n\n render: function() {\n\n // init representations handling\n this.model.on(\"change:_init_representations\", this.representationsChanged, this);\n\n // init setting of frame\n this.model.on(\"change:frame\", this.frameChanged, this);\n\n // init setting of frame\n this.model.on(\"change:count\", this.countChanged, this);\n\n // init _parameters handling\n this.model.on(\"change:_parameters\", this.parametersChanged, this);\n\n // init orientation handling\n this.model.on(\"change:orientation\", this.orientationChanged, this);\n\n // for player\n this.delay = 100;\n this.sync_frame = false;\n this.sync_camera = false;\n\n // get message from Python\n this.model.on(\"msg:custom\", function(msg) {\n this.on_msg(msg);\n }, this);\n\n if (this.model.comm) {\n // for embeding in website\n this.model.comm.on_msg(function(msg) {\n var buffers = msg.buffers;\n var content = msg.content.data.content;\n if (buffers.length && content) {\n content.buffers = buffers;\n }\n this.model._handle_comm_msg.call(this.model, msg);\n }.bind(this));\n }\n\n // init NGL stage\n NGL.useWorker = false;\n this.stage = new NGL.Stage(undefined, {\n backgroundColor: \"white\"\n });\n this.structureComponent = undefined;\n this.$container = $(this.stage.viewer.container);\n this.$el.append(this.$container);\n this.$container.resizable({\n resize: function(event, ui) {\n this.setSize(ui.size.width + \"px\", ui.size.height + \"px\");\n }.bind(this)\n });\n this.displayed.then(function() {\n var width = this.$el.parent().width() + \"px\";\n var height = \"300px\";\n\n this.setSize(width, height);\n this.$container.resizable(\n \"option\", \"maxWidth\", this.$el.parent().width()\n );\n this.requestUpdateStageParameters();\n }.bind(this));\n\n this.stage.viewerControls.signals.changed.add(function() {\n if (this.sync_camera) {\n this.model.set('_scene_position', this.stage.viewerControls.position)\n this.model.set('_scene_rotation', this.stage.viewerControls.rotation)\n this.touch();\n }\n }.bind(this));\n\n // init toggle fullscreen\n $(this.stage.viewer.container).dblclick(function() {\n this.stage.toggleFullscreen();\n }.bind(this));\n\n // init picking handling\n this.$pickingInfo = $(\"
\")\n .css(\"position\", \"absolute\")\n .css(\"top\", \"5%\")\n .css(\"left\", \"3%\")\n .css(\"background-color\", \"white\")\n .css(\"padding\", \"2px 5px 2px 5px\")\n .css(\"opacity\", \"0.7\")\n .appendTo(this.$container);\n\n var $inputNotebookCommand = $('');\n var that = this;\n\n $inputNotebookCommand.keypress(function(e) {\n var command = $(\"#input_notebook_command\").val();\n if (e.which == 13) {\n $(\"#input_notebook_command\").val(\"\")\n Jupyter.notebook.kernel.execute(command);\n }\n });\n\n this.$notebook_text = $(\"
\")\n .css(\"position\", \"absolute\")\n .css(\"bottom\", \"5%\")\n .css(\"left\", \"3%\")\n .css(\"padding\", \"2px 5px 2px 5px\")\n .css(\"opacity\", \"0.7\")\n .append($inputNotebookCommand)\n .appendTo(this.$container);\n this.$notebook_text.hide();\n\n this.stage.signals.clicked.add(function(pd) {\n var pd2 = {};\n if (pd.atom) pd2.atom = pd.atom.toObject();\n if (pd.bond) pd2.bond = pd.bond.toObject();\n if (pd.instance) pd2.instance = pd.instance;\n this.model.set(\"picked\", pd2);\n this.touch();\n var pickingText = \"\";\n if (pd.atom) {\n pickingText = \"Atom: \" + pd.atom.qualifiedName();\n } else if (pd.bond) {\n pickingText = \"Bond: \" + pd.bond.atom1.qualifiedName() + \" - \" + pd.bond.atom2.qualifiedName();\n }\n this.$pickingInfo.text(pickingText);\n }, this);\n\n this.initPlayer();\n\n var container = this.stage.viewer.container;\n that = this;\n container.addEventListener('dragover', function(e) {\n e.stopPropagation();\n e.preventDefault();\n e.dataTransfer.dropEffect = 'copy';\n }, false);\n\n container.addEventListener('drop', function(e) {\n e.stopPropagation();\n e.preventDefault();\n var file = e.dataTransfer.files[0];\n\n that.stage.loadFile(file).then(function(o){\n that.makeDefaultRepr(o);\n that._handle_loading_file_finished();\n });\n var numDroppedFiles = that.model.get(\"_n_dragged_files\");\n that.model.set(\"_n_dragged_files\", numDroppedFiles + 1);\n that.touch();\n }, false);\n\n that = this;\n this.stage.signals.componentAdded.add(function() {\n var len = this.stage.compList.length;\n this.model.set(\"n_components\", len);\n this.touch();\n var comp = this.stage.compList[len - 1];\n comp.signals.representationRemoved.add(function() {\n that.requestReprDict();\n });\n comp.signals.representationAdded.add(function() {\n that.requestReprDict();\n });\n }, this);\n\n this.stage.signals.componentRemoved.add(function() {\n this.model.set(\"n_components\", this.stage.compList.length);\n this.touch();\n }, this);\n\n // for callbacks from Python\n // must be after initializing NGL.Stage\n this.model.send({\n 'type': 'request_loaded',\n 'data': true\n })\n var state_params = this.stage.getParameters();\n this.model.set('_original_stage_parameters', state_params);\n this.touch();\n },\n\n setSelector: function(selector_id) {\n // id is uuid that will be set from Python\n var selector = \"
\";\n this.$ngl_selector = $(selector)\n .css(\"position\", \"absolute\")\n .css(\"bottom\", \"5%\")\n .css(\"left\", \"3%\")\n .css(\"padding\", \"2px 5px 2px 5px\")\n .css(\"opacity\", \"0.7\")\n .appendTo(this.$container);\n },\n\n setIPythonLikeCell: function() {\n var cell = Jupyter.notebook.insert_cell_at_bottom();\n\n var handler = function(event) {\n var selected_cell = Jupyter.notebook.get_selected_cell();\n if (selected_cell.cell_id === cell.cell_id) {\n selected_cell.execute();\n selected_cell.set_text('');\n }\n event; // to pass eslint\n return false;\n };\n\n var action = {\n help: 'run cell',\n help_index: 'zz',\n handler: handler\n };\n\n Jupyter.keyboard_manager.edit_shortcuts.add_shortcut('enter', action);\n },\n\n hideNotebookCommandBox: function() {\n this.$notebook_text.hide();\n },\n\n showNotebookCommandBox: function() {\n this.$notebook_text.show();\n },\n\n requestFrame: function() {\n this.send({\n 'type': 'request_frame',\n 'data': 'frame'\n });\n },\n\n requestUpdateStageParameters: function() {\n var updated_params = this.stage.getParameters();\n this.model.set('_full_stage_parameters', updated_params);\n this.touch();\n },\n\n requestReprParameters: function(component_index, repr_index) {\n var comp = this.stage.compList[component_index];\n var repr = comp.reprList[repr_index];\n var msg = repr.repr.getParameters();\n\n if (msg) {\n msg['name'] = repr.name;\n this.send({\n 'type': 'repr_parameters',\n 'data': msg\n });\n }\n },\n\n requestReprDict: function() {\n var n_components = this.stage.compList.length;\n var msg = {};\n\n for (var i = 0; i < n_components; i++) {\n var comp = this.stage.compList[i];\n msg['c' + i] = {};\n var msgi = msg['c' + i];\n for (var j = 0; j < comp.reprList.length; j++) {\n var repr = comp.reprList[j];\n msgi[j] = {};\n msgi[j]['type'] = repr.name;\n msgi[j]['params'] = repr.repr.getParameters();\n }\n }\n this.send({\n 'type': 'repr_dict',\n 'data': msg\n });\n },\n\n // setDraggable: function(params) {\n // if (params) {\n // this.$container.draggable(params);\n // } else {\n // this.$container.draggable();\n // }\n // },\n setDelay: function(delay) {\n this.delay = delay;\n },\n\n setSyncFrame: function() {\n this.sync_frame = true;\n },\n\n setUnSyncFrame: function() {\n this.sync_frame = false;\n },\n\n setSyncCamera: function() {\n this.sync_camera = true;\n },\n\n setUnSyncCamera: function() {\n this.sync_camera = false;\n },\n\n makeDefaultRepr: function(o) {\n var reprDefList = this.model.get(\"_init_representations\");\n reprDefList.forEach(function(reprDef) {\n o.addRepresentation(reprDef.type, reprDef.params);\n });\n\n if (this.stage.compList.length < 2) {\n o.autoView(100);\n }\n },\n\n\n initPlayer: function() {\n // init player\n if (this.model.get(\"count\")) {\n var play = function() {\n this.$playerButton.text(\"pause\");\n this.playerInterval = setInterval(function() {\n var frame = this.model.get(\"frame\") + 1;\n var count = this.model.get(\"count\");\n if (frame >= count) frame = 0;\n\n if (this.sync_frame) {\n this.model.set(\"frame\", frame);\n this.touch();\n } else {\n this.requestFrame();\n }\n }.bind(this), this.delay);\n }.bind(this);\n var pause = function() {\n this.$playerButton.text(\"play\");\n if (this.playerInterval !== undefined) {\n clearInterval(this.playerInterval);\n }\n }.bind(this);\n this.$playerButton = $(\"\")\n .css(\"float\", \"left\")\n .css(\"width\", \"55px\")\n .css(\"opacity\", \"0.7\")\n .click(function(event) {\n if (this.$playerButton.text() === \"play\") {\n play();\n } else if (this.$playerButton.text() === \"pause\") {\n pause();\n }\n event; // to pass eslint\n }.bind(this));\n this.$playerSlider = $(\"
\")\n .css(\"margin-left\", \"70px\")\n .css(\"position\", \"relative\")\n .css(\"bottom\", \"-7px\")\n .slider({\n min: 0,\n max: this.model.get(\"count\") - 1,\n slide: function(event, ui) {\n pause();\n this.model.set(\"frame\", ui.value);\n this.touch();\n }.bind(this)\n });\n this.$player = $(\"
\")\n .css(\"position\", \"absolute\")\n .css(\"bottom\", \"5%\")\n .css(\"width\", \"94%\")\n .css(\"margin-left\", \"3%\")\n .css(\"opacity\", \"0.7\")\n .append(this.$playerButton)\n .append(this.$playerSlider)\n .appendTo(this.$container);\n this.model.on(\"change:frame\", function() {\n this.$playerSlider.slider(\"value\", this.model.get(\"frame\"));\n }, this);\n\n if (this.model.get(\"count\") < 2) {\n this.$player.hide()\n }\n }\n },\n\n countChanged: function() {\n var count = this.model.get(\"count\");\n this.$playerSlider.slider({\n max: count - 1\n });\n if (this.model.get(\"count\") > 1) {\n this.$player.show()\n }\n },\n\n representationsChanged: function() {\n var representations = this.model.get(\"_init_representations\");\n var component;\n\n for (var i = 0; i < this.stage.compList.length; i++) {\n component = this.stage.compList[i];\n if (representations && component) {\n component.clearRepresentations();\n representations.forEach(function(repr) {\n component.addRepresentation(repr.type, repr.params);\n });\n }\n }\n },\n\n setVisibilityForRepr: function(component_index, repr_index, value) {\n // value = True/False\n var component = this.stage.compList[component_index];\n var repr = component.reprList[repr_index];\n\n if (repr) {\n repr.setVisibility(value);\n }\n },\n\n removeRepresentation: function(component_index, repr_index) {\n var component = this.stage.compList[component_index];\n var repr = component.reprList[repr_index]\n\n if (repr) {\n component.removeRepresentation(repr);\n repr.dispose();\n }\n },\n\n removeRepresentationsByName: function(repr_name, component_index) {\n var component = this.stage.compList[component_index];\n\n if (component) {\n component.reprList.forEach(function(repr) {\n if (repr.name == repr_name) {\n component.removeRepresentation(repr);\n repr.dispose();\n }\n })\n }\n },\n\n updateRepresentationForComponent: function(repr_index, component_index, params) {\n var component = this.stage.compList[component_index];\n var repr = component.reprList[repr_index];\n if (repr) {\n repr.setParameters(params);\n }\n },\n\n updateRepresentationsByName: function(repr_name, component_index, params) {\n var component = this.stage.compList[component_index];\n\n if (component) {\n component.reprList.forEach(function(repr) {\n if (repr.name == repr_name) {\n repr.setParameters(params);\n }\n })\n }\n },\n\n setRepresentation: function(name, params, component_index, repr_index) {\n var component = this.stage.compList[component_index];\n var repr = component.reprList[repr_index];\n\n if (repr) {\n params['useWorker'] = false;\n var new_repr = NGL.makeRepresentation(name, component.structure,\n this.stage.viewer, params);\n if (new_repr) {\n repr.setRepresentation(new_repr);\n repr.name = name;\n component.reprList[repr_index] = repr;\n this.requestReprDict();\n }\n }\n },\n\n setColorByResidue: function(colors, component_index, repr_index){\n var repr = this.stage.compList[component_index].reprList[repr_index];\n var schemeId = NGL.ColorMakerRegistry.addScheme(function(params){\n this.atomColor = function(atom){\n var color = colors[atom.residueIndex];\n return color\n };\n params; // to pass eslint; ack;\n });\n repr.setColor(schemeId);\n },\n\n addShape: function(name, shapes) {\n // shapes: list of tuple\n // e.g: [('sphere', ...), ('cone', ...)]\n var shape = new NGL.Shape(name);\n var shape_dict = {\n 'sphere': shape.addSphere,\n 'ellipsoid': shape.addEllipsoid,\n 'cylinder': shape.addCylinder,\n 'cone': shape.addCone,\n 'mesh': shape.addMesh,\n 'arrow': shape.addArrow\n };\n for (var i = 0; i < shapes.length; i++) {\n var shapes_i = shapes[i]\n var shape_type = shapes_i[0];\n var params = shapes_i.slice(1, shapes_i.length);\n // e.g params = ('sphere', [ 0, 0, 9 ], [ 1, 0, 0 ], 1.5)\n\n var func = shape_dict[shape_type];\n func.apply(this, params);\n }\n var shapeComp = this.stage.addComponentFromObject(shape);\n shapeComp.addRepresentation(\"buffer\");\n },\n\n replaceStructure: function(structure){\n var blob = new Blob([structure.data], {type: \"text/plain\"});\n var params = structure.params || {};\n params.ext = structure.ext;\n params.defaultRepresentation = false;\n var comp = this.stage.compList[0];\n var representations = comp.reprList.slice();\n var old_orientation = this.stage.viewerControls.getOrientation();\n var that = this;\n this.stage.loadFile(blob, params).then(function(component) {\n that.stage.viewerControls.orient(old_orientation);\n representations.forEach(function(repr) {\n var repr_name = repr.name;\n var repr_params = repr.repr.getParameters();\n // Note: not using repr.repr.type, repr.repr.params\n // since seems to me that repr.repr.params won't return correct \"sele\"\n component.addRepresentation(repr_name, repr_params);\n });\n that.stage.removeComponent(comp);\n that._handle_loading_file_finished();\n });\n },\n\n superpose: function(cindex0, cindex1, align, sele0, sele1) {\n // superpose two components with given params\n var component0 = this.stage.compList[cindex0];\n var component1 = this.stage.compList[cindex1];\n component1.superpose(component0, align, sele0, sele1);\n },\n\n decode_base64: function(base64) {\n // lightly adapted from Niklas\n\n /*\n * base64-arraybuffer\n * https://github.com/niklasvh/base64-arraybuffer\n *\n * Copyright (c) 2012 Niklas von Hertzen\n * Licensed under the MIT license.\n */\n var chars =\n \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";\n var bufferLength = base64.length * 0.75,\n len = base64.length,\n i, p = 0,\n encoded1, encoded2, encoded3, encoded4;\n\n if (base64[base64.length - 1] === \"=\") {\n bufferLength--;\n if (base64[base64.length - 2] === \"=\") {\n bufferLength--;\n }\n }\n\n var arraybuffer = new ArrayBuffer(bufferLength),\n bytes = new Uint8Array(arraybuffer);\n\n for (i = 0; i < len; i += 4) {\n encoded1 = chars.indexOf(base64[i]);\n encoded2 = chars.indexOf(base64[i + 1]);\n encoded3 = chars.indexOf(base64[i + 2]);\n encoded4 = chars.indexOf(base64[i + 3]);\n\n bytes[p++] = (encoded1 << 2) | (encoded2 >> 4);\n bytes[p++] = ((encoded2 & 15) << 4) | (encoded3 >> 2);\n bytes[p++] = ((encoded3 & 3) << 6) | (encoded4 & 63);\n }\n\n return arraybuffer;\n },\n\n updateCoordinates: function(coordinates, model) {\n // coordinates must be ArrayBuffer (use this.decode_base64)\n var component = this.stage.compList[model];\n if (coordinates && component) {\n var coords = new Float32Array(coordinates);\n component.structure.updatePosition(coords);\n component.updateRepresentations({\n \"position\": true\n });\n }\n },\n\n handleResize: function() {\n this.$container.resizable({\n resize: function(event, ui) {\n this.setSize(ui.size.width + \"px\", ui.size.height + \"px\");\n }.bind(this)\n })\n },\n\n setSize: function(width, height) {\n this.stage.viewer.container.style.width = width;\n this.stage.viewer.container.style.height = height;\n this.stage.handleResize();\n },\n\n openNotebookCommandDialog: function() {\n var that = this;\n var dialog = this.$notebook_text.dialog({\n draggable: true,\n resizable: true,\n modal: false,\n show: {\n effect: \"blind\",\n duration: 150\n },\n close: function(event, ui) {\n that.$container.append(that.$notebook_text);\n that.$notebook_text.dialog('destroy');\n event; ui; // to pass eslint; ack;\n },\n });\n dialog.css({\n overflow: 'hidden'\n });\n dialog.prev('.ui-dialog-titlebar')\n .css({\n 'background': 'transparent',\n 'border': 'none'\n });\n Jupyter.keyboard_manager.register_events(dialog);\n },\n\n setDialog: function() {\n var $nb_container = Jupyter.notebook.container;\n var that = this;\n var dialog = this.$container.dialog({\n title: \"NGLView\",\n draggable: true,\n resizable: true,\n modal: false,\n width: window.innerWidth - $nb_container.width() - $nb_container.offset().left - 50,\n height: 'auto',\n position: {\n my: 'right',\n at: 'right',\n of: window\n },\n show: {\n effect: \"blind\",\n duration: 150\n },\n close: function(event, ui) {\n that.$el.append(that.$container);\n that.$container.dialog('destroy');\n that.handleResize();\n event; ui; // to pass eslint; ack;\n },\n resize: function(event, ui) {\n that.stage.handleResize();\n that.setSize(ui.size.width + \"px\", ui.size.height + \"px\");\n }.bind(that),\n });\n dialog.css({\n overflow: 'hidden'\n });\n dialog.prev('.ui-dialog-titlebar')\n .css({\n 'background': 'transparent',\n 'border': 'none'\n });\n },\n\n resizeNotebook: function(width) {\n var $nb_container = Jupyter.notebook.container;\n $nb_container.width(width);\n\n if (this.$container.dialog) {\n this.$container.dialog({\n width: $nb_container.offset().left\n });\n }\n },\n\n parametersChanged: function() {\n var _parameters = this.model.get(\"_parameters\");\n this.setParameters(_parameters);\n },\n\n setParameters: function(parameters) {\n this.stage.setParameters(parameters);\n\n // do not set _full_stage_parameters here\n // or parameters will be never updated (not sure why) \n // use observe in python side\n var updated_params = this.stage.getParameters();\n this.send({\n 'type': 'stage_parameters',\n 'data': updated_params\n })\n },\n\n orientationChanged: function() {\n var orientation_list = this.model.get(\"orientation\");\n var mat4 = this.stage.viewerControls.getOrientation();\n mat4.set(orientation_list);\n this.stage.viewerControls.orient(mat4);\n },\n\n _downloadImage: function(filename, params) {\n this.stage.makeImage(params).then(function(blob) {\n NGL.download(blob, filename);\n })\n },\n\n _exportImage: function(params) {\n this.stage.makeImage(params).then(function(blob) {\n var reader = new FileReader();\n var arr_str;\n reader.onload = function() {\n arr_str = reader.result.replace(\"data:image/png;base64,\", \"\");\n this.model.set(\"_image_data\", arr_str);\n this.touch();\n }.bind(this);\n reader.readAsDataURL(blob);\n }.bind(this));\n },\n\n cleanOutput: function() {\n\n var cells = Jupyter.notebook.get_cells();\n\n for (var i = 0; i < cells.length; i++) {\n var cell = cells[i];\n if (cell.output_area.outputs.length > 0) {\n var out = cell.output_area.outputs[0];\n if (out.output_type == 'display_data') {\n cell.clear_output();\n }\n }\n }\n },\n\n _handle_loading_file_finished: function() {\n this.send({'type': 'async_message', 'data': 'ok'});\n },\n \n _handle_stage_loadFile: function(msg){\n // args = [{'type': ..., 'data': ...}]\n var args0 = msg.args[0];\n var that = this;\n if (args0.type == 'blob') {\n var blob;\n if (args0.binary) {\n var decoded_data = this.decode_base64(args0.data);\n blob = new Blob([decoded_data], {\n type: \"application/octet-binary\"\n });\n } else {\n blob = new Blob([args0.data], {\n type: \"text/plain\"\n });\n }\n this.stage.loadFile(blob, msg.kwargs).then(function(o){\n that._handle_loading_file_finished();\n o; // to pass eslint; ack;\n });\n } else {\n this.stage.loadFile(msg.args[0].data, msg.kwargs).then(function(o){\n that._handle_loading_file_finished();\n o; // to pass eslint; ack;\n });\n }\n },\n\n on_msg: function(msg) {\n // TODO: re-organize\n if (msg.type == 'call_method') {\n var index, component, func, stage;\n var new_args = msg.args.slice();\n new_args.push(msg.kwargs);\n\n switch (msg.target) {\n case 'Stage':\n var stage_func = this.stage[msg.methodName];\n stage = this.stage;\n if (msg.methodName == 'screenshot') {\n NGL.screenshot(this.stage.viewer, msg.kwargs);\n } else if (msg.methodName == 'removeComponent') {\n index = msg.args[0];\n component = this.stage.compList[index];\n this.stage.removeComponent(component);\n } else if (msg.methodName == 'loadFile') {\n this._handle_stage_loadFile(msg);\n } else {\n stage_func.apply(stage, new_args);\n }\n break;\n case 'Viewer':\n var viewer = this.stage.viewer;\n func = this.stage.viewer[msg.methodName];\n func.apply(viewer, new_args);\n break;\n case 'viewerControls':\n var controls = this.stage.viewerControls;\n func = controls[msg.methodName];\n func.apply(controls, new_args);\n break;\n case 'compList':\n index = msg['component_index'];\n component = this.stage.compList[index];\n func = component[msg.methodName];\n func.apply(component, new_args);\n break;\n case 'StructureComponent':\n component = this.structureComponent;\n func = component[msg.methodName];\n func.apply(component, new_args);\n break;\n case 'Widget':\n func = this[msg.methodName];\n if (func) {\n func.apply(this, new_args);\n } else {\n // send error message to Python?\n console.log('can not create func for ' + msg.methodName);\n }\n break;\n case 'Representation':\n var component_index = msg['component_index'];\n var repr_index = msg['repr_index'];\n var repr = component.reprList[repr_index];\n component = this.stage.compList[component_index];\n func = repr[msg.methodName];\n if (repr && func) {\n func.apply(repr, new_args);\n }\n break;\n default:\n console.log('there is no method for ' + msg.target);\n break;\n }\n } else if (msg.type == 'base64_single') {\n var coordinatesDict = msg.data;\n var keys = Object.keys(coordinatesDict);\n\n for (var i = 0; i < keys.length; i++) {\n var traj_index = keys[i];\n var coordinates = this.decode_base64(coordinatesDict[traj_index]);\n if (coordinates.byteLength > 0) {\n this.updateCoordinates(coordinates, traj_index);\n }\n }\n } else if (msg.type == 'binary_single') {\n var coordinateMeta = msg.data;\n keys = Object.keys(coordinateMeta);\n\n for (i = 0; i < keys.length; i++) {\n traj_index = keys[i];\n coordinates = new Float32Array(msg.buffers[i].buffer);\n if (coordinates.byteLength > 0) {\n this.updateCoordinates(coordinates, traj_index);\n }\n }\n } else if (msg.type == 'get') {\n if (msg.data == 'camera') {\n this.send(JSON.stringify(this.stage.viewer.camera));\n } else if (msg.data == 'parameters') {\n this.send(JSON.stringify(this.stage.parameters));\n } else {\n for (i = 0; i < this.stage.compList.length; i++) {\n console.log(this.stage.compList[i]);\n }\n }\n }\n },\n});\n\nvar NGLBox = widgets.BoxView.extend({\n initialize: function(parameters) {\n widgets.BoxView.prototype.initialize.call(this, parameters);\n this.$dialog = undefined;\n },\n\n render: function() {\n this.model.on('change:_dialog', this.dialogCommandChanged, this);\n this.model.on('change:_ngl_command', this.commandChanged, this);\n widgets.BoxView.prototype.render.call(this);\n },\n\n dialogCommandChanged: function() {\n var _dialog = this.model.get('_dialog');\n if (_dialog == 'on') {\n this.setDialog();\n }\n },\n\n merge: function() {\n // TODO: rename and add doc\n console.log('calling merge');\n var v0 = this.children_views.views[0];\n var v1 = this.children_views.views[1];\n\n v0.then(function(v00) {\n v1.then(function(v11) {\n v11.$el.appendTo(v00.$container)\n .css(\"position\", \"absolute\")\n .css(\"bottom\", \"5%\")\n .css(\"left\", \"3%\")\n .css(\"padding\", \"2px 5px 2px 5px\")\n });\n });\n },\n\n commandChanged: function() {\n var cm = this.model.get('_ngl_command');\n if (cm == 'merge') {\n this.merge();\n } else {\n console.log(\"place holder\");\n }\n },\n\n setDialog: function() {\n //var $node = $(this.$el.parent()[0]);\n var $node = $(this.$el);\n $node.addClass('jupyter-widgets');\n $node.addClass('widget-container');\n $node.addClass('widget-box');\n var dialog = $node.dialog({\n draggable: true,\n resizable: true,\n modal: false,\n height: 'auto',\n show: {\n effect: \"blind\",\n duration: 150\n },\n });\n dialog.css({\n overflow: 'hidden'\n });\n dialog.prev('.ui-dialog-titlebar')\n .css({\n 'background': 'transparent',\n 'border': 'none'\n });\n },\n});\n\nmodule.exports = {\n 'NGLView': NGLView,\n 'NGL': NGL,\n 'NGLBox': NGLBox\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/widget_ngl.js\n// module id = 1\n// module chunks = 0","module.exports = __WEBPACK_EXTERNAL_MODULE_2__;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"jupyter-js-widgets\"\n// module id = 2\n// module chunks = 0","!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?e(exports):\"function\"==typeof define&&define.amd?define([\"exports\"],e):e(t.NGL=t.NGL||{})}(this,function(t){\"use strict\";function e(){}function i(t,e){return function(){t.apply(e,arguments)}}function r(t){if(\"object\"!=typeof this)throw new TypeError(\"Promises must be constructed via new\");if(\"function\"!=typeof t)throw new TypeError(\"not a function\");this._state=0,this._handled=!1,this._value=void 0,this._deferreds=[],u(t,this)}function n(t,e){for(;3===t._state;)t=t._value;return 0===t._state?void t._deferreds.push(e):(t._handled=!0,void Ac(function(){var i=1===t._state?e.onFulfilled:e.onRejected;if(null===i)return void(1===t._state?o:a)(e.promise,t._value);var r;try{r=i(t._value)}catch(t){return void a(e.promise,t)}o(e.promise,r)}))}function o(t,e){try{if(e===t)throw new TypeError(\"A promise cannot be resolved with itself.\");if(e&&(\"object\"==typeof e||\"function\"==typeof e)){var n=e.then;if(e instanceof r)return t._state=3,t._value=e,void s(t);if(\"function\"==typeof n)return void u(i(n,e),t)}t._state=1,t._value=e,s(t)}catch(e){a(t,e)}}function a(t,e){t._state=2,t._value=e,s(t)}function s(t){2===t._state&&0===t._deferreds.length&&Ac(function(){t._handled||Mc(t._value)});for(var e=0,i=t._deferreds.length;e0&&console.error(\"THREE.Matrix4: the constructor no longer reads arguments. use .set() instead.\")}function m(t,e,i,r){this._x=t||0,this._y=e||0,this._z=i||0,this._w=void 0!==r?r:1}function g(t,e,i){this.x=t||0,this.y=e||0,this.z=i||0}function v(t,e){function i(){var t=new Float32Array([-.5,-.5,0,0,.5,-.5,1,0,.5,.5,1,1,-.5,.5,0,1]),e=new Uint16Array([0,1,2,0,2,3]);o=h.createBuffer(),a=h.createBuffer(),h.bindBuffer(h.ARRAY_BUFFER,o),h.bufferData(h.ARRAY_BUFFER,t,h.STATIC_DRAW),h.bindBuffer(h.ELEMENT_ARRAY_BUFFER,a),h.bufferData(h.ELEMENT_ARRAY_BUFFER,e,h.STATIC_DRAW),s=r(),c={position:h.getAttribLocation(s,\"position\"),uv:h.getAttribLocation(s,\"uv\")},u={uvOffset:h.getUniformLocation(s,\"uvOffset\"),uvScale:h.getUniformLocation(s,\"uvScale\"),rotation:h.getUniformLocation(s,\"rotation\"),scale:h.getUniformLocation(s,\"scale\"),color:h.getUniformLocation(s,\"color\"),map:h.getUniformLocation(s,\"map\"),opacity:h.getUniformLocation(s,\"opacity\"),modelViewMatrix:h.getUniformLocation(s,\"modelViewMatrix\"),projectionMatrix:h.getUniformLocation(s,\"projectionMatrix\"),fogType:h.getUniformLocation(s,\"fogType\"),fogDensity:h.getUniformLocation(s,\"fogDensity\"),fogNear:h.getUniformLocation(s,\"fogNear\"),fogFar:h.getUniformLocation(s,\"fogFar\"),fogColor:h.getUniformLocation(s,\"fogColor\"),alphaTest:h.getUniformLocation(s,\"alphaTest\")};var i=document.createElementNS(\"http://www.w3.org/1999/xhtml\",\"canvas\");i.width=8,i.height=8;var n=i.getContext(\"2d\");n.fillStyle=\"white\",n.fillRect(0,0,8,8),l=new d(i),l.needsUpdate=!0}function r(){var e=h.createProgram(),i=h.createShader(h.VERTEX_SHADER),r=h.createShader(h.FRAGMENT_SHADER);return h.shaderSource(i,[\"precision \"+t.getPrecision()+\" float;\",\"uniform mat4 modelViewMatrix;\",\"uniform mat4 projectionMatrix;\",\"uniform float rotation;\",\"uniform vec2 scale;\",\"uniform vec2 uvOffset;\",\"uniform vec2 uvScale;\",\"attribute vec2 position;\",\"attribute vec2 uv;\",\"varying vec2 vUV;\",\"void main() {\",\"vUV = uvOffset + uv * uvScale;\",\"vec2 alignedPosition = position * scale;\",\"vec2 rotatedPosition;\",\"rotatedPosition.x = cos( rotation ) * alignedPosition.x - sin( rotation ) * alignedPosition.y;\",\"rotatedPosition.y = sin( rotation ) * alignedPosition.x + cos( rotation ) * alignedPosition.y;\",\"vec4 finalPosition;\",\"finalPosition = modelViewMatrix * vec4( 0.0, 0.0, 0.0, 1.0 );\",\"finalPosition.xy += rotatedPosition;\",\"finalPosition = projectionMatrix * finalPosition;\",\"gl_Position = finalPosition;\",\"}\"].join(\"\\n\")),h.shaderSource(r,[\"precision \"+t.getPrecision()+\" float;\",\"uniform vec3 color;\",\"uniform sampler2D map;\",\"uniform float opacity;\",\"uniform int fogType;\",\"uniform vec3 fogColor;\",\"uniform float fogDensity;\",\"uniform float fogNear;\",\"uniform float fogFar;\",\"uniform float alphaTest;\",\"varying vec2 vUV;\",\"void main() {\",\"vec4 texture = texture2D( map, vUV );\",\"if ( texture.a < alphaTest ) discard;\",\"gl_FragColor = vec4( color * texture.xyz, texture.a * opacity );\",\"if ( fogType > 0 ) {\",\"float depth = gl_FragCoord.z / gl_FragCoord.w;\",\"float fogFactor = 0.0;\",\"if ( fogType == 1 ) {\",\"fogFactor = smoothstep( fogNear, fogFar, depth );\",\"} else {\",\"const float LOG2 = 1.442695;\",\"fogFactor = exp2( - fogDensity * fogDensity * depth * depth * LOG2 );\",\"fogFactor = 1.0 - clamp( fogFactor, 0.0, 1.0 );\",\"}\",\"gl_FragColor = mix( gl_FragColor, vec4( fogColor, gl_FragColor.w ), fogFactor );\",\"}\",\"}\"].join(\"\\n\")),h.compileShader(i),h.compileShader(r),h.attachShader(e,i),h.attachShader(e,r),h.linkProgram(e),e}function n(t,e){return t.renderOrder!==e.renderOrder?t.renderOrder-e.renderOrder:t.z!==e.z?e.z-t.z:e.id-t.id}var o,a,s,c,u,l,h=t.context,f=t.state,p=new g,v=new m,y=new g;this.render=function(r,d){if(0!==e.length){void 0===s&&i(),h.useProgram(s),f.initAttributes(),f.enableAttribute(c.position),f.enableAttribute(c.uv),f.disableUnusedAttributes(),f.disable(h.CULL_FACE),f.enable(h.BLEND),h.bindBuffer(h.ARRAY_BUFFER,o),h.vertexAttribPointer(c.position,2,h.FLOAT,!1,16,0),h.vertexAttribPointer(c.uv,2,h.FLOAT,!1,16,8),h.bindBuffer(h.ELEMENT_ARRAY_BUFFER,a),h.uniformMatrix4fv(u.projectionMatrix,!1,d.projectionMatrix.elements),f.activeTexture(h.TEXTURE0),h.uniform1i(u.map,0);var m=0,g=0,b=r.fog;b?(h.uniform3f(u.fogColor,b.color.r,b.color.g,b.color.b),b&&b.isFog?(h.uniform1f(u.fogNear,b.near),h.uniform1f(u.fogFar,b.far),h.uniform1i(u.fogType,1),m=1,g=1):b&&b.isFogExp2&&(h.uniform1f(u.fogDensity,b.density),h.uniform1i(u.fogType,2),m=2,g=2)):(h.uniform1i(u.fogType,0),m=0,g=0);for(var x=0,_=e.length;x<_;x++){var w=e[x];w.modelViewMatrix.multiplyMatrices(d.matrixWorldInverse,w.matrixWorld),w.z=-w.modelViewMatrix.elements[14]}e.sort(n);for(var S=[],x=0,_=e.length;x<_;x++){var w=e[x],A=w.material;if(A.visible!==!1){h.uniform1f(u.alphaTest,A.alphaTest),h.uniformMatrix4fv(u.modelViewMatrix,!1,w.modelViewMatrix.elements),w.matrixWorld.decompose(p,v,y),S[0]=y.x,S[1]=y.y;var M=0;r.fog&&A.fog&&(M=g),m!==M&&(h.uniform1i(u.fogType,M),m=M),null!==A.map?(h.uniform2f(u.uvOffset,A.map.offset.x,A.map.offset.y),h.uniform2f(u.uvScale,A.map.repeat.x,A.map.repeat.y)):(h.uniform2f(u.uvOffset,0,0),h.uniform2f(u.uvScale,1,1)),h.uniform1f(u.opacity,A.opacity),h.uniform3f(u.color,A.color.r,A.color.g,A.color.b),h.uniform1f(u.rotation,A.rotation),h.uniform2fv(u.scale,S),f.setBlending(A.blending,A.blendEquation,A.blendSrc,A.blendDst),f.setDepthTest(A.depthTest),f.setDepthWrite(A.depthWrite),A.map?t.setTexture2D(A.map,0):t.setTexture2D(l,0),h.drawElements(h.TRIANGLES,6,h.UNSIGNED_SHORT,0)}}f.enable(h.CULL_FACE),t.resetGLState()}}}function y(t,e){this.min=void 0!==t?t:new h(+(1/0),+(1/0)),this.max=void 0!==e?e:new h(-(1/0),-(1/0))}function b(t,e){function i(){var t=new Float32Array([-1,-1,0,0,1,-1,1,0,1,1,1,1,-1,1,0,1]),e=new Uint16Array([0,1,2,0,2,3]);n=f.createBuffer(),o=f.createBuffer(),f.bindBuffer(f.ARRAY_BUFFER,n),f.bufferData(f.ARRAY_BUFFER,t,f.STATIC_DRAW),f.bindBuffer(f.ELEMENT_ARRAY_BUFFER,o),f.bufferData(f.ELEMENT_ARRAY_BUFFER,e,f.STATIC_DRAW),l=f.createTexture(),d=f.createTexture(),p.bindTexture(f.TEXTURE_2D,l),f.texImage2D(f.TEXTURE_2D,0,f.RGB,16,16,0,f.RGB,f.UNSIGNED_BYTE,null),f.texParameteri(f.TEXTURE_2D,f.TEXTURE_WRAP_S,f.CLAMP_TO_EDGE),f.texParameteri(f.TEXTURE_2D,f.TEXTURE_WRAP_T,f.CLAMP_TO_EDGE),f.texParameteri(f.TEXTURE_2D,f.TEXTURE_MAG_FILTER,f.NEAREST),f.texParameteri(f.TEXTURE_2D,f.TEXTURE_MIN_FILTER,f.NEAREST),p.bindTexture(f.TEXTURE_2D,d),f.texImage2D(f.TEXTURE_2D,0,f.RGBA,16,16,0,f.RGBA,f.UNSIGNED_BYTE,null),f.texParameteri(f.TEXTURE_2D,f.TEXTURE_WRAP_S,f.CLAMP_TO_EDGE),f.texParameteri(f.TEXTURE_2D,f.TEXTURE_WRAP_T,f.CLAMP_TO_EDGE),f.texParameteri(f.TEXTURE_2D,f.TEXTURE_MAG_FILTER,f.NEAREST),f.texParameteri(f.TEXTURE_2D,f.TEXTURE_MIN_FILTER,f.NEAREST),a={vertexShader:[\"uniform lowp int renderType;\",\"uniform vec3 screenPosition;\",\"uniform vec2 scale;\",\"uniform float rotation;\",\"uniform sampler2D occlusionMap;\",\"attribute vec2 position;\",\"attribute vec2 uv;\",\"varying vec2 vUV;\",\"varying float vVisibility;\",\"void main() {\",\"vUV = uv;\",\"vec2 pos = position;\",\"if ( renderType == 2 ) {\",\"vec4 visibility = texture2D( occlusionMap, vec2( 0.1, 0.1 ) );\",\"visibility += texture2D( occlusionMap, vec2( 0.5, 0.1 ) );\",\"visibility += texture2D( occlusionMap, vec2( 0.9, 0.1 ) );\",\"visibility += texture2D( occlusionMap, vec2( 0.9, 0.5 ) );\",\"visibility += texture2D( occlusionMap, vec2( 0.9, 0.9 ) );\",\"visibility += texture2D( occlusionMap, vec2( 0.5, 0.9 ) );\",\"visibility += texture2D( occlusionMap, vec2( 0.1, 0.9 ) );\",\"visibility += texture2D( occlusionMap, vec2( 0.1, 0.5 ) );\",\"visibility += texture2D( occlusionMap, vec2( 0.5, 0.5 ) );\",\"vVisibility = visibility.r / 9.0;\",\"vVisibility *= 1.0 - visibility.g / 9.0;\",\"vVisibility *= visibility.b / 9.0;\",\"vVisibility *= 1.0 - visibility.a / 9.0;\",\"pos.x = cos( rotation ) * position.x - sin( rotation ) * position.y;\",\"pos.y = sin( rotation ) * position.x + cos( rotation ) * position.y;\",\"}\",\"gl_Position = vec4( ( pos * scale + screenPosition.xy ).xy, screenPosition.z, 1.0 );\",\"}\"].join(\"\\n\"),fragmentShader:[\"uniform lowp int renderType;\",\"uniform sampler2D map;\",\"uniform float opacity;\",\"uniform vec3 color;\",\"varying vec2 vUV;\",\"varying float vVisibility;\",\"void main() {\",\"if ( renderType == 0 ) {\",\"gl_FragColor = vec4( 1.0, 0.0, 1.0, 0.0 );\",\"} else if ( renderType == 1 ) {\",\"gl_FragColor = texture2D( map, vUV );\",\"} else {\",\"vec4 texture = texture2D( map, vUV );\",\"texture.a *= opacity * vVisibility;\",\"gl_FragColor = texture;\",\"gl_FragColor.rgb *= color;\",\"}\",\"}\"].join(\"\\n\")},s=r(a),c={vertex:f.getAttribLocation(s,\"position\"),uv:f.getAttribLocation(s,\"uv\")},u={renderType:f.getUniformLocation(s,\"renderType\"),map:f.getUniformLocation(s,\"map\"),occlusionMap:f.getUniformLocation(s,\"occlusionMap\"),opacity:f.getUniformLocation(s,\"opacity\"),color:f.getUniformLocation(s,\"color\"),scale:f.getUniformLocation(s,\"scale\"),rotation:f.getUniformLocation(s,\"rotation\"),screenPosition:f.getUniformLocation(s,\"screenPosition\")}}function r(e){var i=f.createProgram(),r=f.createShader(f.FRAGMENT_SHADER),n=f.createShader(f.VERTEX_SHADER),o=\"precision \"+t.getPrecision()+\" float;\\n\";return f.shaderSource(r,o+e.fragmentShader),f.shaderSource(n,o+e.vertexShader),f.compileShader(r),f.compileShader(n),f.attachShader(i,r),f.attachShader(i,n),f.linkProgram(i),i}var n,o,a,s,c,u,l,d,f=t.context,p=t.state;this.render=function(r,a,m){if(0!==e.length){var v=new g,b=m.w/m.z,x=.5*m.z,_=.5*m.w,w=16/m.w,S=new h(w*b,w),A=new g(1,1,0),M=new h(1,1),P=new y;P.min.set(0,0),P.max.set(m.z-16,m.w-16),void 0===s&&i(),f.useProgram(s),p.initAttributes(),p.enableAttribute(c.vertex),p.enableAttribute(c.uv),p.disableUnusedAttributes(),f.uniform1i(u.occlusionMap,0),f.uniform1i(u.map,1),f.bindBuffer(f.ARRAY_BUFFER,n),f.vertexAttribPointer(c.vertex,2,f.FLOAT,!1,16,0),f.vertexAttribPointer(c.uv,2,f.FLOAT,!1,16,8),f.bindBuffer(f.ELEMENT_ARRAY_BUFFER,o),p.disable(f.CULL_FACE),p.setDepthWrite(!1);for(var C=0,T=e.length;C.001&&R.scale>.001&&(A.x=R.x,A.y=R.y,A.z=R.z,w=R.size*R.scale/m.w,S.x=w*b,S.y=w,f.uniform3f(u.screenPosition,A.x,A.y,A.z),f.uniform2f(u.scale,S.x,S.y),f.uniform1f(u.rotation,R.rotation),f.uniform1f(u.opacity,R.opacity),f.uniform3f(u.color,R.color.r,R.color.g,R.color.b),p.setBlending(R.blending,R.blendEquation,R.blendSrc,R.blendDst),t.setTexture2D(R.texture,1),f.drawElements(f.TRIANGLES,6,f.UNSIGNED_SHORT,0))}}}p.enable(f.CULL_FACE),p.enable(f.DEPTH_TEST),p.setDepthWrite(!0),t.resetGLState()}}}function x(t,e,i,r,n,o,a,s,c,u){t=void 0!==t?t:[],e=void 0!==e?e:Pu,d.call(this,t,e,i,r,n,o,a,s,c,u),this.flipY=!1}function _(){this.seq=[],this.map={}}function w(t,e,i){var r=t[0];if(r<=0||r>0)return t;var n=e*i,o=jl[n];if(void 0===o&&(o=new Float32Array(n),jl[n]=o),0!==e){r.toArray(o,0);for(var a=1,s=0;a!==e;++a)s+=i,t[a].toArray(o,s)}return o}function S(t,e){var i=$l[e];void 0===i&&(i=new Int32Array(e),$l[e]=i);for(var r=0;r!==e;++r)i[r]=t.allocTextureUnit();return i}function A(t,e){t.uniform1f(this.addr,e)}function M(t,e){t.uniform1i(this.addr,e)}function P(t,e){void 0===e.x?t.uniform2fv(this.addr,e):t.uniform2f(this.addr,e.x,e.y)}function C(t,e){void 0!==e.x?t.uniform3f(this.addr,e.x,e.y,e.z):void 0!==e.r?t.uniform3f(this.addr,e.r,e.g,e.b):t.uniform3fv(this.addr,e)}function T(t,e){void 0===e.x?t.uniform4fv(this.addr,e):t.uniform4f(this.addr,e.x,e.y,e.z,e.w)}function E(t,e){t.uniformMatrix2fv(this.addr,!1,e.elements||e)}function I(t,e){t.uniformMatrix3fv(this.addr,!1,e.elements||e)}function L(t,e){t.uniformMatrix4fv(this.addr,!1,e.elements||e)}function R(t,e,i){var r=i.allocTextureUnit();t.uniform1i(this.addr,r),i.setTexture2D(e||zl,r)}function O(t,e,i){var r=i.allocTextureUnit();t.uniform1i(this.addr,r),i.setTextureCube(e||Ul,r)}function D(t,e){t.uniform2iv(this.addr,e)}function N(t,e){t.uniform3iv(this.addr,e)}function k(t,e){t.uniform4iv(this.addr,e)}function F(t){switch(t){case 5126:return A;case 35664:return P;case 35665:return C;case 35666:return T;case 35674:return E;case 35675:return I;case 35676:return L;case 35678:return R;case 35680:return O;case 5124:case 35670:return M;case 35667:case 35671:return D;case 35668:case 35672:return N;case 35669:case 35673:return k}}function B(t,e){t.uniform1fv(this.addr,e)}function z(t,e){t.uniform1iv(this.addr,e)}function U(t,e){t.uniform2fv(this.addr,w(e,this.size,2))}function j(t,e){t.uniform3fv(this.addr,w(e,this.size,3))}function $(t,e){t.uniform4fv(this.addr,w(e,this.size,4))}function V(t,e){t.uniformMatrix2fv(this.addr,!1,w(e,this.size,4))}function G(t,e){t.uniformMatrix3fv(this.addr,!1,w(e,this.size,9))}function H(t,e){t.uniformMatrix4fv(this.addr,!1,w(e,this.size,16))}function W(t,e,i){var r=e.length,n=S(i,r);t.uniform1iv(this.addr,n);for(var o=0;o!==r;++o)i.setTexture2D(e[o]||zl,n[o])}function X(t,e,i){var r=e.length,n=S(i,r);t.uniform1iv(this.addr,n);for(var o=0;o!==r;++o)i.setTextureCube(e[o]||Ul,n[o])}function q(t){switch(t){case 5126:return B;case 35664:return U;case 35665:return j;case 35666:return $;case 35674:return V;case 35675:return G;case 35676:return H;case 35678:return W;case 35680:return X;case 5124:case 35670:return z;case 35667:case 35671:return D;case 35668:case 35672:return N;case 35669:case 35673:return k}}function Y(t,e,i){this.id=t,this.addr=i,this.setValue=F(e.type)}function Z(t,e,i){this.id=t,this.addr=i,this.size=e.size,this.setValue=q(e.type)}function K(t){this.id=t,_.call(this)}function Q(t,e){t.seq.push(e),t.map[e.id]=e}function J(t,e,i){var r=t.name,n=r.length;for(Vl.lastIndex=0;;){var o=Vl.exec(r),a=Vl.lastIndex,s=o[1],c=\"]\"===o[2],u=o[3];if(c&&(s=0|s),void 0===u||\"[\"===u&&a+2===n){Q(i,void 0===u?new Y(s,t,e):new Z(s,t,e));break}var l=i.map,h=l[s];void 0===h&&(h=new K(s),Q(i,h)),i=h}}function tt(t,e,i){var r=this;_.call(this),this.renderer=i;for(var n=t.getProgramParameter(e,t.ACTIVE_UNIFORMS),o=0;o!==n;++o){var a=t.getActiveUniform(e,o),s=a.name,c=t.getUniformLocation(e,s);J(a,c,r)}}function et(t,e,i,r,n,o,a){function s(t,e){if(t.width>e||t.height>e){var i=e/Math.max(t.width,t.height),r=document.createElementNS(\"http://www.w3.org/1999/xhtml\",\"canvas\");r.width=Math.floor(t.width*i),r.height=Math.floor(t.height*i);var n=r.getContext(\"2d\");return n.drawImage(t,0,0,t.width,t.height,0,0,r.width,r.height),console.warn(\"THREE.WebGLRenderer: image is too big (\"+t.width+\"x\"+t.height+\"). Resized to \"+r.width+\"x\"+r.height,t),r}return t}function c(t){return Fl.isPowerOfTwo(t.width)&&Fl.isPowerOfTwo(t.height)}function u(t){if(t instanceof HTMLImageElement||t instanceof HTMLCanvasElement){var e=document.createElementNS(\"http://www.w3.org/1999/xhtml\",\"canvas\");e.width=Fl.nearestPowerOfTwo(t.width),e.height=Fl.nearestPowerOfTwo(t.height);var i=e.getContext(\"2d\");return i.drawImage(t,0,0,e.width,e.height),console.warn(\"THREE.WebGLRenderer: image is not power of two (\"+t.width+\"x\"+t.height+\"). Resized to \"+e.width+\"x\"+e.height,t),e}return t}function l(t){return t.wrapS!==Du||t.wrapT!==Du||t.minFilter!==ku&&t.minFilter!==zu}function h(e){return e===ku||e===Fu||e===Bu?t.NEAREST:t.LINEAR}function d(t){var e=t.target;e.removeEventListener(\"dispose\",d),p(e),C.textures--}function f(t){var e=t.target;e.removeEventListener(\"dispose\",f),m(e),C.textures--}function p(e){var i=r.get(e);if(e.image&&i.__image__webglTextureCube)t.deleteTexture(i.__image__webglTextureCube);else{if(void 0===i.__webglInit)return;t.deleteTexture(i.__webglTexture)}r.delete(e)}function m(e){var i=r.get(e),n=r.get(e.texture);if(e){if(void 0!==n.__webglTexture&&t.deleteTexture(n.__webglTexture),e.depthTexture&&e.depthTexture.dispose(),e&&e.isWebGLRenderTargetCube)for(var o=0;o<6;o++)t.deleteFramebuffer(i.__webglFramebuffer[o]),i.__webglDepthbuffer&&t.deleteRenderbuffer(i.__webglDepthbuffer[o]);else t.deleteFramebuffer(i.__webglFramebuffer),i.__webglDepthbuffer&&t.deleteRenderbuffer(i.__webglDepthbuffer);r.delete(e.texture),r.delete(e)}}function g(e,n){var o=r.get(e);if(e.version>0&&o.__version!==e.version){var a=e.image;if(void 0===a)console.warn(\"THREE.WebGLRenderer: Texture marked for update but image is undefined\",e);else{if(a.complete!==!1)return void x(o,e,n);console.warn(\"THREE.WebGLRenderer: Texture marked for update but image is incomplete\",e)}}i.activeTexture(t.TEXTURE0+n),i.bindTexture(t.TEXTURE_2D,o.__webglTexture)}function v(e,a){var u=r.get(e);if(6===e.image.length)if(e.version>0&&u.__version!==e.version){u.__image__webglTextureCube||(e.addEventListener(\"dispose\",d),u.__image__webglTextureCube=t.createTexture(),C.textures++),i.activeTexture(t.TEXTURE0+a),i.bindTexture(t.TEXTURE_CUBE_MAP,u.__image__webglTextureCube),t.pixelStorei(t.UNPACK_FLIP_Y_WEBGL,e.flipY);for(var l=e&&e.isCompressedTexture,h=e.image[0]&&e.image[0].isDataTexture,f=[],p=0;p<6;p++)l||h?f[p]=h?e.image[p].image:e.image[p]:f[p]=s(e.image[p],n.maxCubemapSize);var m=f[0],g=c(m),v=o(e.format),y=o(e.type);b(t.TEXTURE_CUBE_MAP,e,g);for(var p=0;p<6;p++)if(l)for(var x,_=f[p].mipmaps,w=0,S=_.length;w-1?i.compressedTexImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+p,w,v,x.width,x.height,0,x.data):console.warn(\"THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .setTextureCube()\"):i.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+p,w,v,x.width,x.height,0,v,y,x.data);else h?i.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+p,0,v,f[p].width,f[p].height,0,v,y,f[p].data):i.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+p,0,v,v,y,f[p]);e.generateMipmaps&&g&&t.generateMipmap(t.TEXTURE_CUBE_MAP),u.__version=e.version,e.onUpdate&&e.onUpdate(e)}else i.activeTexture(t.TEXTURE0+a),i.bindTexture(t.TEXTURE_CUBE_MAP,u.__image__webglTextureCube)}function y(e,n){i.activeTexture(t.TEXTURE0+n),i.bindTexture(t.TEXTURE_CUBE_MAP,r.get(e).__webglTexture)}function b(i,a,s){var c;if(s?(t.texParameteri(i,t.TEXTURE_WRAP_S,o(a.wrapS)),t.texParameteri(i,t.TEXTURE_WRAP_T,o(a.wrapT)),t.texParameteri(i,t.TEXTURE_MAG_FILTER,o(a.magFilter)),t.texParameteri(i,t.TEXTURE_MIN_FILTER,o(a.minFilter))):(t.texParameteri(i,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(i,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),a.wrapS===Du&&a.wrapT===Du||console.warn(\"THREE.WebGLRenderer: Texture is not power of two. Texture.wrapS and Texture.wrapT should be set to THREE.ClampToEdgeWrapping.\",a),t.texParameteri(i,t.TEXTURE_MAG_FILTER,h(a.magFilter)),t.texParameteri(i,t.TEXTURE_MIN_FILTER,h(a.minFilter)),a.minFilter!==ku&&a.minFilter!==zu&&console.warn(\"THREE.WebGLRenderer: Texture is not power of two. Texture.minFilter should be set to THREE.NearestFilter or THREE.LinearFilter.\",a)),c=e.get(\"EXT_texture_filter_anisotropic\")){if(a.type===qu&&null===e.get(\"OES_texture_float_linear\"))return;if(a.type===Yu&&null===e.get(\"OES_texture_half_float_linear\"))return;(a.anisotropy>1||r.get(a).__currentAnisotropy)&&(t.texParameterf(i,c.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(a.anisotropy,n.getMaxAnisotropy())),r.get(a).__currentAnisotropy=a.anisotropy)}}function x(e,r,a){void 0===e.__webglInit&&(e.__webglInit=!0,r.addEventListener(\"dispose\",d),e.__webglTexture=t.createTexture(),C.textures++),i.activeTexture(t.TEXTURE0+a),i.bindTexture(t.TEXTURE_2D,e.__webglTexture),t.pixelStorei(t.UNPACK_FLIP_Y_WEBGL,r.flipY),t.pixelStorei(t.UNPACK_PREMULTIPLY_ALPHA_WEBGL,r.premultiplyAlpha),t.pixelStorei(t.UNPACK_ALIGNMENT,r.unpackAlignment);var h=s(r.image,n.maxTextureSize);l(r)&&c(h)===!1&&(h=u(h));var f=c(h),p=o(r.format),m=o(r.type);b(t.TEXTURE_2D,r,f);var g,v=r.mipmaps;if(r&&r.isDepthTexture){var y=t.DEPTH_COMPONENT;if(r.type===qu){if(!T)throw new Error(\"Float Depth Texture only supported in WebGL2.0\");y=t.DEPTH_COMPONENT32F}else T&&(y=t.DEPTH_COMPONENT16);r.format===al&&(y=t.DEPTH_STENCIL),i.texImage2D(t.TEXTURE_2D,0,y,h.width,h.height,0,p,m,null)}else if(r&&r.isDataTexture)if(v.length>0&&f){for(var x=0,_=v.length;x<_;x++)g=v[x],i.texImage2D(t.TEXTURE_2D,x,p,g.width,g.height,0,p,m,g.data);r.generateMipmaps=!1}else i.texImage2D(t.TEXTURE_2D,0,p,h.width,h.height,0,p,m,h.data);else if(r&&r.isCompressedTexture)for(var x=0,_=v.length;x<_;x++)g=v[x],r.format!==il&&r.format!==el?i.getCompressedTextureFormats().indexOf(p)>-1?i.compressedTexImage2D(t.TEXTURE_2D,x,p,g.width,g.height,0,g.data):console.warn(\"THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()\"):i.texImage2D(t.TEXTURE_2D,x,p,g.width,g.height,0,p,m,g.data);else if(v.length>0&&f){for(var x=0,_=v.length;x<_;x++)g=v[x],i.texImage2D(t.TEXTURE_2D,x,p,p,m,g);r.generateMipmaps=!1}else i.texImage2D(t.TEXTURE_2D,0,p,p,m,h);r.generateMipmaps&&f&&t.generateMipmap(t.TEXTURE_2D),e.__version=r.version,r.onUpdate&&r.onUpdate(r)}function _(e,n,a,s){var c=o(n.texture.format),u=o(n.texture.type);i.texImage2D(s,0,c,n.width,n.height,0,c,u,null),t.bindFramebuffer(t.FRAMEBUFFER,e),t.framebufferTexture2D(t.FRAMEBUFFER,a,s,r.get(n.texture).__webglTexture,0),t.bindFramebuffer(t.FRAMEBUFFER,null)}function w(e,i){t.bindRenderbuffer(t.RENDERBUFFER,e),i.depthBuffer&&!i.stencilBuffer?(t.renderbufferStorage(t.RENDERBUFFER,t.DEPTH_COMPONENT16,i.width,i.height),t.framebufferRenderbuffer(t.FRAMEBUFFER,t.DEPTH_ATTACHMENT,t.RENDERBUFFER,e)):i.depthBuffer&&i.stencilBuffer?(t.renderbufferStorage(t.RENDERBUFFER,t.DEPTH_STENCIL,i.width,i.height),t.framebufferRenderbuffer(t.FRAMEBUFFER,t.DEPTH_STENCIL_ATTACHMENT,t.RENDERBUFFER,e)):t.renderbufferStorage(t.RENDERBUFFER,t.RGBA4,i.width,i.height),t.bindRenderbuffer(t.RENDERBUFFER,null)}function S(e,i){var n=i&&i.isWebGLRenderTargetCube;if(n)throw new Error(\"Depth Texture with cube render targets is not supported!\");if(t.bindFramebuffer(t.FRAMEBUFFER,e),!i.depthTexture||!i.depthTexture.isDepthTexture)throw new Error(\"renderTarget.depthTexture must be an instance of THREE.DepthTexture\");r.get(i.depthTexture).__webglTexture&&i.depthTexture.image.width===i.width&&i.depthTexture.image.height===i.height||(i.depthTexture.image.width=i.width,i.depthTexture.image.height=i.height,i.depthTexture.needsUpdate=!0),g(i.depthTexture,0);var o=r.get(i.depthTexture).__webglTexture;if(i.depthTexture.format===ol)t.framebufferTexture2D(t.FRAMEBUFFER,t.DEPTH_ATTACHMENT,t.TEXTURE_2D,o,0);else{if(i.depthTexture.format!==al)throw new Error(\"Unknown depthTexture format\");t.framebufferTexture2D(t.FRAMEBUFFER,t.DEPTH_STENCIL_ATTACHMENT,t.TEXTURE_2D,o,0)}}function A(e){var i=r.get(e),n=e&&e.isWebGLRenderTargetCube;if(e.depthTexture){if(n)throw new Error(\"target.depthTexture not supported in Cube render targets\");S(i.__webglFramebuffer,e)}else if(n){i.__webglDepthbuffer=[];for(var o=0;o<6;o++)t.bindFramebuffer(t.FRAMEBUFFER,i.__webglFramebuffer[o]),i.__webglDepthbuffer[o]=t.createRenderbuffer(),w(i.__webglDepthbuffer[o],e)}else t.bindFramebuffer(t.FRAMEBUFFER,i.__webglFramebuffer),i.__webglDepthbuffer=t.createRenderbuffer(),w(i.__webglDepthbuffer,e);t.bindFramebuffer(t.FRAMEBUFFER,null)}function M(e){var n=r.get(e),o=r.get(e.texture);e.addEventListener(\"dispose\",f),o.__webglTexture=t.createTexture(),C.textures++;var a=e&&e.isWebGLRenderTargetCube,s=c(e);if(a){n.__webglFramebuffer=[];for(var u=0;u<6;u++)n.__webglFramebuffer[u]=t.createFramebuffer()}else n.__webglFramebuffer=t.createFramebuffer();if(a){i.bindTexture(t.TEXTURE_CUBE_MAP,o.__webglTexture),b(t.TEXTURE_CUBE_MAP,e.texture,s);for(var u=0;u<6;u++)_(n.__webglFramebuffer[u],e,t.COLOR_ATTACHMENT0,t.TEXTURE_CUBE_MAP_POSITIVE_X+u);e.texture.generateMipmaps&&s&&t.generateMipmap(t.TEXTURE_CUBE_MAP),i.bindTexture(t.TEXTURE_CUBE_MAP,null)}else i.bindTexture(t.TEXTURE_2D,o.__webglTexture),b(t.TEXTURE_2D,e.texture,s),_(n.__webglFramebuffer,e,t.COLOR_ATTACHMENT0,t.TEXTURE_2D),e.texture.generateMipmaps&&s&&t.generateMipmap(t.TEXTURE_2D),i.bindTexture(t.TEXTURE_2D,null);e.depthBuffer&&A(e)}function P(e){var n=e.texture;if(n.generateMipmaps&&c(e)&&n.minFilter!==ku&&n.minFilter!==zu){var o=e&&e.isWebGLRenderTargetCube?t.TEXTURE_CUBE_MAP:t.TEXTURE_2D,a=r.get(n).__webglTexture;i.bindTexture(o,a),t.generateMipmap(o),i.bindTexture(o,null)}}var C=a.memory,T=\"undefined\"!=typeof WebGL2RenderingContext&&t instanceof WebGL2RenderingContext;this.setTexture2D=g,this.setTextureCube=v,this.setTextureCubeDynamic=y,this.setupRenderTarget=M,this.updateRenderTargetMipmap=P}function it(t,e,i,r){this.x=t||0,this.y=e||0,this.z=i||0,this.w=void 0!==r?r:1}function rt(t,e,i){function r(){var e=!1,i=new it,r=null,n=new it;return{setMask:function(i){r===i||e||(t.colorMask(i,i,i,i),r=i)},setLocked:function(t){e=t},setClear:function(e,r,o,a){i.set(e,r,o,a),n.equals(i)===!1&&(t.clearColor(e,r,o,a),n.copy(i))},reset:function(){e=!1,r=null,n.set(0,0,0,1)}}}function n(){var e=!1,i=null,r=null,n=null;return{setTest:function(e){e?d(t.DEPTH_TEST):f(t.DEPTH_TEST)},setMask:function(r){i===r||e||(t.depthMask(r),i=r)},setFunc:function(e){if(r!==e){if(e)switch(e){case uu:t.depthFunc(t.NEVER);break;case lu:t.depthFunc(t.ALWAYS);break;case hu:t.depthFunc(t.LESS);break;case du:t.depthFunc(t.LEQUAL);break;case fu:t.depthFunc(t.EQUAL);break;case pu:t.depthFunc(t.GEQUAL);break;case mu:t.depthFunc(t.GREATER);break;case gu:t.depthFunc(t.NOTEQUAL);break;default:t.depthFunc(t.LEQUAL)}else t.depthFunc(t.LEQUAL);r=e}},setLocked:function(t){e=t},setClear:function(e){n!==e&&(t.clearDepth(e),n=e)},reset:function(){e=!1,i=null,r=null,n=null}}}function o(){var e=!1,i=null,r=null,n=null,o=null,a=null,s=null,c=null,u=null;return{setTest:function(e){e?d(t.STENCIL_TEST):f(t.STENCIL_TEST)},setMask:function(r){i===r||e||(t.stencilMask(r),i=r)},setFunc:function(e,i,a){r===e&&n===i&&o===a||(t.stencilFunc(e,i,a),r=e,n=i,o=a)},setOp:function(e,i,r){a===e&&s===i&&c===r||(t.stencilOp(e,i,r),a=e,s=i,c=r)},setLocked:function(t){e=t},setClear:function(e){u!==e&&(t.clearStencil(e),u=e)},reset:function(){e=!1,i=null,r=null,n=null,o=null,a=null,s=null,c=null,u=null}}}function a(e,i,r){var n=new Uint8Array(4),o=t.createTexture();t.bindTexture(e,o),t.texParameteri(e,t.TEXTURE_MIN_FILTER,t.NEAREST),t.texParameteri(e,t.TEXTURE_MAG_FILTER,t.NEAREST);for(var a=0;a0&&console.error(\"THREE.Matrix3: the constructor no longer reads arguments. use .set() instead.\")}function ft(t,e){this.normal=void 0!==t?t:new g(1,0,0),this.constant=void 0!==e?e:0}function pt(t,e,i,r,n,o){this.planes=[void 0!==t?t:new ft,void 0!==e?e:new ft,void 0!==i?i:new ft,void 0!==r?r:new ft,void 0!==n?n:new ft,void 0!==o?o:new ft]}function mt(t,e,i,r){function n(e,i,r,n){var o=e.geometry,a=null,s=w,c=e.customDepthMaterial;if(r&&(s=S,c=e.customDistanceMaterial),c)a=c;else{var u=!1;i.morphTargets&&(o&&o.isBufferGeometry?u=o.morphAttributes&&o.morphAttributes.position&&o.morphAttributes.position.length>0:o&&o.isGeometry&&(u=o.morphTargets&&o.morphTargets.length>0));var l=e.isSkinnedMesh&&i.skinning,h=0;u&&(h|=b),l&&(h|=x),a=s[h]}if(t.localClippingEnabled&&i.clipShadows===!0&&0!==i.clippingPlanes.length){var d=a.uuid,f=i.uuid,p=A[d];void 0===p&&(p={},A[d]=p);var m=p[f];void 0===m&&(m=a.clone(),p[f]=m),a=m}a.visible=i.visible,a.wireframe=i.wireframe;var g=i.side;return k.renderSingleSided&&g==Nc&&(g=Oc),k.renderReverseSided&&(g===Oc?g=Dc:g===Dc&&(g=Oc)),a.side=g,a.clipShadows=i.clipShadows,a.clippingPlanes=i.clippingPlanes,a.wireframeLinewidth=i.wireframeLinewidth,a.linewidth=i.linewidth,r&&void 0!==a.uniforms.lightPos&&a.uniforms.lightPos.value.copy(n),a}function o(t,e,i){if(t.visible!==!1){var r=0!==(t.layers.mask&e.layers.mask);if(r&&(t.isMesh||t.isLine||t.isPoints)&&t.castShadow&&(t.frustumCulled===!1||c.intersectsObject(t)===!0)){var n=t.material;n.visible===!0&&(t.modelViewMatrix.multiplyMatrices(i.matrixWorldInverse,t.matrixWorld),y.push(t))}for(var a=t.children,s=0,u=a.length;s\");return Tt(i)}var i=/#include +<([\\w\\d.]+)>/g;return t.replace(i,e)}function Et(t){function e(t,e,i,r){for(var n=\"\",o=parseInt(e);o0?t.gammaFactor:1,g=St(o,r,t.extensions),v=At(a),y=n.createProgram();i.isRawShaderMaterial?(f=[v,\"\\n\"].filter(Pt).join(\"\\n\"),p=[g,v,\"\\n\"].filter(Pt).join(\"\\n\")):(f=[\"precision \"+r.precision+\" float;\",\"precision \"+r.precision+\" int;\",\"#define SHADER_NAME \"+i.__webglShader.name,v,r.supportsVertexTextures?\"#define VERTEX_TEXTURES\":\"\",\"#define GAMMA_FACTOR \"+m,\"#define MAX_BONES \"+r.maxBones,r.map?\"#define USE_MAP\":\"\",r.envMap?\"#define USE_ENVMAP\":\"\",r.envMap?\"#define \"+h:\"\",r.lightMap?\"#define USE_LIGHTMAP\":\"\",r.aoMap?\"#define USE_AOMAP\":\"\",r.emissiveMap?\"#define USE_EMISSIVEMAP\":\"\",r.bumpMap?\"#define USE_BUMPMAP\":\"\",r.normalMap?\"#define USE_NORMALMAP\":\"\",r.displacementMap&&r.supportsVertexTextures?\"#define USE_DISPLACEMENTMAP\":\"\",r.specularMap?\"#define USE_SPECULARMAP\":\"\",r.roughnessMap?\"#define USE_ROUGHNESSMAP\":\"\",r.metalnessMap?\"#define USE_METALNESSMAP\":\"\",r.alphaMap?\"#define USE_ALPHAMAP\":\"\",r.vertexColors?\"#define USE_COLOR\":\"\",r.flatShading?\"#define FLAT_SHADED\":\"\",r.skinning?\"#define USE_SKINNING\":\"\",r.useVertexTexture?\"#define BONE_TEXTURE\":\"\",r.morphTargets?\"#define USE_MORPHTARGETS\":\"\",r.morphNormals&&r.flatShading===!1?\"#define USE_MORPHNORMALS\":\"\",r.doubleSided?\"#define DOUBLE_SIDED\":\"\",r.flipSided?\"#define FLIP_SIDED\":\"\",\"#define NUM_CLIPPING_PLANES \"+r.numClippingPlanes,r.shadowMapEnabled?\"#define USE_SHADOWMAP\":\"\",r.shadowMapEnabled?\"#define \"+u:\"\",r.sizeAttenuation?\"#define USE_SIZEATTENUATION\":\"\",r.logarithmicDepthBuffer?\"#define USE_LOGDEPTHBUF\":\"\",r.logarithmicDepthBuffer&&t.extensions.get(\"EXT_frag_depth\")?\"#define USE_LOGDEPTHBUF_EXT\":\"\",\"uniform mat4 modelMatrix;\",\"uniform mat4 modelViewMatrix;\",\"uniform mat4 projectionMatrix;\",\"uniform mat4 viewMatrix;\",\"uniform mat3 normalMatrix;\",\"uniform vec3 cameraPosition;\",\"attribute vec3 position;\",\"attribute vec3 normal;\",\"attribute vec2 uv;\",\"#ifdef USE_COLOR\",\" attribute vec3 color;\",\"#endif\",\"#ifdef USE_MORPHTARGETS\",\" attribute vec3 morphTarget0;\",\" attribute vec3 morphTarget1;\",\" attribute vec3 morphTarget2;\",\" attribute vec3 morphTarget3;\",\" #ifdef USE_MORPHNORMALS\",\" attribute vec3 morphNormal0;\",\" attribute vec3 morphNormal1;\",\" attribute vec3 morphNormal2;\",\" attribute vec3 morphNormal3;\",\" #else\",\" attribute vec3 morphTarget4;\",\" attribute vec3 morphTarget5;\",\" attribute vec3 morphTarget6;\",\" attribute vec3 morphTarget7;\",\" #endif\",\"#endif\",\"#ifdef USE_SKINNING\",\" attribute vec4 skinIndex;\",\" attribute vec4 skinWeight;\",\"#endif\",\"\\n\"].filter(Pt).join(\"\\n\"),p=[g,\"precision \"+r.precision+\" float;\",\"precision \"+r.precision+\" int;\",\"#define SHADER_NAME \"+i.__webglShader.name,v,r.alphaTest?\"#define ALPHATEST \"+r.alphaTest:\"\",\"#define GAMMA_FACTOR \"+m,r.useFog&&r.fog?\"#define USE_FOG\":\"\",r.useFog&&r.fogExp?\"#define FOG_EXP2\":\"\",r.map?\"#define USE_MAP\":\"\",r.envMap?\"#define USE_ENVMAP\":\"\",r.envMap?\"#define \"+l:\"\",r.envMap?\"#define \"+h:\"\",r.envMap?\"#define \"+d:\"\",r.lightMap?\"#define USE_LIGHTMAP\":\"\",r.aoMap?\"#define USE_AOMAP\":\"\",r.emissiveMap?\"#define USE_EMISSIVEMAP\":\"\",r.bumpMap?\"#define USE_BUMPMAP\":\"\",r.normalMap?\"#define USE_NORMALMAP\":\"\",r.specularMap?\"#define USE_SPECULARMAP\":\"\",r.roughnessMap?\"#define USE_ROUGHNESSMAP\":\"\",r.metalnessMap?\"#define USE_METALNESSMAP\":\"\",r.alphaMap?\"#define USE_ALPHAMAP\":\"\",r.vertexColors?\"#define USE_COLOR\":\"\",r.flatShading?\"#define FLAT_SHADED\":\"\",r.doubleSided?\"#define DOUBLE_SIDED\":\"\",r.flipSided?\"#define FLIP_SIDED\":\"\",\"#define NUM_CLIPPING_PLANES \"+r.numClippingPlanes,r.shadowMapEnabled?\"#define USE_SHADOWMAP\":\"\",r.shadowMapEnabled?\"#define \"+u:\"\",r.premultipliedAlpha?\"#define PREMULTIPLIED_ALPHA\":\"\",r.physicallyCorrectLights?\"#define PHYSICALLY_CORRECT_LIGHTS\":\"\",r.logarithmicDepthBuffer?\"#define USE_LOGDEPTHBUF\":\"\",r.logarithmicDepthBuffer&&t.extensions.get(\"EXT_frag_depth\")?\"#define USE_LOGDEPTHBUF_EXT\":\"\",r.envMap&&t.extensions.get(\"EXT_shader_texture_lod\")?\"#define TEXTURE_LOD_EXT\":\"\",\"uniform mat4 viewMatrix;\",\"uniform vec3 cameraPosition;\",r.toneMapping!==xu?\"#define TONE_MAPPING\":\"\",r.toneMapping!==xu?Vd.tonemapping_pars_fragment:\"\",r.toneMapping!==xu?wt(\"toneMapping\",r.toneMapping):\"\",r.outputEncoding||r.mapEncoding||r.envMapEncoding||r.emissiveMapEncoding?Vd.encodings_pars_fragment:\"\",r.mapEncoding?xt(\"mapTexelToLinear\",r.mapEncoding):\"\",r.envMapEncoding?xt(\"envMapTexelToLinear\",r.envMapEncoding):\"\",r.emissiveMapEncoding?xt(\"emissiveMapTexelToLinear\",r.emissiveMapEncoding):\"\",r.outputEncoding?_t(\"linearToOutputTexel\",r.outputEncoding):\"\",r.depthPacking?\"#define DEPTH_PACKING \"+i.depthPacking:\"\",\"\\n\"].filter(Pt).join(\"\\n\")),s=Tt(s,r),s=Ct(s,r),c=Tt(c,r),c=Ct(c,r),i.isShaderMaterial||(s=Et(s),c=Et(c));var b=f+s,x=p+c,_=vt(n,n.VERTEX_SHADER,b),w=vt(n,n.FRAGMENT_SHADER,x);n.attachShader(y,_),n.attachShader(y,w),void 0!==i.index0AttributeName?n.bindAttribLocation(y,0,i.index0AttributeName):r.morphTargets===!0&&n.bindAttribLocation(y,0,\"position\"),n.linkProgram(y);var S=n.getProgramInfoLog(y),A=n.getShaderInfoLog(_),M=n.getShaderInfoLog(w),P=!0,C=!0;n.getProgramParameter(y,n.LINK_STATUS)===!1?(P=!1,console.error(\"THREE.WebGLProgram: shader error: \",n.getError(),\"gl.VALIDATE_STATUS\",n.getProgramParameter(y,n.VALIDATE_STATUS),\"gl.getProgramInfoLog\",S,A,M)):\"\"!==S?console.warn(\"THREE.WebGLProgram: gl.getProgramInfoLog()\",S):\"\"!==A&&\"\"!==M||(C=!1),C&&(this.diagnostics={runnable:P,material:i,programLog:S,vertexShader:{log:A,prefix:f},fragmentShader:{log:M,prefix:p}}),n.deleteShader(_),n.deleteShader(w);var T;this.getUniforms=function(){return void 0===T&&(T=new tt(n,y,t)),T};var E;return this.getAttributes=function(){return void 0===E&&(E=Mt(n,y)),E},this.destroy=function(){n.deleteProgram(y),this.program=void 0},Object.defineProperties(this,{uniforms:{get:function(){return console.warn(\"THREE.WebGLProgram: .uniforms is now .getUniforms().\"),this.getUniforms()}},attributes:{get:function(){return console.warn(\"THREE.WebGLProgram: .attributes is now .getAttributes().\"),this.getAttributes()}}}),this.id=Xd++,this.code=e,this.usedTimes=1,this.program=y,this.vertexShader=_,this.fragmentShader=w,this}function Lt(t,e){function i(t){if(e.floatVertexTextures&&t&&t.skeleton&&t.skeleton.useVertexTexture)return 1024;var i=e.maxVertexUniforms,r=Math.floor((i-20)/4),n=r;return void 0!==t&&t&&t.isSkinnedMesh&&(n=Math.min(t.skeleton.bones.length,n),n0,shadowMapType:t.shadowMap.type,toneMapping:t.toneMapping,physicallyCorrectLights:t.physicallyCorrectLights,premultipliedAlpha:n.premultipliedAlpha,alphaTest:n.alphaTest,doubleSided:n.side===Nc,flipSided:n.side===Dc,depthPacking:void 0!==n.depthPacking&&n.depthPacking};return p},this.getProgramCode=function(t,e){var i=[];if(e.shaderID?i.push(e.shaderID):(i.push(t.fragmentShader),i.push(t.vertexShader)),void 0!==t.defines)for(var r in t.defines)i.push(r),i.push(t.defines[r]);for(var n=0;n65535?Uint32Array:Uint16Array,y=new Rt(new v(o),1);return n(y,t.ELEMENT_ARRAY_BUFFER),r.wireframe=y,y}function u(t,e,i){if(e>i){var r=e;e=i,i=r}var n=t[e];return void 0===n?(t[e]=[i],!0):n.indexOf(i)===-1&&(n.push(i),!0)}var l=new Vt(t,e,i);return{getAttributeBuffer:s,getWireframeAttribute:c,update:r}}function Ht(){var t={};return{get:function(e){if(void 0!==t[e.id])return t[e.id];var i;switch(e.type){case\"DirectionalLight\":i={direction:new g,color:new ct,shadow:!1,shadowBias:0,shadowRadius:1,shadowMapSize:new h};break;case\"SpotLight\":i={position:new g,direction:new g,color:new ct,distance:0,coneCos:0,penumbraCos:0,decay:0,shadow:!1,shadowBias:0,shadowRadius:1,shadowMapSize:new h};break;case\"PointLight\":i={position:new g,color:new ct,distance:0,decay:0,shadow:!1,shadowBias:0,shadowRadius:1,shadowMapSize:new h};break;case\"HemisphereLight\":i={direction:new g,skyColor:new ct,groundColor:new ct}}return t[e.id]=i,i}}}function Wt(t,e,i){function r(){if(void 0!==o)return o;var i=e.get(\"EXT_texture_filter_anisotropic\");return o=null!==i?t.getParameter(i.MAX_TEXTURE_MAX_ANISOTROPY_EXT):0}function n(e){if(\"highp\"===e){if(t.getShaderPrecisionFormat(t.VERTEX_SHADER,t.HIGH_FLOAT).precision>0&&t.getShaderPrecisionFormat(t.FRAGMENT_SHADER,t.HIGH_FLOAT).precision>0)return\"highp\";e=\"mediump\"}return\"mediump\"===e&&t.getShaderPrecisionFormat(t.VERTEX_SHADER,t.MEDIUM_FLOAT).precision>0&&t.getShaderPrecisionFormat(t.FRAGMENT_SHADER,t.MEDIUM_FLOAT).precision>0?\"mediump\":\"lowp\"}var o,a=void 0!==i.precision?i.precision:\"highp\",s=n(a);s!==a&&(console.warn(\"THREE.WebGLRenderer:\",a,\"not supported, using\",s,\"instead.\"),a=s);var c=i.logarithmicDepthBuffer===!0&&!!e.get(\"EXT_frag_depth\"),u=t.getParameter(t.MAX_TEXTURE_IMAGE_UNITS),l=t.getParameter(t.MAX_VERTEX_TEXTURE_IMAGE_UNITS),h=t.getParameter(t.MAX_TEXTURE_SIZE),d=t.getParameter(t.MAX_CUBE_MAP_TEXTURE_SIZE),f=t.getParameter(t.MAX_VERTEX_ATTRIBS),p=t.getParameter(t.MAX_VERTEX_UNIFORM_VECTORS),m=t.getParameter(t.MAX_VARYING_VECTORS),g=t.getParameter(t.MAX_FRAGMENT_UNIFORM_VECTORS),v=l>0,y=!!e.get(\"OES_texture_float\"),b=v&&y;return{getMaxAnisotropy:r,getMaxPrecision:n,precision:a,logarithmicDepthBuffer:c,maxTextures:u,maxVertexTextures:l,maxTextureSize:h,maxCubemapSize:d,maxAttributes:f,maxVertexUniforms:p,maxVaryings:m,maxFragmentUniforms:g,vertexTextures:v,floatFragmentTextures:y,floatVertexTextures:b}}function Xt(t){var e={};return{get:function(i){if(void 0!==e[i])return e[i];var r;switch(i){case\"WEBGL_depth_texture\":r=t.getExtension(\"WEBGL_depth_texture\")||t.getExtension(\"MOZ_WEBGL_depth_texture\")||t.getExtension(\"WEBKIT_WEBGL_depth_texture\");break;case\"EXT_texture_filter_anisotropic\":r=t.getExtension(\"EXT_texture_filter_anisotropic\")||t.getExtension(\"MOZ_EXT_texture_filter_anisotropic\")||t.getExtension(\"WEBKIT_EXT_texture_filter_anisotropic\");break;case\"WEBGL_compressed_texture_s3tc\":r=t.getExtension(\"WEBGL_compressed_texture_s3tc\")||t.getExtension(\"MOZ_WEBGL_compressed_texture_s3tc\")||t.getExtension(\"WEBKIT_WEBGL_compressed_texture_s3tc\");break;case\"WEBGL_compressed_texture_pvrtc\":r=t.getExtension(\"WEBGL_compressed_texture_pvrtc\")||t.getExtension(\"WEBKIT_WEBGL_compressed_texture_pvrtc\");break;case\"WEBGL_compressed_texture_etc1\":r=t.getExtension(\"WEBGL_compressed_texture_etc1\");break;default:r=t.getExtension(i)}return null===r&&console.warn(\"THREE.WebGLRenderer: \"+i+\" extension not supported.\"),e[i]=r,r}}}function qt(t,e,i){function r(t){s=t}function n(i){i.array instanceof Uint32Array&&e.get(\"OES_element_index_uint\")?(c=t.UNSIGNED_INT,u=4):(c=t.UNSIGNED_SHORT,u=2)}function o(e,r){t.drawElements(s,r,c,e*u),i.calls++,i.vertices+=r,s===t.TRIANGLES&&(i.faces+=r/3)}function a(r,n,o){var a=e.get(\"ANGLE_instanced_arrays\");return null===a?void console.error(\"THREE.WebGLBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.\"):(a.drawElementsInstancedANGLE(s,o,c,n*u,r.maxInstancedCount),i.calls++,i.vertices+=o*r.maxInstancedCount,void(s===t.TRIANGLES&&(i.faces+=r.maxInstancedCount*o/3)))}var s,c,u;return{setMode:r,setIndex:n,render:o,renderInstances:a}}function Yt(){function t(){u.value!==r&&(u.value=r,u.needsUpdate=n>0),i.numPlanes=n;\n}function e(t,e,r,n){var o=null!==t?t.length:0,a=null;if(0!==o){if(a=u.value,n!==!0||null===a){var l=r+4*o,h=e.matrixWorldInverse;c.getNormalMatrix(h),(null===a||a.length0?1:-1,p[v]=L.x,p[v+1]=L.y,p[v+2]=L.z,m[y]=D/c,m[y+1]=1-R/l,v+=3,y+=2,E+=1}for(R=0;R65535?Uint32Array:Uint16Array)(h),f=new Float32Array(3*l),p=new Float32Array(3*l),m=new Float32Array(2*l),v=0,y=0,b=0,x=0,_=0;c(\"z\",\"y\",\"x\",-1,-1,i,e,t,o,n,0),c(\"z\",\"y\",\"x\",1,-1,i,e,-t,o,n,1),c(\"x\",\"z\",\"y\",1,1,t,i,e,r,o,2),c(\"x\",\"z\",\"y\",1,-1,t,i,-e,r,o,3),c(\"x\",\"y\",\"z\",1,-1,t,e,i,r,n,4),c(\"x\",\"y\",\"z\",-1,-1,t,e,-i,r,n,5),this.setIndex(new Rt(d,1)),this.addAttribute(\"position\",new Rt(f,3)),this.addAttribute(\"normal\",new Rt(p,3)),this.addAttribute(\"uv\",new Rt(m,2))}function Qt(t,e){this.origin=void 0!==t?t:new g,this.direction=void 0!==e?e:new g}function Jt(t,e){this.start=void 0!==t?t:new g,this.end=void 0!==e?e:new g}function te(t,e,i){this.a=void 0!==t?t:new g,this.b=void 0!==e?e:new g,this.c=void 0!==i?i:new g}function ee(t){ot.call(this),this.type=\"MeshBasicMaterial\",this.color=new ct(16777215),this.map=null,this.aoMap=null,this.aoMapIntensity=1,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=vu,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=\"round\",this.wireframeLinejoin=\"round\",this.skinning=!1,this.morphTargets=!1,this.lights=!1,this.setValues(t)}function ie(t,e){Ft.call(this),this.type=\"Mesh\",this.geometry=void 0!==t?t:new $t,this.material=void 0!==e?e:new ee({color:16777215*Math.random()}),this.drawMode=Ml,this.updateMorphTargets()}function re(t,e,i,r){$t.call(this),this.type=\"PlaneBufferGeometry\",this.parameters={width:t,height:e,widthSegments:i,heightSegments:r};for(var n=t/2,o=e/2,a=Math.floor(i)||1,s=Math.floor(r)||1,c=a+1,u=s+1,l=t/a,h=e/s,d=new Float32Array(c*u*3),f=new Float32Array(c*u*3),p=new Float32Array(c*u*2),m=0,g=0,v=0;v65535?Uint32Array:Uint16Array)(a*s*6),v=0;v=0){var l=o[c];if(void 0!==l){var h=jt.FLOAT,d=l.array,f=l.normalized;d instanceof Float32Array?h=jt.FLOAT:d instanceof Float64Array?console.warn(\"Unsupported data buffer format: Float64Array\"):d instanceof Uint16Array?h=jt.UNSIGNED_SHORT:d instanceof Int16Array?h=jt.SHORT:d instanceof Uint32Array?h=jt.UNSIGNED_INT:d instanceof Int32Array?h=jt.INT:d instanceof Int8Array?h=jt.BYTE:d instanceof Uint8Array&&(h=jt.UNSIGNED_BYTE);var p=l.itemSize,m=ce.getAttributeBuffer(l);if(l&&l.isInterleavedBufferAttribute){var g=l.data,v=g.stride,y=l.offset;g&&g.isInstancedInterleavedBuffer?(te.enableAttributeAndDivisor(u,g.meshPerAttribute,n),void 0===i.maxInstancedCount&&(i.maxInstancedCount=g.meshPerAttribute*g.count)):te.enableAttribute(u),jt.bindBuffer(jt.ARRAY_BUFFER,m),jt.vertexAttribPointer(u,p,h,f,v*g.array.BYTES_PER_ELEMENT,(r*v+y)*g.array.BYTES_PER_ELEMENT)}else l&&l.isInstancedBufferAttribute?(te.enableAttributeAndDivisor(u,l.meshPerAttribute,n),void 0===i.maxInstancedCount&&(i.maxInstancedCount=l.meshPerAttribute*l.count)):te.enableAttribute(u),jt.bindBuffer(jt.ARRAY_BUFFER,m),jt.vertexAttribPointer(u,p,h,f,0,r*p*l.array.BYTES_PER_ELEMENT)}else if(void 0!==s){var b=s[c];if(void 0!==b)switch(b.length){case 2:jt.vertexAttrib2fv(u,b);break;case 3:jt.vertexAttrib3fv(u,b);break;case 4:jt.vertexAttrib4fv(u,b);break;default:jt.vertexAttrib1fv(u,b)}}}}te.disableUnusedAttributes()}function l(t,e){return Math.abs(e[0])-Math.abs(t[0])}function h(t,e){return t.object.renderOrder!==e.object.renderOrder?t.object.renderOrder-e.object.renderOrder:t.material.program&&e.material.program&&t.material.program!==e.material.program?t.material.program.id-e.material.program.id:t.material.id!==e.material.id?t.material.id-e.material.id:t.z!==e.z?t.z-e.z:t.id-e.id}function d(t,e){return t.object.renderOrder!==e.object.renderOrder?t.object.renderOrder-e.object.renderOrder:t.z!==e.z?e.z-t.z:t.id-e.id}function f(t,e,i,r,n){var o,a;i.transparent?(o=K,a=++Q):(o=Y,a=++Z);var s=o[a];void 0!==s?(s.id=t.id,s.object=t,s.geometry=e,s.material=i,s.z=Bt.z,s.group=n):(s={id:t.id,object:t,geometry:e,material:i,z:Bt.z,group:n},o.push(s))}function m(t){var e=t.geometry;return null===e.boundingSphere&&e.computeBoundingSphere(),kt.copy(e.boundingSphere).applyMatrix4(t.matrixWorld),x(kt)}function y(t){return kt.center.set(0,0,0),kt.radius=.7071067811865476,kt.applyMatrix4(t.matrixWorld),x(kt)}function x(t){if(!Rt.intersectsSphere(t))return!1;var e=Ot.numPlanes;if(0===e)return!0;var i=at.clippingPlanes,r=t.center,n=-t.radius,o=0;do if(i[o].distanceToPoint(r)=0&&t.numSupportedMorphTargets++}if(t.morphNormals){t.numSupportedMorphNormals=0;for(var d=0;d=0&&t.numSupportedMorphNormals++}var f=r.__webglShader.uniforms;!t.isShaderMaterial&&!t.isRawShaderMaterial|t.clipping===!0&&(r.numClippingPlanes=Ot.numPlanes,f.clippingPlanes=Ot.uniform),r.fog=e,r.lightsHash=zt.hash,t.lights&&(f.ambientLightColor.value=zt.ambient,f.directionalLights.value=zt.directional,f.spotLights.value=zt.spot,f.pointLights.value=zt.point,f.hemisphereLights.value=zt.hemi,f.directionalShadowMap.value=zt.directionalShadowMap,f.directionalShadowMatrix.value=zt.directionalShadowMatrix,f.spotShadowMap.value=zt.spotShadowMap,f.spotShadowMatrix.value=zt.spotShadowMatrix,f.pointShadowMap.value=zt.pointShadowMap,f.pointShadowMatrix.value=zt.pointShadowMatrix);var p=r.program.getUniforms(),m=tt.seqWithValue(p.seq,f);r.uniformsList=m,r.dynamicUniforms=tt.splitDynamic(m,f)}function A(t){t.side===Nc?te.disable(jt.CULL_FACE):te.enable(jt.CULL_FACE),te.setFlipSided(t.side===Dc),t.transparent===!0?te.setBlending(t.blending,t.blendEquation,t.blendSrc,t.blendDst,t.blendEquationAlpha,t.blendSrcAlpha,t.blendDstAlpha,t.premultipliedAlpha):te.setBlending(jc),te.setDepthFunc(t.depthFunc),te.setDepthTest(t.depthTest),te.setDepthWrite(t.depthWrite),te.setColorWrite(t.colorWrite),te.setPolygonOffset(t.polygonOffset,t.polygonOffsetFactor,t.polygonOffsetUnits)}function M(t,e,i,r){wt=0;var n=ne.get(i);if(Dt&&(Nt||t!==vt)){var o=t===vt&&i.id===ft;Ot.setState(i.clippingPlanes,i.clipShadows,t,n,o)}i.needsUpdate===!1&&(void 0===n.program?i.needsUpdate=!0:i.fog&&n.fog!==e?i.needsUpdate=!0:i.lights&&n.lightsHash!==zt.hash?i.needsUpdate=!0:void 0!==n.numClippingPlanes&&n.numClippingPlanes!==Ot.numPlanes&&(i.needsUpdate=!0)),i.needsUpdate&&(S(i,e,r),i.needsUpdate=!1);var a=!1,s=!1,c=!1,u=n.program,l=u.getUniforms(),h=n.__webglShader.uniforms;if(u.id!==ut&&(jt.useProgram(u.program),ut=u.id,a=!0,s=!0,c=!0),i.id!==ft&&(ft=i.id,s=!0),a||t!==vt){if(l.set(jt,t,\"projectionMatrix\"),Jt.logarithmicDepthBuffer&&l.setValue(jt,\"logDepthBufFC\",2/(Math.log(t.far+1)/Math.LN2)),t!==vt&&(vt=t,s=!0,c=!0),i.isShaderMaterial||i.isMeshPhongMaterial||i.isMeshStandardMaterial||i.envMap){var d=l.map.cameraPosition;void 0!==d&&d.setValue(jt,Bt.setFromMatrixPosition(t.matrixWorld))}(i.isMeshPhongMaterial||i.isMeshLambertMaterial||i.isMeshBasicMaterial||i.isMeshStandardMaterial||i.isShaderMaterial||i.skinning)&&l.setValue(jt,\"viewMatrix\",t.matrixWorldInverse),l.set(jt,at,\"toneMappingExposure\"),l.set(jt,at,\"toneMappingWhitePoint\")}if(i.skinning){l.setOptional(jt,r,\"bindMatrix\"),l.setOptional(jt,r,\"bindMatrixInverse\");var f=r.skeleton;f&&(Jt.floatVertexTextures&&f.useVertexTexture?(l.set(jt,f,\"boneTexture\"),l.set(jt,f,\"boneTextureWidth\"),l.set(jt,f,\"boneTextureHeight\")):l.setOptional(jt,f,\"boneMatrices\"))}s&&(i.lights&&N(h,c),e&&i.fog&&I(h,e),(i.isMeshBasicMaterial||i.isMeshLambertMaterial||i.isMeshPhongMaterial||i.isMeshStandardMaterial||i.isMeshDepthMaterial)&&P(h,i),i.isLineBasicMaterial?C(h,i):i.isLineDashedMaterial?(C(h,i),T(h,i)):i.isPointsMaterial?E(h,i):i.isMeshLambertMaterial?L(h,i):i.isMeshPhongMaterial?R(h,i):i.isMeshPhysicalMaterial?D(h,i):i.isMeshStandardMaterial?O(h,i):i.isMeshDepthMaterial?i.displacementMap&&(h.displacementMap.value=i.displacementMap,h.displacementScale.value=i.displacementScale,h.displacementBias.value=i.displacementBias):i.isMeshNormalMaterial&&(h.opacity.value=i.opacity),tt.upload(jt,n.uniformsList,h,at)),l.set(jt,r,\"modelViewMatrix\"),l.set(jt,r,\"normalMatrix\"),l.setValue(jt,\"modelMatrix\",r.matrixWorld);var p=n.dynamicUniforms;return null!==p&&(tt.evalDynamic(p,h,r,t),tt.upload(jt,p,h,at)),u}function P(t,e){t.opacity.value=e.opacity,t.diffuse.value=e.color,e.emissive&&t.emissive.value.copy(e.emissive).multiplyScalar(e.emissiveIntensity),t.map.value=e.map,t.specularMap.value=e.specularMap,t.alphaMap.value=e.alphaMap,e.aoMap&&(t.aoMap.value=e.aoMap,t.aoMapIntensity.value=e.aoMapIntensity);var i;if(e.map?i=e.map:e.specularMap?i=e.specularMap:e.displacementMap?i=e.displacementMap:e.normalMap?i=e.normalMap:e.bumpMap?i=e.bumpMap:e.roughnessMap?i=e.roughnessMap:e.metalnessMap?i=e.metalnessMap:e.alphaMap?i=e.alphaMap:e.emissiveMap&&(i=e.emissiveMap),void 0!==i){i.isWebGLRenderTarget&&(i=i.texture);var r=i.offset,n=i.repeat;t.offsetRepeat.value.set(r.x,r.y,n.x,n.y)}t.envMap.value=e.envMap,t.flipEnvMap.value=e.envMap&&e.envMap.isCubeTexture?-1:1,t.reflectivity.value=e.reflectivity,t.refractionRatio.value=e.refractionRatio}function C(t,e){t.diffuse.value=e.color,t.opacity.value=e.opacity}function T(t,e){t.dashSize.value=e.dashSize,t.totalSize.value=e.dashSize+e.gapSize,t.scale.value=e.scale}function E(t,e){if(t.diffuse.value=e.color,t.opacity.value=e.opacity,t.size.value=e.size*Ct,t.scale.value=.5*U.clientHeight,t.map.value=e.map,null!==e.map){var i=e.map.offset,r=e.map.repeat;t.offsetRepeat.value.set(i.x,i.y,r.x,r.y)}}function I(t,e){t.fogColor.value=e.color,e.isFog?(t.fogNear.value=e.near,t.fogFar.value=e.far):e.isFogExp2&&(t.fogDensity.value=e.density)}function L(t,e){e.lightMap&&(t.lightMap.value=e.lightMap,t.lightMapIntensity.value=e.lightMapIntensity),e.emissiveMap&&(t.emissiveMap.value=e.emissiveMap)}function R(t,e){t.specular.value=e.specular,t.shininess.value=Math.max(e.shininess,1e-4),e.lightMap&&(t.lightMap.value=e.lightMap,t.lightMapIntensity.value=e.lightMapIntensity),e.emissiveMap&&(t.emissiveMap.value=e.emissiveMap),e.bumpMap&&(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale),e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale)),e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}function O(t,e){t.roughness.value=e.roughness,t.metalness.value=e.metalness,e.roughnessMap&&(t.roughnessMap.value=e.roughnessMap),e.metalnessMap&&(t.metalnessMap.value=e.metalnessMap),e.lightMap&&(t.lightMap.value=e.lightMap,t.lightMapIntensity.value=e.lightMapIntensity),e.emissiveMap&&(t.emissiveMap.value=e.emissiveMap),e.bumpMap&&(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale),e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale)),e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias),e.envMap&&(t.envMapIntensity.value=e.envMapIntensity)}function D(t,e){t.clearCoat.value=e.clearCoat,t.clearCoatRoughness.value=e.clearCoatRoughness,O(t,e)}function N(t,e){t.ambientLightColor.needsUpdate=e,t.directionalLights.needsUpdate=e,t.pointLights.needsUpdate=e,t.spotLights.needsUpdate=e,t.hemisphereLights.needsUpdate=e}function k(t){for(var e=0,i=0,r=t.length;i=Jt.maxTextures&&console.warn(\"WebGLRenderer: trying to use \"+t+\" texture units while this GPU supports only \"+Jt.maxTextures),wt+=1,t}function z(t){var e;if(t===Ou)return jt.REPEAT;if(t===Du)return jt.CLAMP_TO_EDGE;if(t===Nu)return jt.MIRRORED_REPEAT;if(t===ku)return jt.NEAREST;if(t===Fu)return jt.NEAREST_MIPMAP_NEAREST;if(t===Bu)return jt.NEAREST_MIPMAP_LINEAR;if(t===zu)return jt.LINEAR;if(t===Uu)return jt.LINEAR_MIPMAP_NEAREST;if(t===ju)return jt.LINEAR_MIPMAP_LINEAR;if(t===$u)return jt.UNSIGNED_BYTE;if(t===Zu)return jt.UNSIGNED_SHORT_4_4_4_4;if(t===Ku)return jt.UNSIGNED_SHORT_5_5_5_1;if(t===Qu)return jt.UNSIGNED_SHORT_5_6_5;if(t===Vu)return jt.BYTE;if(t===Gu)return jt.SHORT;if(t===Hu)return jt.UNSIGNED_SHORT;if(t===Wu)return jt.INT;if(t===Xu)return jt.UNSIGNED_INT;if(t===qu)return jt.FLOAT;if(e=Qt.get(\"OES_texture_half_float\"),null!==e&&t===Yu)return e.HALF_FLOAT_OES;if(t===tl)return jt.ALPHA;if(t===el)return jt.RGB;if(t===il)return jt.RGBA;if(t===rl)return jt.LUMINANCE;if(t===nl)return jt.LUMINANCE_ALPHA;if(t===ol)return jt.DEPTH_COMPONENT;if(t===al)return jt.DEPTH_STENCIL;if(t===Xc)return jt.FUNC_ADD;if(t===qc)return jt.FUNC_SUBTRACT;if(t===Yc)return jt.FUNC_REVERSE_SUBTRACT;if(t===Qc)return jt.ZERO;if(t===Jc)return jt.ONE;if(t===tu)return jt.SRC_COLOR;if(t===eu)return jt.ONE_MINUS_SRC_COLOR;if(t===iu)return jt.SRC_ALPHA;if(t===ru)return jt.ONE_MINUS_SRC_ALPHA;if(t===nu)return jt.DST_ALPHA;if(t===ou)return jt.ONE_MINUS_DST_ALPHA;if(t===au)return jt.DST_COLOR;if(t===su)return jt.ONE_MINUS_DST_COLOR;if(t===cu)return jt.SRC_ALPHA_SATURATE;if(e=Qt.get(\"WEBGL_compressed_texture_s3tc\"),null!==e){if(t===sl)return e.COMPRESSED_RGB_S3TC_DXT1_EXT;if(t===cl)return e.COMPRESSED_RGBA_S3TC_DXT1_EXT;if(t===ul)return e.COMPRESSED_RGBA_S3TC_DXT3_EXT;if(t===ll)return e.COMPRESSED_RGBA_S3TC_DXT5_EXT}if(e=Qt.get(\"WEBGL_compressed_texture_pvrtc\"),null!==e){if(t===hl)return e.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;if(t===dl)return e.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;if(t===fl)return e.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;if(t===pl)return e.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG}if(e=Qt.get(\"WEBGL_compressed_texture_etc1\"),null!==e&&t===ml)return e.COMPRESSED_RGB_ETC1_WEBGL;if(e=Qt.get(\"EXT_blend_minmax\"),null!==e){if(t===Zc)return e.MIN_EXT;if(t===Kc)return e.MAX_EXT}return e=Qt.get(\"WEBGL_depth_texture\"),null!==e&&t===Ju?e.UNSIGNED_INT_24_8_WEBGL:0}console.log(\"THREE.WebGLRenderer\",Pc),t=t||{};var U=void 0!==t.canvas?t.canvas:document.createElementNS(\"http://www.w3.org/1999/xhtml\",\"canvas\"),j=void 0!==t.context?t.context:null,$=void 0!==t.alpha&&t.alpha,V=void 0===t.depth||t.depth,G=void 0===t.stencil||t.stencil,H=void 0!==t.antialias&&t.antialias,W=void 0===t.premultipliedAlpha||t.premultipliedAlpha,X=void 0!==t.preserveDrawingBuffer&&t.preserveDrawingBuffer,q=[],Y=[],Z=-1,K=[],Q=-1,J=new Float32Array(8),nt=[],ot=[];this.domElement=U,this.context=null,this.autoClear=!0,this.autoClearColor=!0,this.autoClearDepth=!0,this.autoClearStencil=!0,this.sortObjects=!0,this.clippingPlanes=[],this.localClippingEnabled=!1,this.gammaFactor=2,this.gammaInput=!1,this.gammaOutput=!1,this.physicallyCorrectLights=!1,this.toneMapping=_u,this.toneMappingExposure=1,this.toneMappingWhitePoint=1,this.maxMorphTargets=8,this.maxMorphNormals=4;var at=this,ut=null,lt=null,dt=null,ft=-1,gt=\"\",vt=null,bt=new it,xt=null,_t=new it,wt=0,St=new ct(0),At=0,Mt=U.width,Pt=U.height,Ct=1,Tt=new it(0,0,Mt,Pt),Et=!1,It=new it(0,0,Mt,Pt),Rt=new pt,Ot=new Yt,Dt=!1,Nt=!1,kt=new ht,Ft=new p,Bt=new g,zt={hash:\"\",ambient:[0,0,0],directional:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotShadowMap:[],spotShadowMatrix:[],point:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[],shadows:[]},Ut={calls:0,vertices:0,faces:0,points:0};this.info={render:Ut,memory:{geometries:0,textures:0},programs:null};var jt;try{var Vt={alpha:$,depth:V,stencil:G,antialias:H,premultipliedAlpha:W,preserveDrawingBuffer:X};if(jt=j||U.getContext(\"webgl\",Vt)||U.getContext(\"experimental-webgl\",Vt),null===jt)throw null!==U.getContext(\"webgl\")?\"Error creating WebGL context with your selected attributes.\":\"Error creating WebGL context.\";void 0===jt.getShaderPrecisionFormat&&(jt.getShaderPrecisionFormat=function(){return{rangeMin:1,rangeMax:1,precision:1}}),U.addEventListener(\"webglcontextlost\",o,!1)}catch(t){console.error(\"THREE.WebGLRenderer: \"+t)}var Qt=new Xt(jt);Qt.get(\"WEBGL_depth_texture\"),Qt.get(\"OES_texture_float\"),Qt.get(\"OES_texture_float_linear\"),Qt.get(\"OES_texture_half_float\"),Qt.get(\"OES_texture_half_float_linear\"),Qt.get(\"OES_standard_derivatives\"),Qt.get(\"ANGLE_instanced_arrays\"),Qt.get(\"OES_element_index_uint\")&&($t.MaxIndex=4294967296);var Jt=new Wt(jt,Qt,t),te=new rt(jt,Qt,z),ne=new yt,se=new et(jt,Qt,te,ne,Jt,z,this.info),ce=new Gt(jt,ne,this.info),ue=new Lt(this,Jt),le=new Ht;this.info.programs=ue.programs;var he=new Zt(jt,Qt,Ut),de=new qt(jt,Qt,Ut),fe=new ae(-1,1,1,-1,0,1),pe=new oe,me=new ie(new re(2,2),new ee({depthTest:!1,depthWrite:!1,fog:!1})),ge=Wd.cube,ve=new ie(new Kt(5,5,5),new st({uniforms:ge.uniforms,vertexShader:ge.vertexShader,fragmentShader:ge.fragmentShader,side:Dc,depthTest:!1,depthWrite:!1,fog:!1}));r(),this.context=jt,this.capabilities=Jt,this.extensions=Qt,this.properties=ne,this.state=te;var ye=new mt(this,zt,ce,Jt);this.shadowMap=ye;var be=new v(this,nt),xe=new b(this,ot);this.getContext=function(){return jt},this.getContextAttributes=function(){return jt.getContextAttributes()},this.forceContextLoss=function(){Qt.get(\"WEBGL_lose_context\").loseContext()},this.getMaxAnisotropy=function(){return Jt.getMaxAnisotropy()},this.getPrecision=function(){return Jt.precision},this.getPixelRatio=function(){return Ct},this.setPixelRatio=function(t){void 0!==t&&(Ct=t,this.setSize(It.z,It.w,!1))},this.getSize=function(){return{width:Mt,height:Pt}},this.setSize=function(t,e,i){Mt=t,Pt=e,U.width=t*Ct,U.height=e*Ct,i!==!1&&(U.style.width=t+\"px\",U.style.height=e+\"px\"),this.setViewport(0,0,t,e)},this.setViewport=function(t,e,i,r){te.viewport(It.set(t,e,i,r))},this.setScissor=function(t,e,i,r){te.scissor(Tt.set(t,e,i,r))},this.setScissorTest=function(t){te.setScissorTest(Et=t)},this.getClearColor=function(){return St},this.setClearColor=function(t,e){St.set(t),At=void 0!==e?e:1,i(St.r,St.g,St.b,At)},this.getClearAlpha=function(){return At},this.setClearAlpha=function(t){At=t,i(St.r,St.g,St.b,At)},this.clear=function(t,e,i){var r=0;(void 0===t||t)&&(r|=jt.COLOR_BUFFER_BIT),(void 0===e||e)&&(r|=jt.DEPTH_BUFFER_BIT),(void 0===i||i)&&(r|=jt.STENCIL_BUFFER_BIT),jt.clear(r)},this.clearColor=function(){this.clear(!0,!1,!1)},this.clearDepth=function(){this.clear(!1,!0,!1)},this.clearStencil=function(){this.clear(!1,!1,!0)},this.clearTarget=function(t,e,i,r){this.setRenderTarget(t),this.clear(e,i,r)},this.resetGLState=n,this.dispose=function(){K=[],Q=-1,Y=[],Z=-1,U.removeEventListener(\"webglcontextlost\",o,!1)},this.renderBufferImmediate=function(t,e,i){te.initAttributes();var r=ne.get(t);t.hasPositions&&!r.position&&(r.position=jt.createBuffer()),t.hasNormals&&!r.normal&&(r.normal=jt.createBuffer()),t.hasUvs&&!r.uv&&(r.uv=jt.createBuffer()),t.hasColors&&!r.color&&(r.color=jt.createBuffer());var n=e.getAttributes();if(t.hasPositions&&(jt.bindBuffer(jt.ARRAY_BUFFER,r.position),jt.bufferData(jt.ARRAY_BUFFER,t.positionArray,jt.DYNAMIC_DRAW),te.enableAttribute(n.position),jt.vertexAttribPointer(n.position,3,jt.FLOAT,!1,0,0)),t.hasNormals){if(jt.bindBuffer(jt.ARRAY_BUFFER,r.normal),!i.isMeshPhongMaterial&&!i.isMeshStandardMaterial&&i.shading===kc)for(var o=0,a=3*t.count;o8&&(f.length=8);for(var v=r.morphAttributes,p=0,m=f.length;p0&&x.renderInstances(r,E,L):x.render(E,L)},this.render=function(t,e,r,n){if((e&&e.isCamera)===!1)return void console.error(\"THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.\");var o=t.fog;gt=\"\",ft=-1,vt=null,t.autoUpdate===!0&&t.updateMatrixWorld(),null===e.parent&&e.updateMatrixWorld(),e.matrixWorldInverse.getInverse(e.matrixWorld),Ft.multiplyMatrices(e.projectionMatrix,e.matrixWorldInverse),Rt.setFromMatrix(Ft),q.length=0,Z=-1,Q=-1,nt.length=0,ot.length=0,Nt=this.localClippingEnabled,Dt=Ot.init(this.clippingPlanes,Nt,e),_(t,e),Y.length=Z+1,K.length=Q+1,at.sortObjects===!0&&(Y.sort(h),K.sort(d)),Dt&&Ot.beginShadows(),k(q),ye.render(t,e),F(q,e),Dt&&Ot.endShadows(),Ut.calls=0,Ut.vertices=0,Ut.faces=0,Ut.points=0,void 0===r&&(r=null),this.setRenderTarget(r);var a=t.background;if(null===a?i(St.r,St.g,St.b,At):a&&a.isColor&&(i(a.r,a.g,a.b,1),n=!0),(this.autoClear||n)&&this.clear(this.autoClearColor,this.autoClearDepth,this.autoClearStencil),a&&a.isCubeTexture?(pe.projectionMatrix.copy(e.projectionMatrix),pe.matrixWorld.extractRotation(e.matrixWorld),pe.matrixWorldInverse.getInverse(pe.matrixWorld),ve.material.uniforms.tCube.value=a,ve.modelViewMatrix.multiplyMatrices(pe.matrixWorldInverse,ve.matrixWorld),ce.update(ve),at.renderBufferDirect(pe,null,ve.geometry,ve.material,ve,null)):a&&a.isTexture&&(me.material.map=a,ce.update(me),at.renderBufferDirect(fe,null,me.geometry,me.material,me,null)),t.overrideMaterial){var s=t.overrideMaterial;w(Y,e,o,s),w(K,e,o,s)}else te.setBlending(jc),w(Y,e,o),w(K,e,o);be.render(t,e),xe.render(t,e,_t),r&&se.updateRenderTargetMipmap(r),te.setDepthTest(!0),te.setDepthWrite(!0),te.setColorWrite(!0)},this.setFaceCulling=function(t,e){te.setCullFace(t),te.setFlipSided(e===Ic)},this.allocTextureUnit=B,this.setTexture2D=function(){var t=!1;return function(e,i){e&&e.isWebGLRenderTarget&&(t||(console.warn(\"THREE.WebGLRenderer.setTexture2D: don't use render targets as textures. Use their .texture property instead.\"),t=!0),e=e.texture),se.setTexture2D(e,i)}}(),this.setTexture=function(){var t=!1;return function(e,i){t||(console.warn(\"THREE.WebGLRenderer: .setTexture is deprecated, use setTexture2D instead.\"),t=!0),se.setTexture2D(e,i)}}(),this.setTextureCube=function(){\nvar t=!1;return function(e,i){e&&e.isWebGLRenderTargetCube&&(t||(console.warn(\"THREE.WebGLRenderer.setTextureCube: don't use cube render targets as textures. Use their .texture property instead.\"),t=!0),e=e.texture),e&&e.isCubeTexture||Array.isArray(e.image)&&6===e.image.length?se.setTextureCube(e,i):se.setTextureCubeDynamic(e,i)}}(),this.getCurrentRenderTarget=function(){return lt},this.setRenderTarget=function(t){lt=t,t&&void 0===ne.get(t).__webglFramebuffer&&se.setupRenderTarget(t);var e,i=t&&t.isWebGLRenderTargetCube;if(t){var r=ne.get(t);e=i?r.__webglFramebuffer[t.activeCubeFace]:r.__webglFramebuffer,bt.copy(t.scissor),xt=t.scissorTest,_t.copy(t.viewport)}else e=null,bt.copy(Tt).multiplyScalar(Ct),xt=Et,_t.copy(It).multiplyScalar(Ct);if(dt!==e&&(jt.bindFramebuffer(jt.FRAMEBUFFER,e),dt=e),te.scissor(bt),te.setScissorTest(xt),te.viewport(_t),i){var n=ne.get(t.texture);jt.framebufferTexture2D(jt.FRAMEBUFFER,jt.COLOR_ATTACHMENT0,jt.TEXTURE_CUBE_MAP_POSITIVE_X+t.activeCubeFace,n.__webglTexture,t.activeMipMapLevel)}},this.readRenderTargetPixels=function(t,e,i,r,n,o){if((t&&t.isWebGLRenderTarget)===!1)return void console.error(\"THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.\");var a=ne.get(t).__webglFramebuffer;if(a){var s=!1;a!==dt&&(jt.bindFramebuffer(jt.FRAMEBUFFER,a),s=!0);try{var c=t.texture,u=c.format,l=c.type;if(u!==il&&z(u)!==jt.getParameter(jt.IMPLEMENTATION_COLOR_READ_FORMAT))return void console.error(\"THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.\");if(!(l===$u||z(l)===jt.getParameter(jt.IMPLEMENTATION_COLOR_READ_TYPE)||l===qu&&(Qt.get(\"OES_texture_float\")||Qt.get(\"WEBGL_color_buffer_float\"))||l===Yu&&Qt.get(\"EXT_color_buffer_half_float\")))return void console.error(\"THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.\");jt.checkFramebufferStatus(jt.FRAMEBUFFER)===jt.FRAMEBUFFER_COMPLETE?e>=0&&e<=t.width-r&&i>=0&&i<=t.height-n&&jt.readPixels(e,i,r,n,z(u),z(l),o):console.error(\"THREE.WebGLRenderer.readRenderTargetPixels: readPixels from renderTarget failed. Framebuffer not complete.\")}finally{s&&jt.bindFramebuffer(jt.FRAMEBUFFER,dt)}}}}function ce(t,e){this.name=\"\",this.color=new ct(t),this.density=void 0!==e?e:25e-5}function ue(t,e,i){this.name=\"\",this.color=new ct(t),this.near=void 0!==e?e:1,this.far=void 0!==i?i:1e3}function le(){Ft.call(this),this.type=\"Scene\",this.background=null,this.fog=null,this.overrideMaterial=null,this.autoUpdate=!0}function he(t,e,i,r,n){Ft.call(this),this.lensFlares=[],this.positionScreen=new g,this.customUpdateCallback=void 0,void 0!==t&&this.add(t,e,i,r,n)}function de(t){ot.call(this),this.type=\"SpriteMaterial\",this.color=new ct(16777215),this.map=null,this.rotation=0,this.fog=!1,this.lights=!1,this.setValues(t)}function fe(t){Ft.call(this),this.type=\"Sprite\",this.material=void 0!==t?t:new de}function pe(){Ft.call(this),this.type=\"LOD\",Object.defineProperties(this,{levels:{enumerable:!0,value:[]}})}function me(t,e,i,r,n,o,a,s,c,u,l,h){d.call(this,null,o,a,s,c,u,r,n,l,h),this.image={data:t,width:e,height:i},this.magFilter=void 0!==c?c:ku,this.minFilter=void 0!==u?u:ku,this.flipY=!1,this.generateMipmaps=!1}function ge(t,e,i){var r=this;if(this.useVertexTexture=void 0===i||i,this.identityMatrix=new p,t=t||[],this.bones=t.slice(0),this.useVertexTexture){var n=Math.sqrt(4*this.bones.length);n=Fl.nextPowerOfTwo(Math.ceil(n)),n=Math.max(n,4),this.boneTextureWidth=n,this.boneTextureHeight=n,this.boneMatrices=new Float32Array(this.boneTextureWidth*this.boneTextureHeight*4),this.boneTexture=new me(this.boneMatrices,this.boneTextureWidth,this.boneTextureHeight,il,qu)}else this.boneMatrices=new Float32Array(16*this.bones.length);if(void 0===e)this.calculateInverses();else if(this.bones.length===e.length)this.boneInverses=e.slice(0);else{console.warn(\"THREE.Skeleton bonInverses is the wrong length.\"),this.boneInverses=[];for(var o=0,a=this.bones.length;o0&&p++,e>0&&p++);var m=c(),v=u(),y=new Rt(new(v>65535?Uint32Array:Uint16Array)(v),1),b=new Rt(new Float32Array(3*m),3),x=new Rt(new Float32Array(3*m),3),_=new Rt(new Float32Array(2*m),2),w=0,S=0,A=[],M=i/2,P=0;l(),o===!1&&(t>0&&d(!0),e>0&&d(!1)),this.setIndex(y),this.addAttribute(\"position\",b),this.addAttribute(\"normal\",x),this.addAttribute(\"uv\",_)}function zi(t,e,i,r){function n(t){var e=t.normalize().clone();e.index=d.vertices.push(e)-1;var i=s(t)/2/Math.PI+.5,r=c(t)/Math.PI+.5;return e.uv=new h(i,1-r),e}function o(t,e,i){var r=new Dt(t.index,e.index,i.index,[t.clone(),e.clone(),i.clone()]);d.faces.push(r),w.copy(t).add(e).add(i).divideScalar(3);var n=s(w);d.faceVertexUvs[0].push([u(t.uv,t,n),u(e.uv,e,n),u(i.uv,i,n)])}function a(t,e){for(var i=Math.pow(2,e),r=n(d.vertices[t.a]),a=n(d.vertices[t.b]),s=n(d.vertices[t.c]),c=[],u=0;u<=i;u++){c[u]=[];for(var l=n(r.clone().lerp(s,u/i)),h=n(a.clone().lerp(s,u/i)),f=i-u,p=0;p<=f;p++)0===p&&u===i?c[u][p]=l:c[u][p]=n(l.clone().lerp(h,p/f))}for(var u=0;u.9&&T<.1&&(A<.2&&(S[0].x+=1),M<.2&&(S[1].x+=1),P<.2&&(S[2].x+=1))}for(var f=0,p=this.vertices.length;f1?c.pop().toLowerCase():\"\",l=e.match(/^(.+):\\/\\/(.+)$/);l&&(r=l[1].toLowerCase(),e=l[2]);var h=e.substring(0,e.lastIndexOf(\"/\")+1);if(n.includes(u)){i=u;var d=e.length-u.length-1;u=e.substr(0,d).split(\".\").pop().toLowerCase();var f=s.length-u.length-1;s=s.substr(0,f)}else i=!1;return{path:e,name:a,ext:u,base:s,dir:h,compressed:i,protocol:r,src:t}}function Ki(t,e,i){var r,n,o,a=null,s=0;i||(i={});var c=function(){s=i.leading===!1?0:Date.now(),a=null,o=t.apply(r,n),a||(r=n=null)};return function(){var u=Date.now();s||i.leading!==!1||(s=u);var l=e-(u-s);return r=this,n=arguments,l<=0||l>e?(a&&(clearTimeout(a),a=null),s=u,o=t.apply(r,n),a||(r=n=null)):a||i.trailing===!1||(a=setTimeout(c,l)),o}}function Qi(t,e){return te?1:0}function Ji(t,e,i){void 0===i&&(i=Qi);for(var r=0,n=t.length-1;r<=n;){var o=r+n>>1,a=i(e,t[o]);if(a>0)r=o+1;else{if(!(a<0))return o;n=o-1}}return-r-1}function tr(t,e){var i=t.length-1;if(t[i]>1;t[n]>=e?i=n-1:r=n+1}return i+1}function er(t,e){if(t[0]>e)return-1;for(var i=0,r=t.length-1;i<=r;){var n=i+r>>1;t[n]>e?r=n-1:i=n+1}return i-1}function ir(t,e,i){var r=tr(t,e),n=er(t,i);return r===-1||n===-1||r>n?0:n-r+1}function rr(t){return t.sort().filter(function(t,e,i){return 0===e||t!==i[e-1]})}function nr(t){var e=28672;if(t.length>e){for(var i=[],r=0;r>=4,Np[i]=Dp[19===i?3&t|8:t]);return Np.join(\"\")}function yr(t){return t-=t>>1&1431655765,t=(858993459&t)+(t>>2&858993459),16843009*(t+(t>>4)&252645135)>>24}function br(t,e,i){return(t-e)/(i-e)}function xr(t,e,i){return Math.max(e,Math.min(i,t))}function _r(t){return xr(t,0,1)}function wr(t,e,i){return t+(e-t)*i}function Sr(t,e,i,r,n,o){var a=(i-t)*o,s=(r-e)*o,c=n*n,u=n*c;return(2*e-2*i+a+s)*u+(-3*e+3*i-2*a-s)*c+a*n+e}function Ar(t,e,i){return i=_r(br(i,t,e)),i*i*(3-2*i)}function Mr(t,e,i,r,n){this._listener=e,this._isOnce=i,this.context=r,this._signal=t,this._priority=n||0}function Pr(t,e){if(\"function\"!=typeof t)throw new Error(\"listener is a required param of {fn}() and should be a Function.\".replace(\"{fn}\",e))}function Cr(){this._bindings=[],this._prevParams=null;var t=this;this.dispatch=function(){Cr.prototype.dispatch.apply(t,arguments)}}function Tr(t){this.signals={stringChanged:new Cr},this.setString(t)}function Er(t){Wp=t}function Ir(t){Xp=t}function Lr(e){t.Debug=e}function Rr(t,e){var i=e||{};this.compressed=Hi(i.compressed,!1),this.binary=Hi(i.binary,!1),this.json=Hi(i.json,!1),this.xml=Hi(i.xml,!1),this.src=t,this.chunkSize=10485760,this.newline=\"\\n\",this.__pointer=0,this.__partialLine=\"\",this.__srcName&&(this[this.__srcName]=t)}function Or(t,e){Rr.call(this,t,e)}function Dr(t,e){Rr.call(this,t,e)}function Nr(t){var e=Zi(t),i=Qp.get(e.protocol);return i&&(e=Zi(i.getUrl(e.src)),!e.ext&&i.getExt&&(e.ext=i.getExt(t))),e}function kr(t,e){var i,r=Object.assign(Nr(t),e);if(tm.names.includes(r.ext)?i=cm:\"ngl\"===r.ext?i=hm:\"plugin\"===r.ext&&(i=dm),i){var n=new i(r.src,r);return n.load()}return Promise.reject(\"autoLoad: ext '\"+r.ext+\"' unknown\")}function Fr(){var t=arguments[0],e=Fr.cache;return e[t]&&e.hasOwnProperty(t)||(e[t]=Fr.parse(t)),Fr.format.call(null,e[t],arguments)}function Br(t){return\"number\"==typeof t?\"number\":\"string\"==typeof t?\"string\":Object.prototype.toString.call(t).slice(8,-1).toLowerCase()}function zr(t,e){return e>=0&&e<=7&&pm[t]?pm[t][e]:Array(e+1).join(t)}function Ur(t,e){function i(){f=[],n(),o(),a()}function r(t,e){return void 0!==t?t:e}function n(){f.push(Fr(\"TITEL %-74s\",t.name))}function o(){d.forEach(function(t){f.push(Fr(\"REMARK %-73s\",t))}),t.trajectory&&(f.push(Fr(\"REMARK %-73s\",\"Trajectory '\"+t.trajectory.name+\"'\")),f.push(Fr(\"REMARK %-73s\",\"Frame \"+t.trajectory.frame)))}function a(){var e=1,i=1;t.eachModel(function(t){f.push(Fr(\"MODEL %-74d\",i++)),t.eachAtom(function(t){var i=t.hetero?m:p,n=h?e:t.serial,o=t.atomname;1===o.length&&(o=\" \"+o),f.push(Fr(i,n,o,t.resname,r(t.chainname,\" \"),t.resno,t.x,t.y,t.z,r(t.occurence,1),r(t.bfactor,0),r(t.segid,\"\"),r(t.element,\"\"))),e+=1}),f.push(Fr(\"%-80s\",\"ENDMDL\")),i+=1}),f.push(Fr(\"%-80s\",\"END\"))}function s(){return i(),f.join(\"\\n\")}function c(){return new Blob([s()],{type:\"text/plain\"})}function u(t,e){t=t||\"structure\",e=e||\"pdb\";var i=t+\".\"+e,r=c();Yi(r,i)}var l=Object.assign({},e),h=void 0===l.renumberSerial||l.renumberSerial,d=l.remarks||[];Array.isArray(d)||(d=[d]);var f,p=\"ATOM %5d %-4s %3s %1s%4d %8.3f%8.3f%8.3f%6.2f%6.2f %4s%2s\",m=\"HETATM%5d %-4s %3s %1s%4d %8.3f%8.3f%8.3f%6.2f%6.2f %4s%2s\";this.getString=s,this.getBlob=c,this.download=u}function jr(){this.signals={updated:new Cr},this.begin(),this.maxDuration=-(1/0),this.minDuration=1/0,this.avgDuration=14,this.lastDuration=1/0,this.prevFpsTime=0,this.lastFps=1/0,this.lastFrames=1,this.frames=0,this.count=0}function $r(t){if(void 0===t)return\"\";var e=[];for(var i in t){var r=t[i];r!==!1&&e.push(\"#define \"+i+\" \"+r)}return e.join(\"\\n\")+\"\\n\"}function Vr(t,e){e=e||{};var i=t+\"|\";for(var r in e)i+=r+\":\"+e[r];if(!ym[i]){var n=$r(e),o=em.get(\"shader/\"+t);if(!o)throw\"empty shader, '\"+t+\"'\";o=o.replace(vm,function(t,e){var i=\"shader/chunk/\"+e+\".glsl\",r=em.get(i)||Vd[e];return r?r:\"\"}),ym[i]=n+o}return ym[i]}function Gr(t,e,i,r){function n(e){var r=e%u,n=Math.floor(e/u),o=r*m,a=n*g;i.camera.setViewOffset(m*u,g*u,o,a,m,g),i.render(),l?v.drawImage(t.domElement,Math.floor(o/2),Math.floor(a/2),Math.ceil(m/2),Math.ceil(g/2)):v.drawImage(t.domElement,Math.floor(o),Math.floor(a),Math.ceil(m),Math.ceil(g)),\"function\"==typeof h&&h(e+1,f,!1)}function o(){i.setSampling(y),i.camera.view=null,\"function\"==typeof d&&d(f+1,f,!1)}function a(){for(var t=0;t<=f;++t)t===f?o():n(t)}function s(){function t(){e===f?o():n(e),e+=1}for(var e=0,i=0;i<=f;++i)setTimeout(t,0,i)}var c=r||{},u=void 0!==c.factor?c.factor:2,l=void 0!==c.antialias&&c.antialias,h=c.onProgress,d=c.onFinish;l&&(u*=2);var f=u*u,p=document.createElement(\"canvas\"),m=i.width,g=i.height;l?(p.width=m*u/2,p.height=g*u/2):(p.width=m*u,p.height=g*u);var v=p.getContext(\"2d\"),y=i.sampleLevel;i.setSampling(-1),this.render=a,this.renderAsync=s,this.canvas=p}function Hr(t,e,i,r,n){i=i||1,r=r||0;var o,a,s,c=n?n.length:t.length/i,u=0,l=0;if(n)for(a=0;ae?1:t=u&&e(t[o],h)>0;)t[o+1]=t[o],--o;t[o+1]=h}if(c===-1)break;l=s[c--],u=s[c--]}else{var f=u+l>>1;for(o=u+1,a=l,n(f,o),e(t[u],t[l])>0&&n(u,l),e(t[o],t[l])>0&&n(o,l),e(t[u],t[o])>0&&n(u,o),h=t[o];;){do o++;while(e(t[o],h)<0);do a--;while(e(t[a],h)>0);if(a=a-u?(s[++c]=o,s[++c]=l,l=a-1):(s[++c]=u,s[++c]=a-1,u=o)}return t}function tn(t,e,i,r,n){var o,a,s,c,u=t.height,l=t.width,h=t.getContext(\"2d\"),d=h.getImageData(0,0,l,u).data;for(s=!1,a=0;a=0;a--){for(o=l-1;o>=0;o--)if(c=4*(a*l+o),d[c]!==e||d[c+1]!==i||d[c+2]!==r||d[c+3]!==n){s=!0;break}if(s)break}var m=a;for(s=!1,o=l-1;o>=0;o--){for(a=u-1;a>=0;a--)if(c=4*(a*l+o),d[c]!==e||d[c+1]!==i||d[c+2]!==r||d[c+3]!==n){s=!0;break}if(s)break}var g=o,v=document.createElement(\"canvas\");v.width=g-p,v.height=m-f;var y=v.getContext(\"2d\");return y.drawImage(t,p,f,v.width,v.height,0,0,v.width,v.height),v}function en(t,e){function i(e){var i=s;c&&(i*=2),e&&(i=1/i),t.scene.traverse(function(t){var e=t.material;e&&e.linewidth&&(e.linewidth*=i),e&&e.uniforms&&e.uniforms.size&&void 0===e.uniforms.size.__seen&&(e.uniforms.size.value*=i,e.uniforms.size.__seen=!0)}),t.scene.traverse(function(t){var e=t.material;e&&e.uniforms&&e.uniforms.size&&delete e.uniforms.size.__seen})}function r(t){if(a){var e=f,i=0|(u?0:255*e.r),r=0|(u?0:255*e.g),n=0|(u?0:255*e.b),o=0|(u?0:255);return tn(t,i,r,n,o)}return t}function n(t,e,i){\"function\"==typeof o.onProgress&&o.onProgress(t,e,i)}var o=e||{},a=void 0!==o.trim&&o.trim,s=void 0!==o.factor?o.factor:1,c=void 0!==o.antialias&&o.antialias,u=void 0!==o.transparent&&o.transparent,l=t.renderer,h=t.camera,d=l.getClearAlpha(),f=l.getClearColor();return new Promise(function(e){function o(o,s){var c=r(a.canvas);c.toBlob(function(r){l.setClearAlpha(d),i(!0),t.requestRender(),n(s,s,!0),e(r)},\"image/png\")}var a=new Gr(l,h,t,{factor:s,antialias:c,onProgress:n,onFinish:o});l.setClearAlpha(u?0:1),i(),a.renderAsync()})}function rn(t,e){var i;t.traverseVisible(function(t){if(t instanceof Se&&t.sortParticles){var r=t.geometry.attributes,n=r.position.count;if(0!==n){Cm.multiplyMatrices(e.matrixWorldInverse,t.matrixWorld),Tm.multiplyMatrices(e.projectionMatrix,Cm);var o,a,s,c;for(t.userData.sortData?(o=t.userData.sortData,s=o.__zArray,a=o.__sortArray,c=o.__cmpFn):(s=new Float32Array(n),a=new Uint32Array(n),c=function(t,e){var i=s[t],r=s[e];return i>r?1:i500&&!W&&H<3&&H!==-1){var i=H;H=3,G=!0,k(),W=!0,H=i,t.Debug&&qp.log(\"rendered still frame\")}requestAnimationFrame(M)}function P(t,e){t*=window.devicePixelRatio,e*=window.devicePixelRatio;var i,r,n,o=Wp?Lm:Rm;return k(!0),ft.readRenderTargetPixels(mt,t,e,1,1,o),i=Wp?Math.round(255*o[0])<<16&16711680|Math.round(255*o[1])<<8&65280|255&Math.round(255*o[2]):o[0]<<16|o[1]<<8|o[2],r=ut.getObjectById(Math.round(o[3])),r&&r.userData.instance&&(n=r.userData.instance),{gid:i,instance:n}}function C(){G||(performance.now()-Z.startTime>22&&(Z.begin(),W=!1),G=!0,requestAnimationFrame(function(){k(),Z.update()}))}function T(){var t=mr(K.fov),e=2*Math.tan(t/2)*-J.position.z;Q.zoom=j/e}function E(){var t=Y;X=Pt.copy(J.position).length(),X||(J.position.set(0,0,t.cameraZ),X=Math.abs(t.cameraZ)),q=Math.max(10,.5*Mt),q+=St.center(Pt).length(),(q===1/0||q===-(1/0)||isNaN(q))&&(q=50);var e=(50-t.clipNear)/50,i=-(50-t.clipFar)/50;J.near=X-q*e,J.far=X+q*i;var r=(50-t.fogNear)/50,n=-(50-t.fogFar)/50,o=tt.fog;o.color.set(t.fogColor),o.near=X-q*r,o.far=X+q*n,\"PerspectiveCamera\"===J.type?(J.near=Math.max(.1,t.clipDist,J.near),J.far=Math.max(1,J.far),o.near=Math.max(.1,o.near),o.far=Math.max(1,o.far)):\"OrthographicCamera\"===J.type&&0===t.clipNear&&t.clipDist>0&&X+J.zoom>2*-t.clipDist&&(J.near+=J.zoom+t.clipDist)}function I(){J.updateMatrix(),J.updateMatrixWorld(!0),J.matrixWorldInverse.getInverse(J.matrixWorld),J.updateProjectionMatrix(),nn(tt,J,ft,X,q),rn(tt,J)}function L(t,e,i,r){at.visible=t,ut.visible=e,ht.visible=i,dt.visible=r}function R(){Pt.copy(J.position).setLength(100*Mt),et.position.copy(J.position).add(Pt),et.color.set(Y.lightColor),et.intensity=Y.lightIntensity,it.color.set(Y.ambientColor),it.intensity=Y.ambientIntensity}function O(){ft.clearTarget(mt),L(!1,!0,!1,!1),ft.render(tt,J,mt),A(),ft.setRenderTarget(null)}function D(e){e?ft.clearTarget(e):ft.clear(),L(!1,!1,!0,!1),ft.render(tt,J,e),e?ft.clearTarget(e,!1,!0,!1):ft.clearDepth(),A(),L(!0,!1,!1,t.Debug),ft.render(tt,J,e),A()}function N(){var t=Am[Math.max(0,Math.min(H,5))],e=1/t.length,i=1/32;yt.tForeground.value=gt.texture;for(var r=gt.width,n=gt.height,o=0;o0?N():D(),V=!1,void(G=!1))}function F(){qp.log(\"scene cleared\"),tt.remove(rt),o(),ft.clear()}var B,z={ticked:new Cr};B=\"string\"==typeof e?document.getElementById(e):e instanceof Element?e:document.createElement(\"div\");var U,j;if(B===document.body)U=window.innerWidth||1,j=window.innerHeight||1;else{var $=B.getBoundingClientRect();U=$.width||1,j=$.height||1}var V,G,H,W,X,q,Y;i();var Z;c();var K,Q,J;r();var tt,et,it,rt,ot,at,ut,ht,dt;o();var ft,pt,mt,gt,vt,yt,bt,xt,_t;if(n()===!1)return this.container=B,void qp.error(\"Viewer: could not initialize renderer\");var wt,St=new lt,At=new g,Mt=0;a(),y(),v();var Pt=new g,Ct={memory:{programs:0,geometries:0,textures:0},render:{calls:0,vertices:0,faces:0,points:0}};this.container=B,this.stats=Z,this.signals=z,this.rotationGroup=rt,this.translationGroup=ot,this.add=u,this.remove=h,this.clear=F,this.getImage=f,this.makeImage=p,this.setLight=m,this.setFog=v,this.setBackground=y,this.setSampling=b,this.setCamera=x,this.setClip=_,this.setSize=w,this.handleResize=S,this.pick=P,this.requestRender=C,this.render=k,this.animate=M,this.updateZoom=T,this.updateHelper=s,this.renderer=ft,this.scene=tt,this.perspectiveCamera=K,this.boundingBox=St,Object.defineProperties(this,{camera:{get:function(){return J}},width:{get:function(){return U}},height:{get:function(){return j}},sampleLevel:{get:function(){return H}}})}function an(t,e){this.count=0,this.words=new Uint32Array(8),this.resize(t),e&&this.flip_all()}function sn(t,e){this.type=t,this.scale=e||1,this.max=10}function cn(t){var e,i=t.length,r=t.length/3,n=0,o=0,a=0;for(e=0;en&&(n=u),l>o&&(o=l),h>a&&(a=h)}return[pn([e,i,r]),pn([n,o,a])]}function hn(t,e){for(var i=0,r=e.length;ie?(e/=t,t*Math.sqrt(1+e*e)):e>0?(t/=e,e*Math.sqrt(1+t*t)):0}function Bn(t,e,i,r,n,o,a,s){for(var c=2*Qg,u=Jg,l=0,h=0,d=0,f=0,p=Math.max(o,30),m=0,g=0,v=0,y=0,b=0,x=0,_=0,w=0,S=0,A=0,M=0,P=0,C=0,T=0,E=0,I=0,L=0,R=4660,O=0,D=0,N=0,k=new Float64Array(a<<3);l>16&32767&256)?D:-D,t[l*e+d]=O;for(f=0;f<2;f++)for(h=0;h>o),f=Math.max(0,e-r-c>>o),p=Math.max(0,i-r-u>>o),y=Math.min(l,t+r-s>>o),x=Math.min(h,e+r-c>>o),_=Math.min(d,i+r-u>>o),w=[],S=a;S<=y;++S)for(var A=f;A<=x;++A)for(var P=p;P<=_;++P){var T=(S*h+A)*d+P,I=b[T];if(I>0)for(var L=I-1,R=C[L],O=M[L],D=R+O,N=R;N>o)+1,h=(a.max.y-c>>o)+1,d=(a.max.z-u>>o)+1,f=l*h*d,p=t.count,m=t.x,g=t.y,v=t.z,y=0,b=new Uint32Array(f),x=new Int32Array(p);for(r=0;r>o,w=g[r]-c>>o,S=v[r]-u>>o,A=(_*h+w)*d+S;1===(b[A]+=1)&&(y+=1),x[r]=A}var M=new Uint16Array(y);for(r=0,n=0;r0&&(b[r]=n+1,M[n]=P,n+=1)}var C=new Uint32Array(y);for(r=1;r0){var L=I-1;E[C[L]+T[L]]=r,T[L]+=1}}this.within=i}function Yn(e,i){t.Debug&&qp.time(\"BondHash init\");var r,n=e.count,o=e.atomIndex1,a=e.atomIndex2,s=new Uint8Array(i),c=new Int32Array(i);for(r=0;rs&&(s=e);var a=o-n;if(0===a)return-1;var u=4*h;if(h+=1,1===a)return l[u]=n,l[u+1]=-1,l[u+2]=-1,l[u+3]=r,u;var f=n+Math.floor(a/2);d=e%3;for(var p,m,g,v,y,b=n,x=o-1;x>b;){for(g=b+x>>1,v=t[3*c[g]+d],m=c[g],c[g]=c[x],c[x]=m,y=b,p=b;pn&&s.pop()}var d,f,p=r(u)%3,m=3*c[l[u]],g=[t[m+0],t[m+1],t[m+2]],v=e(i,g),y=l[u+1],b=l[u+2];if(b===-1&&y===-1)return void((s.size()t[3*c[l[e]]+n])throw\"left child is > parent!\";r+=o(a,i+1)}if(s!==-1){if(t[3*c[l[s]]+n]0&&(e=\":\"+rr(t).join(\" OR :\")),new Tr(e)}function uo(e,i){if(i){t.Debug&&qp.time(\"assignSecondaryStructure\");var r=[];e.eachModel(function(t){t.eachChain(function(t){r.push(t.chainname)})});var n=r.slice().sort(),o=[];n.forEach(function(t){o.push(r.indexOf(t))});var a=i.helices;a=a.filter(function(t){return Ji(n,t[0])>=0}),a.sort(function(t,e){var i=t[0],r=e[0],a=t[1],s=e[1];if(i===r)return a===s?0:a=0}),c.sort(function(t,e){var i=t[0],r=e[0];if(i===r)return 0;var a=Ji(n,i),s=Ji(n,r);return o[a]=n;)e=Math.floor(e/n),o+=r[e%n],i+=1;return i>=5&&qp.warn(\"chainname overflow\"),o},l=e.getAtomProxy(),h=e.getAtomProxy(),d=0,f=0,p=0,m=0,g=[];1===s.count?g.push({mIndex:0,chainname:\"A\",rStart:0,rCount:1}):e.eachResidueN(2,function(t,e){var i=!1,r=t.backboneType,n=e.backboneType,o=_g;m=t.index,t.modelIndex!==e.modelIndex?i=!0:t.moleculeType!==e.moleculeType?i=!0:r!==o&&r===n&&(l.index=t.backboneEndAtomIndex,h.index=e.backboneStartAtomIndex,l.connectedTo(h)||(i=!0)),i||e.index!==s.count-1||(i=!0,m=e.index),i&&(g.push({mIndex:f,chainname:u(d),rStart:p,rCount:m-p+1}),d+=1,t.modelIndex!==e.modelIndex&&(d=0,f+=1),e.index===s.count-1&&m!==e.index&&g.push({mIndex:f,chainname:u(d),rStart:s.count-1,rCount:1}),p=e.index,m=e.index)}),a.count=0,g.forEach(function(t){c(t.mIndex,t.chainname,t.rStart,t.rCount)});var v=0;e.eachModel(function(t){o.chainOffset[t.index]=v,o.chainCount[t.index]-=1,v+=o.chainCount[t.index]})}t.Debug&&qp.timeEnd(\"calculateChainnames\")}function ho(e){t.Debug&&qp.time(\"calculateBonds\"),mo(e),go(e),t.Debug&&qp.timeEnd(\"calculateBonds\")}function fo(e){var i=e.structure,r=i.getAtomProxy(),n=i.getAtomProxy(),o=e.atomCount,a=e.atomOffset,s=a+o,c=s-1;if(o>500)return void(t.Debug&&qp.warn(\"more than 500 atoms, skip residue for auto-bonding\",e.qualifiedName()));var u,l,h=[],d=[],f=[];if(o>50){var p=new ao(e,!0),m=e.isCg()?1.2:2.3;for(u=a;u500)return void qp.warn(\"more than 500 atoms, skip residue for auto-bonding\",t.qualifiedName());for(var h=t.getBonds(),d=h.atomIndices1,f=h.atomIndices2,p=h.bondOrders,m=d.length,g=0;g1&&(c.x-=1),s.x<0&&(c.x+=1),s.y>1&&(c.y-=1),s.y<0&&(c.y+=1),s.z>1&&(c.z-=1),s.z<0&&(c.z+=1),t&&c.add(t),u.setPosition(c),u.multiplyMatrices(r.fracToCart,u),u.multiply(r.cartToFrac),e.push(u)}),e}if(e.unitcell){t.Debug&&qp.time(\"buildUnitcellAssembly\");var r=e.unitcell,n=e.center.clone().applyMatrix4(r.cartToFrac),o=so(r.spacegroup),a=new g,s=new g,c=new g;n.x>1&&(a.x-=1),n.x<0&&(a.x+=1),n.y>1&&(a.y-=1),n.y<0&&(a.y+=1),n.z>1&&(a.z-=1),n.z<0&&(a.z+=1);var u,l=new ov(\"UNITCELL\"),h=i();if(e.biomolDict.NCS){u=[new p].concat(e.biomolDict.NCS.partList[0].matrixList);var d=[];h.forEach(function(t){u.forEach(function(e){d.push(t.clone().multiply(e))})}),l.addPart(d)}else l.addPart(h);var f=new g,m=new ov(\"SUPERCELL\"),v=Array.prototype.concat.call(i(),i(f.set(1,1,1)),i(f.set(-1,-1,-1)),i(f.set(1,0,0)),i(f.set(1,1,0)),i(f.set(1,0,1)),i(f.set(0,1,0)),i(f.set(0,1,1)),i(f.set(0,0,1)),i(f.set(-1,0,0)),i(f.set(-1,-1,0)),i(f.set(-1,0,-1)),i(f.set(0,-1,0)),i(f.set(0,-1,-1)),i(f.set(0,0,-1)),i(f.set(1,-1,-1)),i(f.set(1,1,-1)),i(f.set(1,-1,1)),i(f.set(-1,1,1)),i(f.set(-1,-1,1)),i(f.set(-1,1,-1)),i(f.set(0,1,-1)),i(f.set(0,-1,1)),i(f.set(1,0,-1)),i(f.set(-1,0,1)),i(f.set(1,-1,0)),i(f.set(-1,1,0)));if(e.biomolDict.NCS){var y=[];v.forEach(function(t){u.forEach(function(e){y.push(t.clone().multiply(e))})}),m.addPart(y)}else m.addPart(v);e.biomolDict.UNITCELL=l,e.biomolDict.SUPERCELL=m,t.Debug&&qp.timeEnd(\"buildUnitcellAssembly\")}}function yo(t){var e=t.trim().toUpperCase();parseInt(e.charAt(0))&&(e=e.substr(1)),parseInt(e.charAt(0))&&(e=e.substr(1));var i=e.length;if(0===i)return\"\";if(1===i)return e;if(2===i){if(hv.indexOf(e)!==-1)return e;if(lv.indexOf(e[0])!==-1)return e[0]}return i>=3&&lv.indexOf(e[0])!==-1?e[0]:\"\";\n}function bo(t){var e=t.bondHash,i=e.countArray,r=e.offsetArray,n=e.indexArray,o=t.getBondProxy();t.eachResidue(function(t){var e=t.residueType;if(void 0===e.bonds){var a=t.atomOffset,s=[],c=[],u=[],l={};t.eachAtom(function(t){for(var e=t.index,h=r[e],d=i[e],f=0,p=d;fg){var v=g;g=m,m=v}var y=m+\"|\"+g;void 0===l[y]&&(l[y]=!0,s.push(m-a),c.push(g-a),u.push(o.bondOrder))}}),e.bonds={atomIndices1:s,atomIndices2:c,bondOrders:u}}})}function xo(t,e,i){this.structure=t,i=i||yo(e),this.atomname=e,this.element=i,this.vdw=Ng[i],this.covalent=Fg[i]}function _o(t){function e(t,e){return t+\"|\"+e}function i(i,r){r=r||yo(i);var a=e(i,r),s=n[a];if(void 0===s){var c=new xo(t,i,r);s=o.length,n[a]=s,o.push(c)}return s}function r(t){return o[t]}var n={},o=[];this.add=i,this.get=r,this.list=o,this.dict=n,this.toJSON=function(){var t={metadata:{version:.1,type:\"AtomMap\",generator:\"AtomMapExporter\"},idDict:n,typeList:o.map(function(t){return t.toJSON()})};return t},this.fromJSON=function(e){n=e.idDict,o=e.typeList.map(function(e){return new xo(t,e.atomname,e.element)}),this.list=o,this.dict=n}}function wo(t,e,i,r,n,o){this.structure=t,this.resname=e,this.atomTypeIdList=i,this.hetero=r?1:0,this.chemCompType=n,this.bonds=o,this.rings=void 0,this.atomCount=i.length,this.moleculeType=this.getMoleculeType(),this.backboneType=this.getBackboneType(0),this.backboneEndType=this.getBackboneType(-1),this.backboneStartType=this.getBackboneType(1),this.backboneIndexList=this.getBackboneIndexList();var a=Kg[this.backboneType],s=Kg[this.backboneStartType],c=Kg[this.backboneEndType],u=this.getAtomIndexByName(a.trace);this.traceAtomIndex=void 0!==u?u:-1;var l=this.getAtomIndexByName(a.direction1);this.direction1AtomIndex=void 0!==l?l:-1;var h=this.getAtomIndexByName(a.direction2);this.direction2AtomIndex=void 0!==h?h:-1;var d=this.getAtomIndexByName(s.backboneStart);this.backboneStartAtomIndex=void 0!==d?d:-1;var f=this.getAtomIndexByName(c.backboneEnd);this.backboneEndAtomIndex=void 0!==f?f:-1;var p;p=Hg.includes(e)?this.getAtomIndexByName(\"N1\"):this.getAtomIndexByName(\"N3\"),this.rungEndAtomIndex=void 0!==p?p:-1,this.bondReferenceAtomIndices=[]}function So(t){function e(t,e,i,r){return t+\"|\"+e.join(\",\")+\"|\"+(i?1:0)+\"|\"+(r?r:\"\")}function i(i,r,a,s,c){i=i.toUpperCase();var u=e(i,r,a,s),l=n[u];if(void 0===l){var h=new wo(t,i,r,a,s,c);l=o.length,n[u]=l,o.push(h)}return l}function r(t){return o[t]}var n={},o=[];this.add=i,this.get=r,this.list=o,this.dict=n}function Ao(t,e){this.structure=t,this.bondStore=t.bondStore,this.index=e,this._v12=new g,this._v13=new g,this._ap1=this.structure.getAtomProxy(),this._ap2=this.structure.getAtomProxy(),this._ap3=this.structure.getAtomProxy()}function Mo(t,e){this.structure=t,this.chainStore=t.chainStore,this.residueStore=t.residueStore,this.atomStore=t.atomStore,this.residueMap=t.residueMap,this.atomMap=t.atomMap,this.bondHash=t.bondHash,this.index=e}function Po(t,e){this.structure=t,this.chainStore=t.chainStore,this.residueStore=t.residueStore,this.atomStore=t.atomStore,this.residueMap=t.residueMap,this.atomMap=t.atomMap,this.index=e}function Co(t,e,i){this.structure=t,this.chainStore=t.chainStore,this.residueStore=t.residueStore,this.atomStore=t.atomStore,this.residueIndexStart=e,this.residueIndexEnd=i,this.residueCount=i-e+1;var r=this.structure.getResidueProxy(this.residueIndexStart),n=this.structure.getResidueProxy(this.residueIndexEnd);this.isPrevConnected=void 0!==r.getPreviousConnectedResidue();var o=n.getNextConnectedResidue();this.isNextConnected=void 0!==o,this.isNextNextConnected=this.isNextConnected&&void 0!==o.getNextConnectedResidue(),this.isCyclic=n.connectedTo(r),this.__residueProxy=this.structure.getResidueProxy()}function To(t,e){this.structure=t,this.chainStore=t.chainStore,this.residueStore=t.residueStore,this.index=e,this.__residueProxy=this.structure.getResidueProxy()}function Eo(t,e){this.structure=t,this.modelStore=t.modelStore,this.chainStore=t.chainStore,this.residueStore=t.residueStore,this.index=e}function Io(t,e){this.signals={refreshed:new Cr},this.name=t,this.path=e,this.title=\"\",this.id=\"\",this.header={},this.atomSetCache=void 0,this.atomSetDict={},this.biomolDict={},this.entityList=[],this.unitcell=void 0,this.frames=[],this.boxes=[],this.validation=void 0,this.bondStore=new Kn(0),this.backboneBondStore=new Kn(0),this.rungBondStore=new Kn(0),this.atomStore=new Qn(0),this.residueStore=new Jn(0),this.chainStore=new to(0),this.modelStore=new eo(0),this.atomMap=new _o(this),this.residueMap=new So(this),this.bondHash=void 0,this.spatialHash=void 0,this.atomSet=void 0,this.bondSet=void 0,this.center=void 0,this.boundingBox=void 0,this._bp=this.getBondProxy(),this._ap=this.getAtomProxy(),this._rp=this.getResidueProxy(),this._cp=this.getChainProxy()}function Lo(t,e,i){this.name=t,this.path=e,this.info={},this.center=new g,this.boundingBox=new lt,i instanceof zt||i instanceof $t||i instanceof Ae?this.fromGeometry(i):i&&this.set(i.position,i.index,i.normal,i.color,i.atomindex,i.contour)}function Ro(e){var i=0,r=0,n={},o={},a=URL.createObjectURL(Zp.get(e)),s=new window.Worker(a);Zp.activeWorkerCount+=1,s.onmessage=function(r){i-=1;var a=r.data.__postId;t.Debug&&qp.timeEnd(\"Worker.postMessage \"+e+\" #\"+a),n[a]&&n[a].call(s,r),delete n[a],delete o[a]},s.onerror=function(t){if(i-=1,t.data){var r=t.data.__postId;o[r]?o[r].call(s,t):qp.error(\"Worker.onerror\",r,e,t),delete n[r],delete o[r]}else qp.error(\"Worker.onerror\",e,t)},this.name=e,this.post=function(a,c,u,l){n[r]=u,o[r]=l,a=a||{},a.__name=e,a.__postId=r,a.__debug=t.Debug,t.Debug&&qp.time(\"Worker.postMessage \"+e+\" #\"+r);try{s.postMessage(a,c)}catch(t){qp.error(\"worker.post:\",t),s.postMessage(a)}return i+=1,r+=1,this},this.terminate=function(){s?(s.terminate(),URL.revokeObjectURL(a),Zp.activeWorkerCount-=1):qp.log(\"no worker to terminate\")},Object.defineProperties(this,{postCount:{get:function(){return r}},pending:{get:function(){return i}}})}function Oo(t,e){e=Math.min(8,e||2);var i=[],r=0;this.name=t,this.maxCount=e,this.post=function(t,e,i,r){var n=this.getNextWorker();return n.post(t,e,i,r),this},this.terminate=function(){i.forEach(function(t){t.terminate()})},this.getNextWorker=function(){for(var n,o=1/0,a=0;a=r){n=new Ro(t),i.push(n),r+=1;break}var s=i[a];if(0===s.pending){o=s.pending,n=s;break}s.pending=g){R=m,E=!0;break}if(E)break}if(E)break}for(E=!1,p=o;p=g){L=p,E=!0;break}if(E)break}if(E)break}for(E=!1,d=n;d=g){I=d,E=!0;break}if(E)break}if(E)break}for(E=!1,m=u;m>=a;--m){for(p=c;p>=o;--p){for(d=s;d>=n;--d)if(h=e*i*m+e*p+d,t[h]>=g){N=m,E=!0;break}if(E)break}if(E)break}for(E=!1,p=c;p>=o;--p){for(m=N;m>=a;--m){for(d=s;d>=n;--d)if(h=e*i*m+e*p+d,t[h]>=g){D=p,E=!0;break}if(E)break}if(E)break}for(E=!1,d=s;d>=n;--d){for(p=D;p>=o;--p){for(m=N;m>=a;--m)if(h=e*i*m+e*p+d,t[h]>=g){O=d,E=!0;break}if(E)break}if(E)break}v?(n=Math.max(0,I-1),o=Math.max(0,L-1),a=Math.max(0,R-1),s=Math.min(e-1,O+1),c=Math.min(i-1,D+1),u=Math.min(r-1,N+1)):(n=Math.max(1,I-1),o=Math.max(1,L-1),a=Math.max(1,R-1),s=Math.min(e-2,O+1),c=Math.min(i-2,D+1),u=Math.min(r-2,N+1));var k=15;for(m=a;m65535?Uint32Array:Uint16Array;return{position:new Float32Array(S),normal:v?void 0:new Float32Array(A),index:new s(M),atomindex:n?new Int32Array(P):void 0,contour:y}}}function Bo(t,e,i,r){i=i||1,r=r||!0;var n,o=t.length/3,a=e.length/3;r&&(n=new Float32Array(3*o));var s,c=new Float32Array(3*o),u=20,l=new Array(u);for(s=0;s.9*e[3*r+r])if(o>0)for(n=0;n<3;++n)t[i+n]-=e[3*r+n];else for(n=0;n<3;++n)t[i+n]+=e[3*r+n];return t}}function Xo(t){return\"front\"===t?Oc:\"back\"===t?Dc:\"double\"===t?Nc:Nc}function qo(t){for(var e,i,r=t.vertices,n=r.length,o=new Float32Array(3*n),a=0;a65535?Uint32Array:Uint16Array,a=new o(3*n),s=0;s65535?Uint32Array:Uint16Array;i=new n(i)}Array.isArray(r)&&(r=new Float32Array(r));var o=new vv({position:t,color:e,index:i,normal:r});S.push(o),w.setFromArray(t),x.union(w)}function o(t,e,r){i(t,A),i(e,M),P.push(r),x.expandByPoint(_.fromArray(t))}function a(t,e,r,n,o){i(t,C),i(e,T),E.push(r),i(n,I),i(o,L),x.expandByPoint(_.fromArray(t))}function s(t,e,r,n){i(t,R),i(e,O),i(r,D),N.push(n),x.expandByPoint(_.fromArray(t)),x.expandByPoint(_.fromArray(e))}function c(t,e,r,n){i(t,k),i(e,F),i(r,B),z.push(n),x.expandByPoint(_.fromArray(t)),x.expandByPoint(_.fromArray(e))}function u(t,e,r,n){i(t,U),i(e,j),i(r,$),V.push(n),x.expandByPoint(_.fromArray(t)),x.expandByPoint(_.fromArray(e))}function l(){var t=[];if(A.length){var e=new Ko({position:new Float32Array(A),color:new Float32Array(M),radius:new Float32Array(P)},{sphereDetail:p,disableImpostor:v});t.push(e)}if(C.length){var i=new Qo({position:new Float32Array(C),color:new Float32Array(T),radius:new Float32Array(E),majorAxis:new Float32Array(I),minorAxis:new Float32Array(L)},{sphereDetail:p,disableImpostor:v});t.push(i)}if(R.length){var r=new Jo({position1:new Float32Array(R),position2:new Float32Array(O),color:new Float32Array(D),color2:new Float32Array(D),radius:new Float32Array(N)},{radialSegments:m,disableImpostor:v,openEnded:y});t.push(r)}if(k.length){var n=new ta({position1:new Float32Array(k),position2:new Float32Array(F),color:new Float32Array(B),radius:new Float32Array(z)},{radialSegments:m,disableImpostor:v,openEnded:y});t.push(n)}if(U.length){var o=new Xv({position1:new Float32Array(U),position2:new Float32Array(j),color:new Float32Array($),radius:new Float32Array(V)},{aspectRatio:f,radialSegments:m,disableImpostor:v,openEnded:y});t.push(o)}return S.concat(t)}function h(){S.forEach(function(t){t.dispose()}),S.length=0,A.length=0,M.length=0,P.length=0,C.length=0,T.length=0,E.length=0,I.length=0,L.length=0,R.length=0,O.length=0,D.length=0,N.length=0,k.length=0,F.length=0,B.length=0,z.length=0,U.length=0,j.length=0,$.length=0,V.length=0}this.name=Hi(t,\"shape\");var d=e||{},f=Hi(d.aspectRatio,1.5),p=Hi(d.sphereDetail,2),m=Hi(d.radialSegments,50),v=Hi(d.disableImpostor,!1),y=Hi(d.openEnded,!1),b=new g,x=new lt,_=new g,w=new lt,S=[],A=[],M=[],P=[],C=[],T=[],E=[],I=[],L=[],R=[],O=[],D=[],N=[],k=[],F=[],B=[],z=[],U=[],j=[],$=[],V=[];Object.defineProperties(this,{center:{get:function(){return x.center(b)}}}),this.boundingBox=x,this.addBuffer=r,this.addMesh=n,this.addSphere=o,this.addEllipsoid=a,this.addCylinder=s,this.addCone=c,this.addArrow=u,this.getBufferList=l,this.dispose=h}function ia(t,e,i){this.viewer=e,this.gidPool=i?i.gidPool:void 0,this.tasks=new mm,this.queue=new Go(this.make.bind(this)),this.bufferList=[],this.parameters.colorScheme&&(this.parameters.colorScheme.options=Kp.getSchemes()),this.init(i)}function ra(t,e,i){Array.isArray(t)||(t=[t]),ia.call(this,t,e,i),this.buffer=t,this.build()}function na(t){t.visible=!0}function oa(t){t.visible=!1}function aa(t,e,i){ia.call(this,t,e,i),t instanceof Vo?(this.surface=void 0,this.volume=t):(this.surface=t,this.volume=void 0),this.boxCenter=new g,this.__boxCenter=new g,this.box=new lt,this.__box=new lt,this._position=new g,this.setBox=function(){this._position.copy(e.translationGroup.position).negate(),this._position.equals(this.boxCenter)||this.setParameters({boxCenter:this._position})},this.viewer.signals.ticked.add(this.setBox,this),this.build()}function sa(t){function e(t,e,i){return Math.min(Math.max(t,e),i)}function i(t,e,i,r){var n=i-t,o=r-e;return Math.sqrt(n*n+o*o)}function r(t,i,r){return r=e((r-t)/(i-t),0,1),r*r*(3-2*r)}for(var n=Object.assign({},t),o=Hi(n.width,256),a=Hi(n.height,256),s=[o/2,a/2],c=Math.min(o/2,a/2),u=Hi(n.delta,1/(c+1))*c,l=0,h=0,d=new Uint8Array(o*a*4),f=0,p=d.length;f1&&(m=1),r(e,i,n,o,l,f),r(e,i,n,o,m,p),p.sub(f).normalize(),p.toArray(a,g)}}function a(e,i,r,n,o){for(var a,s=i.next(),c=i.next(),u=i.next(),l=i.size,h=l-1,d=n||0,f=0;fi&&c.bondSet.flip_unsafe(x)}else(\"OH\"===l.atomname&&\"TYR\"===l.resname||\"OH\"===h.atomname&&\"TYR\"===h.resname)&&(b(l,h,\"OH\",\"CZ\")||c.bondSet.flip_unsafe(x));return{atomSet:c.atomSet,bondSet:c.bondSet,bondStore:c.bondStore}}function Ta(t,e,i){e=e||3.5,i=i||40;for(var r=new Tr(\"( PROTEIN and .N )\"),n=new Tr(\"( PROTEIN and .O )\"),o=t.getView(r),a=t.getView(n),s=new Pa(o,a),c=s.within(e),u=c.bondStore,l=t.getAtomProxy(),h=t.getAtomProxy(),d=t.getAtomProxy(),f=t.getAtomProxy(),p=t.getResidueProxy(),m=t.getResidueProxy(),v=new g,y=new g,b=0,x=u.count;bi&&c.bondSet.flip_unsafe(b)))}}return{atomSet:c.atomSet,bondSet:c.bondSet,bondStore:c.bondStore}}function Ea(t,e,i){la.call(this,t,e,i)}function Ia(t){var e=JSON.stringify(t);return void 0===sb[e]&&(sb[e]=new cb(t)),sb[e]}function La(t,e,i){la.call(this,t,e,i)}function Ra(t,e,i){la.call(this,t,e,i)}function Oa(t,e,i){xa.call(this,t,e,i)}function Da(t,e){var i=t.material.uniforms;i.modelViewMatrixInverse&&i.modelViewMatrixInverse.value.getInverse(t.modelViewMatrix),i.modelViewMatrixInverseTranspose&&(i.modelViewMatrixInverse?i.modelViewMatrixInverseTranspose.value.copy(i.modelViewMatrixInverse.value).transpose():i.modelViewMatrixInverseTranspose.value.getInverse(t.modelViewMatrix).transpose()),i.modelViewProjectionMatrix&&i.modelViewProjectionMatrix.value.multiplyMatrices(e.projectionMatrix,t.modelViewMatrix),i.modelViewProjectionMatrixInverse&&(i.modelViewProjectionMatrix?(pb.copy(i.modelViewProjectionMatrix.value),i.modelViewProjectionMatrixInverse.value.getInverse(pb)):(pb.multiplyMatrices(e.projectionMatrix,t.modelViewMatrix),i.modelViewProjectionMatrixInverse.value.getInverse(pb)))}function Na(t,e){return!Xp||e&&e.disableImpostor?(t.radius=Zr(t.radius1,t.radius2),new Fv(t,e)):new mb(t,e)}function ka(t,e,i){Oa.call(this,t,e,i),this.defaultScale.vdw=.2}function Fa(t,e){this.type=t,this.text=e||{}}function Ba(t,e,i){la.call(this,t,e,i)}function za(t,e,i){la.call(this,t,e,i)}function Ua(t,e,i,r,n){function o(t,r,o){return((t*e+r)*i+o)*n}r=r||Int32Array,n=n||1;var a,s=new r(t*e*i*n);this.data=s,this.index=o,this.set=function(t,e,i){var r=arguments,c=o(t,e,i);for(a=0;aa?u[l]=-1:(o=Math.sqrt(a-n),u[l]=Math.floor(o)),++l;A[h]=c,S[h]=u}}function o(i){var r,n,o,a,s,c,u,l,h,d,f,p,m,v,_,M,T,I,L=3*i,O=i;r=Math.floor(.5+g*(t[L]+w[0])),n=Math.floor(.5+g*(t[L+1]+w[1])),o=Math.floor(.5+g*(t[L+2]+w[2]));var D,N=e[O],k=S[N],F=0,B=b*x,z=A[N];for(d=0;d=y||v>=b||_>=x)){var U=m*B+v*x+_;if(P)if(C[U]&R){if(C[U]&R){var j=E[U];j!==L&&(a=r+u-Math.floor(.5+g*(t[j]+w[0])),s=n+l-Math.floor(.5+g*(t[j+1]+w[1])),c=o+h-Math.floor(.5+g*(t[j+2]+w[2])),u*u+l*l+h*h=y||f>=b||p>=x)){var B=d*F+f*x+p;if(C[B]&O){if(P){var z=E[B];a=Math.floor(.5+g*(t[z]+w[0])),s=Math.floor(.5+g*(t[z+1]+w[1])),c=Math.floor(.5+g*(t[z+2]+w[2])),u*u+l*l+h*h-1&&a-1&&c-1&&s0);var p,m=v*v,g=new Uint16Array(3);for(t=0;t=m)||(C[n]|=D,P&&C[n]&O&&(o.toArray(t,e,i,g),p=g[0]*a+g[1]*x+g[2],E[n]=E[p])));console.timeEnd(\"EDTSurface fastdistancemap\")}function h(t,e,i,r){var n,o,a,s,c,u,l,h,d,f,p,m,g=new Uint16Array(3),v=0;if(0===i)return v;var _=-1,w=-1,S=-1,A=b*x;for(l=0,d=i;l-1&&w-1&&S-1&&(p=_*A+x*w+S,C[p]&R&&!(C[p]&O)?(e.fromArray(_,w,S,g),s=_-g[0],c=w-g[1],u=S-g[2],f=s*s+c*c+u*u,T[p]=f,C[p]|=O,C[p]|=D,r[v]=_,r[v+1]=w,r[v+2]=S,v+=3):C[p]&R&&C[p]&O&&(s=_-g[0],c=w-g[1],u=S-g[2],f=s*s+c*c+u*u,f-1&&w-1&&S-1&&(p=_*A+x*w+S,C[p]&R&&!(C[p]&O)?(e.fromArray(_,w,S,g),s=_-g[0],c=w-g[1],u=S-g[2],f=s*s+c*c+u*u,T[p]=f,C[p]|=O,C[p]|=D,r[v]=_,r[v+1]=w,r[v+2]=S,v+=3):C[p]&R&&C[p]&O&&(s=_-g[0],c=w-g[1],u=S-g[2],f=s*s+c*c+u*u,f-1&&w-1&&S-1&&(p=_*A+x*w+S,C[p]&R&&!(C[p]&O)?(e.fromArray(_,w,S,g),s=_-g[0],c=w-g[1],u=S-g[2],f=s*s+c*c+u*u,T[p]=f,C[p]|=O,C[p]|=D,r[v]=_,r[v+1]=w,r[v+2]=S,v+=3):C[p]&R&&C[p]&O&&(s=_-g[0],c=w-g[1],u=S-g[2],f=s*s+c*c+u*u,fT&&(T=R)}this.neighbourListLength=27*T+1,this.withinRadii=function(n,o,a,c,d){for(var f=0,p=s(n,u),y=s(o,l),x=s(a,h),_=Math.max(0,p-1),w=Math.max(0,y-1),S=Math.max(0,x-1),C=Math.min(m,p+1),T=Math.min(g,y+1),E=Math.min(v,x+1),I=_;I<=C;++I)for(var L=I*b,R=w;R<=T;++R)for(var O=R*v,D=S;D<=E;++D)for(var N=L+O+D,k=A[N],F=k+M[N],B=k;BP&&(P=A[l]);o(),a(),s(),H=-1}function n(t,e,i){for(var r=0;r=0;){if(o!==r&&o!==n&&u(o,t,e,i))return H=o,o;o=j[++a]}return H=-1,-1}function u(e,i,r,n){var o=3*e,a=M[e],s=t[o]-i,c=t[o+1]-r,u=t[o+2]-n,l=s*s+c*c+u*u;return l=0;)t0&&s0&&e(g-1),h.growIfFull(),h.resno[g]=_,void 0!==S&&(h.sstruc[g]=S.charCodeAt(0)),void 0!==A&&(h.inscode[g]=A.charCodeAt(0)),h.atomOffset[g]=m,h.atomCount[g]=0,h.count+=1,h.chainIndex[g]=v,d.residueCount[v]+=1),l.count+=1,l.residueIndex[m]=g,h.atomCount[g]+=1,n=t,o=b,a=x,s=_,c=A,u=w},this.finalize=function(){i=a,r=u,g>-1&&e(g)}}function es(t){switch(t=t.toLowerCase()){case\"polymer\":return lg;case\"non-polymer\":return hg;case\"macrolide\":return dg;case\"water\":return fg;default:return ug}}function is(t,e){Array.isArray(t[e])||Object.keys(t).forEach(function(e){t[e]=[t[e]]})}function rs(t){return\"?\"!==t}function ns(t,e){return rs(t)?t:e}function os(t){switch(t.toLowerCase()){case\"?\":case\"sing\":return 1;case\"doub\":return 2;case\"trip\":return 3;case\"quad\":return 4}return 0}function as(t,e,i){var r,n,o=e.atomStore,a=e.atomMap,s=t.chem_comp,c=t.chem_comp_atom,u=t.chem_comp_bond;s&&(s.name&&(e.title=s.name.trim().replace(Db,\"\")),s.id&&(e.id=s.id.trim().replace(Db,\"\")));var l={};if(c){var h,d,f,p;for(n=c.comp_id.length,r=0;r0){o=o.split(\"(\");var c=s(o[0]),u=s(o[1]);Object.keys(c).forEach(function(t){Object.keys(u).forEach(function(e){var i=new p;i.multiplyMatrices(c[t],u[e]),r[t+\"x\"+e]=i})})}else r=s(o);var l=[];for(var h in r)l.push(r[h]);var d=t;/^(0|[1-9][0-9]*)$/.test(d)&&(d=\"BU\"+d);for(var f=a.asym_id_list[e].split(\",\"),m=0,g=f.length;mw){var S=_;_=w,w=S;var A=p;p=b,b=A}if(0!==_&&0!==w)for(var M=0;Mo&&++s;e=new Int32Array(s)}for(i=0,r=0;ir){for(var n=[],o=0;o\");){var i=o();if(!i)return e;e.attributes[i.name]=i.value}return a(/\\?>\\s*/),e}}function r(){var t=a(sx);if(t){for(var e={name:t[1],attributes:{},children:[]};!(s()||c(\">\")||c(\"?>\")||c(\"/>\"));){var i=o();if(!i)return e;e.attributes[i.name]=i.value}if(a(/^\\s*\\/>\\s*/))return e;a(/\\??>\\s*/),e.content=n();for(var u;u=r();)e.children.push(u);return a(/^<\\/[\\w-:.]+>\\s*/),e}}function n(){var t=a(cx);return t?t[1]:\"\"}function o(){var t=a(ux);if(t)return{name:t[1],value:Ns(t[2])}}function a(e){var i=t.match(e);if(i)return t=t.slice(i[0].length),i}function s(){return 0===t.length}function c(e){return 0===t.indexOf(e)}return t=t.trim().replace(//g,\"\"),e()}function Fs(t,e,i){var r=t.icode.value,n=t.chain.value,o=t.altcode.value,a=t.resnum.value;return r.trim()&&(a+=\"^\"+r),n.trim()&&(a+=\":\"+n),e&&(a+=\".\"+e),i&&o.trim()&&(a+=\"%\"+o),a+=\"/\"+(parseInt(t.model.value)-1)}function Bs(t,e,i){void 0===t[e]?t[e]=i:t[e]|=i}function zs(t,e){return void 0!==t&&t.value===e}function Us(t){var e=t.inscode,i=t.chainname,r=t.atomname,n=t.altloc,o=t.resno;return e&&(o+=\"^\"+e),i&&(o+=\":\"+i),r&&(o+=\".\"+r),n&&(o+=\"%\"+n),o+=\"/\"+t.modelIndex}function js(t,e,i){for(var r=0,n=e.getElementsByTagName(\"clash\"),o=0,a=n.length;o0&&(r+=1);var c=e.getElementsByTagName(\"bond-outlier\");c.length>0&&(r+=1);var u=e.getElementsByTagName(\"plane-outlier\");return u.length>0&&(r+=1),zs(i.rota,\"OUTLIER\")&&(r+=1),zs(i.rama,\"OUTLIER\")&&(r+=1),zs(i.RNApucker,\"outlier\")&&(r+=1),r}function $s(t){for(var e=Array.prototype.slice.call(arguments,1);e.length;){var i=e.shift();if(i){if(\"object\"!=typeof i)throw new TypeError(i+\"must be non-object\");for(var r in i)i.hasOwnProperty(r)&&(t[r]=i[r])}}return t}function Vs(t,e){return t.length===e?t:t.subarray?t.subarray(0,e):(t.length=e,t)}function Gs(t,e,i,r,n){if(e.subarray&&t.subarray)return void t.set(e.subarray(i,i+r),n);for(var o=0;o>>16&65535|0,a=0;0!==i;){a=i>2e3?2e3:i,i-=a;do n=n+e[r++]|0,o=o+n|0;while(--a);n%=65521,o%=65521}return n|o<<16|0}function Xs(){for(var t,e=[],i=0;i<256;i++){t=i;for(var r=0;r<8;r++)t=1&t?3988292384^t>>>1:t>>>1;e[i]=t}return e}function qs(t,e,i,r){var n=mx,o=r+i;t^=-1;for(var a=r;a>>8^n[255&(t^e[a])];return t^-1}function Ys(t,e){var i,r,n,o,a,s,c,u,l,h,d,f,p,m,g,v,y,b,x,_,w,S,A,M,P;i=t.state,r=t.next_in,M=t.input,n=r+(t.avail_in-5),o=t.next_out,P=t.output,a=o-(e-t.avail_out),s=o+(t.avail_out-257),c=i.dmax,u=i.wsize,l=i.whave,h=i.wnext,d=i.window,f=i.hold,p=i.bits,m=i.lencode,g=i.distcode,v=(1<>>24,f>>>=x,p-=x,x=b>>>16&255,0===x)P[o++]=65535&b;else{if(!(16&x)){if(0===(64&x)){b=m[(65535&b)+(f&(1<>>=x,p-=x),p<15&&(f+=M[r++]<>>24,f>>>=x,p-=x,x=b>>>16&255,!(16&x)){if(0===(64&x)){b=g[(65535&b)+(f&(1<c){t.msg=\"invalid distance too far back\",i.mode=gx;break t}if(f>>>=x,p-=x,x=o-a,w>x){if(x=w-x,x>l&&i.sane){t.msg=\"invalid distance too far back\",i.mode=gx;break t}if(S=0,A=d,0===h){if(S+=u-x,x<_){_-=x;do P[o++]=d[S++];while(--x);S=o-w,A=P}}else if(h2;)P[o++]=A[S++],P[o++]=A[S++],P[o++]=A[S++],_-=3;_&&(P[o++]=A[S++],_>1&&(P[o++]=A[S++]))}else{S=o-w;do P[o++]=P[S++],P[o++]=P[S++],P[o++]=P[S++],_-=3;while(_>2);_&&(P[o++]=P[S++],_>1&&(P[o++]=P[S++]))}break}}break}}while(r>3,r-=_,p-=_<<3,f&=(1<=1&&0===I[_];_--);if(w>_&&(w=_),0===_)return n[o++]=20971520,n[o++]=20971520,s.bits=1,0;for(x=1;x<_&&0===I[x];x++);for(w0&&(t===_x||1!==_))return-1;for(L[1]=0,y=1;ybx||t===Sx&&P>xx)return 1;for(var D=0;;){D++,p=y-A,a[b]f?(m=R[O+a[b]],g=T[E+a[b]]):(m=96,g=0),c=1<>A)+u]=p<<24|m<<16|g|0;while(0!==u);for(c=1<>=1;if(0!==c?(C&=c-1,C+=c):C=0,b++,0===--I[y]){if(y===_)break;y=e[i+a[b]]}if(y>w&&(C&h)!==l){for(0===A&&(A=w),d+=x,S=y-A,M=1<bx||t===Sx&&P>xx)return 1;l=C&h,n[l]=w<<24|S<<16|d-o|0}}return 0!==C&&(n[d+C]=y-A<<24|64<<16|0),s.bits=w,0}function Ks(t){return(t>>>24&255)+(t>>>8&65280)+((65280&t)<<8)+((255&t)<<24)}function Qs(){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 Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function Js(t){var e;return t&&t.state?(e=t.state,t.total_in=t.total_out=e.total=0,t.msg=\"\",e.wrap&&(t.adler=1&e.wrap),e.mode=$x,e.last=0,e.havedict=0,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new Int32Array(x_),e.distcode=e.distdyn=new Int32Array(__),e.sane=1,e.back=-1,Dx):Fx}function tc(t){var e;return t&&t.state?(e=t.state,e.wsize=0,e.whave=0,e.wnext=0,Js(t)):Fx}function ec(t,e){var i,r;return t&&t.state?(r=t.state,e<0?(i=0,e=-e):(i=(e>>4)+1,e<48&&(e&=15)),e&&(e<8||e>15)?Fx:(null!==r.window&&r.wbits!==e&&(r.window=null),r.wrap=i,r.wbits=e,tc(t))):Fx}function ic(t,e){var i,r;return t?(r=new Qs,t.state=r,r.window=null,i=ec(t,e),i!==Dx&&(t.state=null),i):Fx}function rc(t){if(w_){var e;for(fx=new Int32Array(512),px=new Int32Array(32),e=0;e<144;)t.lens[e++]=8;for(;e<256;)t.lens[e++]=9;for(;e<280;)t.lens[e++]=7;for(;e<288;)t.lens[e++]=8;for(Zs(Ex,t.lens,0,288,fx,0,t.work,{bits:9}),e=0;e<32;)t.lens[e++]=5;Zs(Ix,t.lens,0,32,px,0,t.work,{bits:5}),w_=!1}t.lencode=fx,t.lenbits=9,t.distcode=px,t.distbits=5}function nc(t,e,i,r){var n,o=t.state;return null===o.window&&(o.wsize=1<=o.wsize?(Gs(o.window,e,i-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):(n=o.wsize-o.wnext,n>r&&(n=r),Gs(o.window,e,i-r,n,o.wnext),r-=n,r?(Gs(o.window,e,i-r,r,0),o.wnext=r,o.whave=o.wsize):(o.wnext+=n,o.wnext===o.wsize&&(o.wnext=0),o.whave>>8&255,i.check=qs(i.check,C,2,0),u=0,l=0,i.mode=Vx;break}if(i.flags=0,i.head&&(i.head.done=!1),!(1&i.wrap)||(((255&u)<<8)+(u>>8))%31){t.msg=\"incorrect header check\",i.mode=v_;break}if((15&u)!==jx){t.msg=\"unknown compression method\",i.mode=v_;break}if(u>>>=4,l-=4,w=(15&u)+8,0===i.wbits)i.wbits=w;else if(w>i.wbits){t.msg=\"invalid window size\",i.mode=v_;break}i.dmax=1<>8&1),512&i.flags&&(C[0]=255&u,C[1]=u>>>8&255,i.check=qs(i.check,C,2,0)),u=0,l=0,i.mode=Gx;case Gx:for(;l<32;){if(0===s)break t;s--,u+=r[o++]<>>8&255,C[2]=u>>>16&255,C[3]=u>>>24&255,i.check=qs(i.check,C,4,0)),u=0,l=0,i.mode=Hx;case Hx:for(;l<16;){if(0===s)break t;s--,u+=r[o++]<>8),512&i.flags&&(C[0]=255&u,C[1]=u>>>8&255,i.check=qs(i.check,C,2,0)),u=0,l=0,i.mode=Wx;case Wx:if(1024&i.flags){for(;l<16;){if(0===s)break t;s--,u+=r[o++]<>>8&255,i.check=qs(i.check,C,2,0)),u=0,l=0}else i.head&&(i.head.extra=null);i.mode=Xx;case Xx:if(1024&i.flags&&(f=i.length,f>s&&(f=s),f&&(i.head&&(w=i.head.extra_len-i.length,i.head.extra||(i.head.extra=new Array(i.head.extra_len)),Gs(i.head.extra,r,o,f,w)),512&i.flags&&(i.check=qs(i.check,r,f,o)),s-=f,o+=f,i.length-=f),i.length))break t;i.length=0,i.mode=qx;case qx:if(2048&i.flags){if(0===s)break t;f=0;do w=r[o+f++],i.head&&w&&i.length<65536&&(i.head.name+=String.fromCharCode(w));while(w&&f>9&1,i.head.done=!0),t.adler=i.check=0,i.mode=Jx;break;case Kx:for(;l<32;){if(0===s)break t;s--,u+=r[o++]<>>=7&l,l-=7&l,i.mode=p_;break}for(;l<3;){if(0===s)break t;s--,u+=r[o++]<>>=1,l-=1,3&u){case 0:i.mode=e_;break;case 1:if(rc(i),i.mode=s_,e===Ox){u>>>=2,l-=2;break t}break;case 2:i.mode=n_;break;case 3:t.msg=\"invalid block type\",i.mode=v_}u>>>=2,l-=2;break;case e_:for(u>>>=7&l,l-=7&l;l<32;){if(0===s)break t;s--,u+=r[o++]<>>16^65535)){t.msg=\"invalid stored block lengths\",i.mode=v_;break}if(i.length=65535&u,u=0,l=0,i.mode=i_,e===Ox)break t;case i_:i.mode=r_;case r_:if(f=i.length){if(f>s&&(f=s),f>c&&(f=c),0===f)break t;Gs(n,r,o,f,a),s-=f,o+=f,c-=f,a+=f,i.length-=f;break}i.mode=Jx;break;case n_:for(;l<14;){if(0===s)break t;s--,u+=r[o++]<>>=5,l-=5,i.ndist=(31&u)+1,u>>>=5,l-=5,i.ncode=(15&u)+4,u>>>=4,l-=4,i.nlen>286||i.ndist>30){t.msg=\"too many length or distance symbols\",i.mode=v_;break}i.have=0,i.mode=o_;case o_:for(;i.have>>=3,l-=3}for(;i.have<19;)i.lens[T[i.have++]]=0;if(i.lencode=i.lendyn,i.lenbits=7,A={bits:i.lenbits},S=Zs(Tx,i.lens,0,19,i.lencode,0,i.work,A),i.lenbits=A.bits,S){t.msg=\"invalid code lengths set\",i.mode=v_;break}i.have=0,i.mode=a_;case a_:for(;i.have>>24,v=P>>>16&255,y=65535&P,!(g<=l);){if(0===s)break t;s--,u+=r[o++]<>>=g,l-=g,i.lens[i.have++]=y;else{if(16===y){for(M=g+2;l>>=g,l-=g,0===i.have){t.msg=\"invalid bit length repeat\",i.mode=v_;break}w=i.lens[i.have-1],f=3+(3&u),u>>>=2,l-=2}else if(17===y){for(M=g+3;l>>=g,l-=g,w=0,f=3+(7&u),u>>>=3,l-=3}else{for(M=g+7;l>>=g,l-=g,w=0,f=11+(127&u),u>>>=7,l-=7}if(i.have+f>i.nlen+i.ndist){t.msg=\"invalid bit length repeat\",i.mode=v_;break}for(;f--;)i.lens[i.have++]=w}}if(i.mode===v_)break;if(0===i.lens[256]){t.msg=\"invalid code -- missing end-of-block\",i.mode=v_;break}if(i.lenbits=9,A={bits:i.lenbits},S=Zs(Ex,i.lens,0,i.nlen,i.lencode,0,i.work,A),i.lenbits=A.bits,S){t.msg=\"invalid literal/lengths set\",i.mode=v_;break}if(i.distbits=6,i.distcode=i.distdyn,A={bits:i.distbits},S=Zs(Ix,i.lens,i.nlen,i.ndist,i.distcode,0,i.work,A),i.distbits=A.bits,S){t.msg=\"invalid distances set\",i.mode=v_;break}if(i.mode=s_,e===Ox)break t;case s_:i.mode=c_;case c_:if(s>=6&&c>=258){t.next_out=a,t.avail_out=c,t.next_in=o,t.avail_in=s,i.hold=u,i.bits=l,Ys(t,d),a=t.next_out,n=t.output,c=t.avail_out,o=t.next_in,r=t.input,s=t.avail_in,u=i.hold,l=i.bits,i.mode===Jx&&(i.back=-1);break}for(i.back=0;P=i.lencode[u&(1<>>24,v=P>>>16&255,y=65535&P,!(g<=l);){if(0===s)break t;s--,u+=r[o++]<>b)],g=P>>>24,v=P>>>16&255,y=65535&P,!(b+g<=l);){if(0===s)break t;s--,u+=r[o++]<>>=b,l-=b,i.back+=b}if(u>>>=g,l-=g,i.back+=g,i.length=y,0===v){i.mode=f_;break}if(32&v){i.back=-1,i.mode=Jx;break}if(64&v){t.msg=\"invalid literal/length code\",i.mode=v_;break}i.extra=15&v,i.mode=u_;case u_:if(i.extra){for(M=i.extra;l>>=i.extra,l-=i.extra,i.back+=i.extra}i.was=i.length,i.mode=l_;case l_:for(;P=i.distcode[u&(1<>>24,v=P>>>16&255,y=65535&P,!(g<=l);){if(0===s)break t;s--,u+=r[o++]<>b)],g=P>>>24,v=P>>>16&255,y=65535&P,!(b+g<=l);){if(0===s)break t;s--,u+=r[o++]<>>=b,l-=b,i.back+=b}if(u>>>=g,l-=g,i.back+=g,64&v){t.msg=\"invalid distance code\",i.mode=v_;break}i.offset=y,i.extra=15&v,i.mode=h_;case h_:if(i.extra){for(M=i.extra;l>>=i.extra,l-=i.extra,i.back+=i.extra}if(i.offset>i.dmax){t.msg=\"invalid distance too far back\",i.mode=v_;break}i.mode=d_;case d_:if(0===c)break t;if(f=d-c,i.offset>f){if(f=i.offset-f,f>i.whave&&i.sane){t.msg=\"invalid distance too far back\",i.mode=v_;break}f>i.wnext?(f-=i.wnext,p=i.wsize-f):p=i.wnext-f,f>i.length&&(f=i.length),m=i.window}else m=n,p=a-i.offset,f=i.length;f>c&&(f=c),c-=f,i.length-=f;do n[a++]=m[p++];while(--f);0===i.length&&(i.mode=c_);break;case f_:if(0===c)break t;n[a++]=i.length,c--,i.mode=c_;break;case p_:if(i.wrap){for(;l<32;){if(0===s)break t;s--,u|=r[o++]<>>6,e[o++]=128|63&i):i<65536?(e[o++]=224|i>>>12,e[o++]=128|i>>>6&63,e[o++]=128|63&i):(e[o++]=240|i>>>18,e[o++]=128|i>>>12&63,e[o++]=128|i>>>6&63,e[o++]=128|63&i);return e}function lc(t,e){if(e<65537&&(t.subarray&&A_||!t.subarray&&S_))return String.fromCharCode.apply(null,Vs(t,e));for(var i=\"\",r=0;r4)s[r++]=65533,i+=o-1;else{for(n&=2===o?31:3===o?15:7;o>1&&i1?s[r++]=65533:n<65536?s[r++]=n:(n-=65536,s[r++]=55296|n>>10&1023,s[r++]=56320|1023&n)}return lc(s,r)}function fc(t,e){var i;for(e=e||t.length,e>t.length&&(e=t.length),i=e-1;i>=0&&128===(192&t[i]);)i--;return i<0?e:0===i?e:i+M_[t[i]]>e?i:e}function pc(){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 mc(){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 gc(t){if(!(this instanceof gc))return new gc(t);this.options=$s({chunkSize:16384,windowBits:0,to:\"\"},t||{});var e=this.options;e.raw&&e.windowBits>=0&&e.windowBits<16&&(e.windowBits=-e.windowBits,0===e.windowBits&&(e.windowBits=-15)),!(e.windowBits>=0&&e.windowBits<16)||t&&t.windowBits||(e.windowBits+=32),e.windowBits>15&&e.windowBits<48&&0===(15&e.windowBits)&&(e.windowBits|=15),this.err=0,this.msg=\"\",this.ended=!1,this.chunks=[],this.strm=new pc,this.strm.avail_out=0;var i=ic(this.strm,e.windowBits);if(i!==I_)throw new Error(D_[i]);this.header=new mc,sc(this.strm,this.header)}function vc(t,e){var i=new gc(e);if(i.push(t,!0),i.err)throw i.msg;return i.result}function yc(t){var e;t instanceof ArrayBuffer&&(t=new Uint8Array(t));try{e=vc(t)}catch(i){e=t}return e}function bc(){this.getUrl=function(t){var e,i=Zi(t),r=i.name.substr(0,4);return![\"pdb\",\"cif\"].includes(i.ext)||i.compressed!==!1&&\"gz\"!==i.compressed?\"mmtf\"===i.ext?e=i.base.endsWith(\".bb\")?z_+r:B_+r:i.ext?(qp.warn(\"unsupported ext\",i.ext),e=B_+r):e=B_+r:e=k_+i.path,Wi()+e},this.getExt=function(t){var e=Zi(t);if(\"mmtf\"===e.ext||!e.ext)return\"mmtf\"}}function xc(){this.getUrl=function(t){var e,i=Zi(t),r=i.name;return i.ext&&\"sdf\"!==i.ext?(qp.warn(\"unsupported ext\",i.ext),e=U_+r+j_):e=U_+r+j_,Wi()+e},this.getExt=function(t){var e=Zi(t);if(!e.ext||\"sdf\"===e.ext)return\"sdf\"}}function _c(){this.getUrl=function(t){return t}}function wc(t){t=t||\"\",this.getUrl=function(e){var i=Zi(e);return qi(t+i.path)}}\"undefined\"!=typeof window&&!function(){window.console=window.console||{};for(var t,e,i=window.console,r={},n=function(){},o=\"memory\".split(\",\"),a=\"assert,clear,count,debug,dir,dirxml,error,exception,group,groupCollapsed,groupEnd,info,log,markTimeline,profile,profiles,profileEnd,show,table,time,timeEnd,timeline,timelineEnd,timeStamp,trace,warn\".split(\",\");t=o.pop();)i[t]||(i[t]=r);for(;e=a.pop();)i[e]||(i[e]=n)}(),\"undefined\"==typeof HTMLCanvasElement||HTMLCanvasElement.prototype.toBlob||Object.defineProperty(HTMLCanvasElement.prototype,\"toBlob\",{value:function(t,e,i){for(var r=window.atob(this.toDataURL(e,i).split(\",\")[1]),n=r.length,o=n>>2,a=new Uint8Array(n),s=new Uint32Array(a.buffer,0,o),c=0,u=0;c-9007199254740992&&t<9007199254740992&&Math.floor(t)===t}),Number.isNaN||(Number.isNaN=function(t){return t!==t}),Object.assign||Object.defineProperty(Object,\"assign\",{enumerable:!1,configurable:!0,writable:!0,value:function(t){var e=arguments;if(void 0===t||null===t)throw new TypeError(\"Cannot convert first argument to object\");for(var i,r=Object(t),n=!1,o=1;o1?arguments[1]:void 0,s=a?Number(a):0;s!=s&&(s=0);var c=Math.min(Math.max(s,0),r);if(o+c>r)return!1;for(var u=-1;++ui.length)&&(e=i.length),e-=t.length;var r=i.indexOf(t,e);return r!==-1&&r===e}),String.prototype.includes||(String.prototype.includes=function(t,e){return\"number\"!=typeof e&&(e=0),!(e+t.length>this.length)&&this.indexOf(t,e)!==-1}),Array.prototype.includes||(Array.prototype.includes=function(t){if(null==this)throw new TypeError(\"Array.prototype.includes called on null or undefined\");var e=Object(this),i=parseInt(e.length,10)||0;if(0===i)return!1;var r,n=parseInt(arguments[1],10)||0;n>=0?r=n:(r=i+n,r<0&&(r=0));for(var o;r0?1:-1)*Math.floor(Math.abs(e)):e},r=Math.pow(2,53)-1,n=function(t){var e=i(t);return Math.min(Math.max(e,0),r)};return function(t){var i=this,r=Object(t);if(null==t)throw new TypeError(\"Array.from requires an array-like object - not null or undefined\");var o,a=arguments.length>1?arguments[1]:void 0;if(\"undefined\"!=typeof a){if(!e(a))throw new TypeError(\"Array.from: when provided, the second argument must be a function\");arguments.length>2&&(o=arguments[2])}for(var s,c=n(r.length),u=e(i)?Object(new i(c)):new Array(c),l=0;l0?1:+t}),void 0===Function.prototype.name&&Object.defineProperty(Function.prototype,\"name\",{get:function(){return this.toString().match(/^\\s*function\\s*(\\S*)\\s*\\(/)[1]}}),void 0===Object.assign&&!function(){Object.assign=function(t){var e=arguments;if(void 0===t||null===t)throw new TypeError(\"Cannot convert undefined or null to object\");for(var i=Object(t),r=1;r>=4,i[n]=e[19===n?3&t|8:t]);return i.join(\"\");\n}}(),clamp:function(t,e,i){return Math.max(e,Math.min(i,t))},euclideanModulo:function(t,e){return(t%e+e)%e},mapLinear:function(t,e,i,r,n){return r+(t-e)*(n-r)/(i-e)},smoothstep:function(t,e,i){return t<=e?0:t>=i?1:(t=(t-e)/(i-e),t*t*(3-2*t))},smootherstep:function(t,e,i){return t<=e?0:t>=i?1:(t=(t-e)/(i-e),t*t*t*(t*(6*t-15)+10))},random16:function(){return console.warn(\"THREE.Math.random16() has been deprecated. Use Math.random() instead.\"),Math.random()},randInt:function(t,e){return t+Math.floor(Math.random()*(e-t+1))},randFloat:function(t,e){return t+Math.random()*(e-t)},randFloatSpread:function(t){return t*(.5-Math.random())},degToRad:function(t){return t*Fl.DEG2RAD},radToDeg:function(t){return t*Fl.RAD2DEG},isPowerOfTwo:function(t){return 0===(t&t-1)&&0!==t},nearestPowerOfTwo:function(t){return Math.pow(2,Math.round(Math.log(t)/Math.LN2))},nextPowerOfTwo:function(t){return t--,t|=t>>1,t|=t>>2,t|=t>>4,t|=t>>8,t|=t>>16,t++,t}};h.prototype={constructor:h,isVector2:!0,get width(){return this.x},set width(t){this.x=t},get height(){return this.y},set height(t){this.y=t},set:function(t,e){return this.x=t,this.y=e,this},setScalar:function(t){return this.x=t,this.y=t,this},setX:function(t){return this.x=t,this},setY:function(t){return this.y=t,this},setComponent:function(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;default:throw new Error(\"index is out of range: \"+t)}},getComponent:function(t){switch(t){case 0:return this.x;case 1:return this.y;default:throw new Error(\"index is out of range: \"+t)}},clone:function(){return new this.constructor(this.x,this.y)},copy:function(t){return this.x=t.x,this.y=t.y,this},add:function(t,e){return void 0!==e?(console.warn(\"THREE.Vector2: .add() now only accepts one argument. Use .addVectors( a, b ) instead.\"),this.addVectors(t,e)):(this.x+=t.x,this.y+=t.y,this)},addScalar:function(t){return this.x+=t,this.y+=t,this},addVectors:function(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this},addScaledVector:function(t,e){return this.x+=t.x*e,this.y+=t.y*e,this},sub:function(t,e){return void 0!==e?(console.warn(\"THREE.Vector2: .sub() now only accepts one argument. Use .subVectors( a, b ) instead.\"),this.subVectors(t,e)):(this.x-=t.x,this.y-=t.y,this)},subScalar:function(t){return this.x-=t,this.y-=t,this},subVectors:function(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this},multiply:function(t){return this.x*=t.x,this.y*=t.y,this},multiplyScalar:function(t){return isFinite(t)?(this.x*=t,this.y*=t):(this.x=0,this.y=0),this},divide:function(t){return this.x/=t.x,this.y/=t.y,this},divideScalar:function(t){return this.multiplyScalar(1/t)},min:function(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this},max:function(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this},clamp:function(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this},clampScalar:function(){var t,e;return function(i,r){return void 0===t&&(t=new h,e=new h),t.set(i,i),e.set(r,r),this.clamp(t,e)}}(),clampLength:function(t,e){var i=this.length();return this.multiplyScalar(Math.max(t,Math.min(e,i))/i)},floor:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this},ceil:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this},round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this},roundToZero:function(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this},negate:function(){return this.x=-this.x,this.y=-this.y,this},dot:function(t){return this.x*t.x+this.y*t.y},lengthSq:function(){return this.x*this.x+this.y*this.y},length:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},lengthManhattan:function(){return Math.abs(this.x)+Math.abs(this.y)},normalize:function(){return this.divideScalar(this.length())},angle:function(){var t=Math.atan2(this.y,this.x);return t<0&&(t+=2*Math.PI),t},distanceTo:function(t){return Math.sqrt(this.distanceToSquared(t))},distanceToSquared:function(t){var e=this.x-t.x,i=this.y-t.y;return e*e+i*i},distanceToManhattan:function(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)},setLength:function(t){return this.multiplyScalar(t/this.length())},lerp:function(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this},lerpVectors:function(t,e,i){return this.subVectors(e,t).multiplyScalar(i).add(t)},equals:function(t){return t.x===this.x&&t.y===this.y},fromArray:function(t,e){return void 0===e&&(e=0),this.x=t[e],this.y=t[e+1],this},toArray:function(t,e){return void 0===t&&(t=[]),void 0===e&&(e=0),t[e]=this.x,t[e+1]=this.y,t},fromAttribute:function(t,e,i){return void 0===i&&(i=0),e=e*t.itemSize+i,this.x=t.array[e],this.y=t.array[e+1],this},rotateAround:function(t,e){var i=Math.cos(e),r=Math.sin(e),n=this.x-t.x,o=this.y-t.y;return this.x=n*i-o*r+t.x,this.y=n*r+o*i+t.y,this}},d.DEFAULT_IMAGE=void 0,d.DEFAULT_MAPPING=Mu,d.prototype={constructor:d,isTexture:!0,set needsUpdate(t){t===!0&&this.version++},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.image=t.image,this.mipmaps=t.mipmaps.slice(0),this.mapping=t.mapping,this.wrapS=t.wrapS,this.wrapT=t.wrapT,this.magFilter=t.magFilter,this.minFilter=t.minFilter,this.anisotropy=t.anisotropy,this.format=t.format,this.type=t.type,this.offset.copy(t.offset),this.repeat.copy(t.repeat),this.generateMipmaps=t.generateMipmaps,this.premultiplyAlpha=t.premultiplyAlpha,this.flipY=t.flipY,this.unpackAlignment=t.unpackAlignment,this.encoding=t.encoding,this},toJSON:function(t){function e(t){var e;return void 0!==t.toDataURL?e=t:(e=document.createElementNS(\"http://www.w3.org/1999/xhtml\",\"canvas\"),e.width=t.width,e.height=t.height,e.getContext(\"2d\").drawImage(t,0,0,t.width,t.height)),e.width>2048||e.height>2048?e.toDataURL(\"image/jpeg\",.6):e.toDataURL(\"image/png\")}if(void 0!==t.textures[this.uuid])return t.textures[this.uuid];var i={metadata:{version:4.4,type:\"Texture\",generator:\"Texture.toJSON\"},uuid:this.uuid,name:this.name,mapping:this.mapping,repeat:[this.repeat.x,this.repeat.y],offset:[this.offset.x,this.offset.y],wrap:[this.wrapS,this.wrapT],minFilter:this.minFilter,magFilter:this.magFilter,anisotropy:this.anisotropy,flipY:this.flipY};if(void 0!==this.image){var r=this.image;void 0===r.uuid&&(r.uuid=Fl.generateUUID()),void 0===t.images[r.uuid]&&(t.images[r.uuid]={uuid:r.uuid,url:e(r)}),i.image=r.uuid}return t.textures[this.uuid]=i,i},dispose:function(){this.dispatchEvent({type:\"dispose\"})},transformUv:function(t){if(this.mapping===Mu){if(t.multiply(this.repeat),t.add(this.offset),t.x<0||t.x>1)switch(this.wrapS){case Ou:t.x=t.x-Math.floor(t.x);break;case Du:t.x=t.x<0?0:1;break;case Nu:1===Math.abs(Math.floor(t.x)%2)?t.x=Math.ceil(t.x)-t.x:t.x=t.x-Math.floor(t.x)}if(t.y<0||t.y>1)switch(this.wrapT){case Ou:t.y=t.y-Math.floor(t.y);break;case Du:t.y=t.y<0?0:1;break;case Nu:1===Math.abs(Math.floor(t.y)%2)?t.y=Math.ceil(t.y)-t.y:t.y=t.y-Math.floor(t.y)}this.flipY&&(t.y=1-t.y)}}},Object.assign(d.prototype,l.prototype);var Bl=0;p.prototype={constructor:p,isMatrix4:!0,set:function(t,e,i,r,n,o,a,s,c,u,l,h,d,f,p,m){var g=this.elements;return g[0]=t,g[4]=e,g[8]=i,g[12]=r,g[1]=n,g[5]=o,g[9]=a,g[13]=s,g[2]=c,g[6]=u,g[10]=l,g[14]=h,g[3]=d,g[7]=f,g[11]=p,g[15]=m,this},identity:function(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this},clone:function(){return(new p).fromArray(this.elements)},copy:function(t){return this.elements.set(t.elements),this},copyPosition:function(t){var e=this.elements,i=t.elements;return e[12]=i[12],e[13]=i[13],e[14]=i[14],this},extractBasis:function(t,e,i){return t.setFromMatrixColumn(this,0),e.setFromMatrixColumn(this,1),i.setFromMatrixColumn(this,2),this},makeBasis:function(t,e,i){return this.set(t.x,e.x,i.x,0,t.y,e.y,i.y,0,t.z,e.z,i.z,0,0,0,0,1),this},extractRotation:function(){var t;return function(e){void 0===t&&(t=new g);var i=this.elements,r=e.elements,n=1/t.setFromMatrixColumn(e,0).length(),o=1/t.setFromMatrixColumn(e,1).length(),a=1/t.setFromMatrixColumn(e,2).length();return i[0]=r[0]*n,i[1]=r[1]*n,i[2]=r[2]*n,i[4]=r[4]*o,i[5]=r[5]*o,i[6]=r[6]*o,i[8]=r[8]*a,i[9]=r[9]*a,i[10]=r[10]*a,this}}(),makeRotationFromEuler:function(t){(t&&t.isEuler)===!1&&console.error(\"THREE.Matrix: .makeRotationFromEuler() now expects a Euler rotation rather than a Vector3 and order.\");var e=this.elements,i=t.x,r=t.y,n=t.z,o=Math.cos(i),a=Math.sin(i),s=Math.cos(r),c=Math.sin(r),u=Math.cos(n),l=Math.sin(n);if(\"XYZ\"===t.order){var h=o*u,d=o*l,f=a*u,p=a*l;e[0]=s*u,e[4]=-s*l,e[8]=c,e[1]=d+f*c,e[5]=h-p*c,e[9]=-a*s,e[2]=p-h*c,e[6]=f+d*c,e[10]=o*s}else if(\"YXZ\"===t.order){var m=s*u,g=s*l,v=c*u,y=c*l;e[0]=m+y*a,e[4]=v*a-g,e[8]=o*c,e[1]=o*l,e[5]=o*u,e[9]=-a,e[2]=g*a-v,e[6]=y+m*a,e[10]=o*s}else if(\"ZXY\"===t.order){var m=s*u,g=s*l,v=c*u,y=c*l;e[0]=m-y*a,e[4]=-o*l,e[8]=v+g*a,e[1]=g+v*a,e[5]=o*u,e[9]=y-m*a,e[2]=-o*c,e[6]=a,e[10]=o*s}else if(\"ZYX\"===t.order){var h=o*u,d=o*l,f=a*u,p=a*l;e[0]=s*u,e[4]=f*c-d,e[8]=h*c+p,e[1]=s*l,e[5]=p*c+h,e[9]=d*c-f,e[2]=-c,e[6]=a*s,e[10]=o*s}else if(\"YZX\"===t.order){var b=o*s,x=o*c,_=a*s,w=a*c;e[0]=s*u,e[4]=w-b*l,e[8]=_*l+x,e[1]=l,e[5]=o*u,e[9]=-a*u,e[2]=-c*u,e[6]=x*l+_,e[10]=b-w*l}else if(\"XZY\"===t.order){var b=o*s,x=o*c,_=a*s,w=a*c;e[0]=s*u,e[4]=-l,e[8]=c*u,e[1]=b*l+w,e[5]=o*u,e[9]=x*l-_,e[2]=_*l-x,e[6]=a*u,e[10]=w*l+b}return e[3]=0,e[7]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this},makeRotationFromQuaternion:function(t){var e=this.elements,i=t.x,r=t.y,n=t.z,o=t.w,a=i+i,s=r+r,c=n+n,u=i*a,l=i*s,h=i*c,d=r*s,f=r*c,p=n*c,m=o*a,g=o*s,v=o*c;return e[0]=1-(d+p),e[4]=l-v,e[8]=h+g,e[1]=l+v,e[5]=1-(u+p),e[9]=f-m,e[2]=h-g,e[6]=f+m,e[10]=1-(u+d),e[3]=0,e[7]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this},lookAt:function(){var t,e,i;return function(r,n,o){void 0===t&&(t=new g,e=new g,i=new g);var a=this.elements;return i.subVectors(r,n).normalize(),0===i.lengthSq()&&(i.z=1),t.crossVectors(o,i).normalize(),0===t.lengthSq()&&(i.z+=1e-4,t.crossVectors(o,i).normalize()),e.crossVectors(i,t),a[0]=t.x,a[4]=e.x,a[8]=i.x,a[1]=t.y,a[5]=e.y,a[9]=i.y,a[2]=t.z,a[6]=e.z,a[10]=i.z,this}}(),multiply:function(t,e){return void 0!==e?(console.warn(\"THREE.Matrix4: .multiply() now only accepts one argument. Use .multiplyMatrices( a, b ) instead.\"),this.multiplyMatrices(t,e)):this.multiplyMatrices(this,t)},premultiply:function(t){return this.multiplyMatrices(t,this)},multiplyMatrices:function(t,e){var i=t.elements,r=e.elements,n=this.elements,o=i[0],a=i[4],s=i[8],c=i[12],u=i[1],l=i[5],h=i[9],d=i[13],f=i[2],p=i[6],m=i[10],g=i[14],v=i[3],y=i[7],b=i[11],x=i[15],_=r[0],w=r[4],S=r[8],A=r[12],M=r[1],P=r[5],C=r[9],T=r[13],E=r[2],I=r[6],L=r[10],R=r[14],O=r[3],D=r[7],N=r[11],k=r[15];return n[0]=o*_+a*M+s*E+c*O,n[4]=o*w+a*P+s*I+c*D,n[8]=o*S+a*C+s*L+c*N,n[12]=o*A+a*T+s*R+c*k,n[1]=u*_+l*M+h*E+d*O,n[5]=u*w+l*P+h*I+d*D,n[9]=u*S+l*C+h*L+d*N,n[13]=u*A+l*T+h*R+d*k,n[2]=f*_+p*M+m*E+g*O,n[6]=f*w+p*P+m*I+g*D,n[10]=f*S+p*C+m*L+g*N,n[14]=f*A+p*T+m*R+g*k,n[3]=v*_+y*M+b*E+x*O,n[7]=v*w+y*P+b*I+x*D,n[11]=v*S+y*C+b*L+x*N,n[15]=v*A+y*T+b*R+x*k,this},multiplyToArray:function(t,e,i){var r=this.elements;return this.multiplyMatrices(t,e),i[0]=r[0],i[1]=r[1],i[2]=r[2],i[3]=r[3],i[4]=r[4],i[5]=r[5],i[6]=r[6],i[7]=r[7],i[8]=r[8],i[9]=r[9],i[10]=r[10],i[11]=r[11],i[12]=r[12],i[13]=r[13],i[14]=r[14],i[15]=r[15],this},multiplyScalar:function(t){var e=this.elements;return e[0]*=t,e[4]*=t,e[8]*=t,e[12]*=t,e[1]*=t,e[5]*=t,e[9]*=t,e[13]*=t,e[2]*=t,e[6]*=t,e[10]*=t,e[14]*=t,e[3]*=t,e[7]*=t,e[11]*=t,e[15]*=t,this},applyToVector3Array:function(){var t;return function(e,i,r){var n=this;void 0===t&&(t=new g),void 0===i&&(i=0),void 0===r&&(r=e.length);for(var o=0,a=i;o0?(e=.5/Math.sqrt(d+1),this._w=.25/e,this._x=(l-c)*e,this._y=(o-u)*e,this._z=(a-n)*e):r>s&&r>h?(e=2*Math.sqrt(1+r-s-h),this._w=(l-c)/e,this._x=.25*e,this._y=(n+a)/e,this._z=(o+u)/e):s>h?(e=2*Math.sqrt(1+s-r-h),this._w=(o-u)/e,this._x=(n+a)/e,this._y=.25*e,this._z=(c+l)/e):(e=2*Math.sqrt(1+h-r-s),this._w=(a-n)/e,this._x=(o+u)/e,this._y=(c+l)/e,this._z=.25*e),this.onChangeCallback(),this},setFromUnitVectors:function(){var t,e,i=1e-6;return function(r,n){return void 0===t&&(t=new g),e=r.dot(n)+1,eMath.abs(r.z)?t.set(-r.y,r.x,0):t.set(0,-r.z,r.y)):t.crossVectors(r,n),this._x=t.x,this._y=t.y,this._z=t.z,this._w=e,this.normalize()}}(),inverse:function(){return this.conjugate().normalize()},conjugate:function(){return this._x*=-1,this._y*=-1,this._z*=-1,this.onChangeCallback(),this},dot:function(t){return this._x*t._x+this._y*t._y+this._z*t._z+this._w*t._w},lengthSq:function(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w},length:function(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)},normalize:function(){var t=this.length();return 0===t?(this._x=0,this._y=0,this._z=0,this._w=1):(t=1/t,this._x=this._x*t,this._y=this._y*t,this._z=this._z*t,this._w=this._w*t),this.onChangeCallback(),this},multiply:function(t,e){return void 0!==e?(console.warn(\"THREE.Quaternion: .multiply() now only accepts one argument. Use .multiplyQuaternions( a, b ) instead.\"),this.multiplyQuaternions(t,e)):this.multiplyQuaternions(this,t)},premultiply:function(t){return this.multiplyQuaternions(t,this)},multiplyQuaternions:function(t,e){var i=t._x,r=t._y,n=t._z,o=t._w,a=e._x,s=e._y,c=e._z,u=e._w;return this._x=i*u+o*a+r*c-n*s,this._y=r*u+o*s+n*a-i*c,this._z=n*u+o*c+i*s-r*a,this._w=o*u-i*a-r*s-n*c,this.onChangeCallback(),this},slerp:function(t,e){if(0===e)return this;if(1===e)return this.copy(t);var i=this._x,r=this._y,n=this._z,o=this._w,a=o*t._w+i*t._x+r*t._y+n*t._z;if(a<0?(this._w=-t._w,this._x=-t._x,this._y=-t._y,this._z=-t._z,a=-a):this.copy(t),a>=1)return this._w=o,this._x=i,this._y=r,this._z=n,this;var s=Math.sqrt(1-a*a);if(Math.abs(s)<.001)return this._w=.5*(o+this._w),this._x=.5*(i+this._x),this._y=.5*(r+this._y),this._z=.5*(n+this._z),this;var c=Math.atan2(s,a),u=Math.sin((1-e)*c)/s,l=Math.sin(e*c)/s;return this._w=o*u+this._w*l,this._x=i*u+this._x*l,this._y=r*u+this._y*l,this._z=n*u+this._z*l,this.onChangeCallback(),this},equals:function(t){return t._x===this._x&&t._y===this._y&&t._z===this._z&&t._w===this._w},fromArray:function(t,e){return void 0===e&&(e=0),this._x=t[e],this._y=t[e+1],this._z=t[e+2],this._w=t[e+3],this.onChangeCallback(),this},toArray:function(t,e){return void 0===t&&(t=[]),void 0===e&&(e=0),t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._w,t},onChange:function(t){return this.onChangeCallback=t,this},onChangeCallback:function(){}},Object.assign(m,{slerp:function(t,e,i,r){return i.copy(t).slerp(e,r)},slerpFlat:function(t,e,i,r,n,o,a){var s=i[r+0],c=i[r+1],u=i[r+2],l=i[r+3],h=n[o+0],d=n[o+1],f=n[o+2],p=n[o+3];if(l!==p||s!==h||c!==d||u!==f){var m=1-a,g=s*h+c*d+u*f+l*p,v=g>=0?1:-1,y=1-g*g;if(y>Number.EPSILON){var b=Math.sqrt(y),x=Math.atan2(b,g*v);m=Math.sin(m*x)/b,a=Math.sin(a*x)/b}var _=a*v;if(s=s*m+h*_,c=c*m+d*_,u=u*m+f*_,l=l*m+p*_,m===1-a){var w=1/Math.sqrt(s*s+c*c+u*u+l*l);s*=w,c*=w,u*=w,l*=w}}t[e]=s,t[e+1]=c,t[e+2]=u,t[e+3]=l}}),g.prototype={constructor:g,isVector3:!0,set:function(t,e,i){return this.x=t,this.y=e,this.z=i,this},setScalar:function(t){return this.x=t,this.y=t,this.z=t,this},setX:function(t){return this.x=t,this},setY:function(t){return this.y=t,this},setZ:function(t){return this.z=t,this},setComponent:function(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;default:throw new Error(\"index is out of range: \"+t)}},getComponent:function(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw new Error(\"index is out of range: \"+t)}},clone:function(){return new this.constructor(this.x,this.y,this.z)},copy:function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this},add:function(t,e){return void 0!==e?(console.warn(\"THREE.Vector3: .add() now only accepts one argument. Use .addVectors( a, b ) instead.\"),this.addVectors(t,e)):(this.x+=t.x,this.y+=t.y,this.z+=t.z,this)},addScalar:function(t){return this.x+=t,this.y+=t,this.z+=t,this},addVectors:function(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this},addScaledVector:function(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this},sub:function(t,e){return void 0!==e?(console.warn(\"THREE.Vector3: .sub() now only accepts one argument. Use .subVectors( a, b ) instead.\"),this.subVectors(t,e)):(this.x-=t.x,this.y-=t.y,this.z-=t.z,this)},subScalar:function(t){return this.x-=t,this.y-=t,this.z-=t,this},subVectors:function(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this},multiply:function(t,e){return void 0!==e?(console.warn(\"THREE.Vector3: .multiply() now only accepts one argument. Use .multiplyVectors( a, b ) instead.\"),this.multiplyVectors(t,e)):(this.x*=t.x,this.y*=t.y,this.z*=t.z,this)},multiplyScalar:function(t){return isFinite(t)?(this.x*=t,this.y*=t,this.z*=t):(this.x=0,this.y=0,this.z=0),this},multiplyVectors:function(t,e){return this.x=t.x*e.x,this.y=t.y*e.y,this.z=t.z*e.z,this},applyEuler:function(){var t;return function(e){return(e&&e.isEuler)===!1&&console.error(\"THREE.Vector3: .applyEuler() now expects an Euler rotation rather than a Vector3 and order.\"),void 0===t&&(t=new m),this.applyQuaternion(t.setFromEuler(e))}}(),applyAxisAngle:function(){var t;return function(e,i){return void 0===t&&(t=new m),this.applyQuaternion(t.setFromAxisAngle(e,i))}}(),applyMatrix3:function(t){var e=this.x,i=this.y,r=this.z,n=t.elements;return this.x=n[0]*e+n[3]*i+n[6]*r,this.y=n[1]*e+n[4]*i+n[7]*r,this.z=n[2]*e+n[5]*i+n[8]*r,this},applyMatrix4:function(t){var e=this.x,i=this.y,r=this.z,n=t.elements;return this.x=n[0]*e+n[4]*i+n[8]*r+n[12],this.y=n[1]*e+n[5]*i+n[9]*r+n[13],this.z=n[2]*e+n[6]*i+n[10]*r+n[14],this},applyProjection:function(t){var e=this.x,i=this.y,r=this.z,n=t.elements,o=1/(n[3]*e+n[7]*i+n[11]*r+n[15]);return this.x=(n[0]*e+n[4]*i+n[8]*r+n[12])*o,this.y=(n[1]*e+n[5]*i+n[9]*r+n[13])*o,this.z=(n[2]*e+n[6]*i+n[10]*r+n[14])*o,this},applyQuaternion:function(t){var e=this.x,i=this.y,r=this.z,n=t.x,o=t.y,a=t.z,s=t.w,c=s*e+o*r-a*i,u=s*i+a*e-n*r,l=s*r+n*i-o*e,h=-n*e-o*i-a*r;return this.x=c*s+h*-n+u*-a-l*-o,this.y=u*s+h*-o+l*-n-c*-a,this.z=l*s+h*-a+c*-o-u*-n,this},project:function(){var t;return function(e){return void 0===t&&(t=new p),t.multiplyMatrices(e.projectionMatrix,t.getInverse(e.matrixWorld)),this.applyProjection(t)}}(),unproject:function(){var t;return function(e){return void 0===t&&(t=new p),t.multiplyMatrices(e.matrixWorld,t.getInverse(e.projectionMatrix)),this.applyProjection(t)}}(),transformDirection:function(t){var e=this.x,i=this.y,r=this.z,n=t.elements;return this.x=n[0]*e+n[4]*i+n[8]*r,this.y=n[1]*e+n[5]*i+n[9]*r,this.z=n[2]*e+n[6]*i+n[10]*r,this.normalize()},divide:function(t){return this.x/=t.x,this.y/=t.y,this.z/=t.z,this},divideScalar:function(t){return this.multiplyScalar(1/t)},min:function(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this},max:function(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this},clamp:function(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this},clampScalar:function(){var t,e;return function(i,r){return void 0===t&&(t=new g,e=new g),t.set(i,i,i),e.set(r,r,r),this.clamp(t,e)}}(),clampLength:function(t,e){var i=this.length();return this.multiplyScalar(Math.max(t,Math.min(e,i))/i)},floor:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this},ceil:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this},round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this},roundToZero:function(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this.z=this.z<0?Math.ceil(this.z):Math.floor(this.z),this},negate:function(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this},dot:function(t){return this.x*t.x+this.y*t.y+this.z*t.z},lengthSq:function(){return this.x*this.x+this.y*this.y+this.z*this.z},length:function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)},lengthManhattan:function(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)},normalize:function(){return this.divideScalar(this.length())},setLength:function(t){return this.multiplyScalar(t/this.length())},lerp:function(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this},lerpVectors:function(t,e,i){return this.subVectors(e,t).multiplyScalar(i).add(t)},cross:function(t,e){if(void 0!==e)return console.warn(\"THREE.Vector3: .cross() now only accepts one argument. Use .crossVectors( a, b ) instead.\"),this.crossVectors(t,e);var i=this.x,r=this.y,n=this.z;return this.x=r*t.z-n*t.y,this.y=n*t.x-i*t.z,this.z=i*t.y-r*t.x,this},crossVectors:function(t,e){var i=t.x,r=t.y,n=t.z,o=e.x,a=e.y,s=e.z;return this.x=r*s-n*a,this.y=n*o-i*s,this.z=i*a-r*o,this},projectOnVector:function(t){var e=t.dot(this)/t.lengthSq();return this.copy(t).multiplyScalar(e)},projectOnPlane:function(){var t;return function(e){return void 0===t&&(t=new g),t.copy(this).projectOnVector(e),this.sub(t)}}(),reflect:function(){var t;return function(e){return void 0===t&&(t=new g),this.sub(t.copy(e).multiplyScalar(2*this.dot(e)))}}(),angleTo:function(t){var e=this.dot(t)/Math.sqrt(this.lengthSq()*t.lengthSq());return Math.acos(Fl.clamp(e,-1,1))},distanceTo:function(t){return Math.sqrt(this.distanceToSquared(t))},distanceToSquared:function(t){var e=this.x-t.x,i=this.y-t.y,r=this.z-t.z;return e*e+i*i+r*r},distanceToManhattan:function(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)+Math.abs(this.z-t.z)},setFromSpherical:function(t){var e=Math.sin(t.phi)*t.radius;return this.x=e*Math.sin(t.theta),this.y=Math.cos(t.phi)*t.radius,this.z=e*Math.cos(t.theta),this},setFromMatrixPosition:function(t){return this.setFromMatrixColumn(t,3)},setFromMatrixScale:function(t){var e=this.setFromMatrixColumn(t,0).length(),i=this.setFromMatrixColumn(t,1).length(),r=this.setFromMatrixColumn(t,2).length();return this.x=e,this.y=i,this.z=r,this},setFromMatrixColumn:function(t,e){if(\"number\"==typeof t){console.warn(\"THREE.Vector3: setFromMatrixColumn now expects ( matrix, index ).\");var i=t;t=e,e=i}return this.fromArray(t.elements,4*e)},equals:function(t){return t.x===this.x&&t.y===this.y&&t.z===this.z},fromArray:function(t,e){return void 0===e&&(e=0),this.x=t[e],this.y=t[e+1],this.z=t[e+2],this},toArray:function(t,e){return void 0===t&&(t=[]),void 0===e&&(e=0),t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t},fromAttribute:function(t,e,i){return void 0===i&&(i=0),e=e*t.itemSize+i,this.x=t.array[e],this.y=t.array[e+1],this.z=t.array[e+2],this}},y.prototype={constructor:y,set:function(t,e){return this.min.copy(t),this.max.copy(e),this},setFromPoints:function(t){var e=this;this.makeEmpty();for(var i=0,r=t.length;ithis.max.x||t.ythis.max.y)},containsBox:function(t){return this.min.x<=t.min.x&&t.max.x<=this.max.x&&this.min.y<=t.min.y&&t.max.y<=this.max.y},getParameter:function(t,e){var i=e||new h;return i.set((t.x-this.min.x)/(this.max.x-this.min.x),(t.y-this.min.y)/(this.max.y-this.min.y))},intersectsBox:function(t){return!(t.max.xthis.max.x||t.max.ythis.max.y)},clampPoint:function(t,e){var i=e||new h;return i.copy(t).clamp(this.min,this.max)},distanceToPoint:function(){var t=new h;return function(e){var i=t.copy(e).clamp(this.min,this.max);return i.sub(e).length()}}(),intersect:function(t){return this.min.max(t.min),this.max.min(t.max),this},union:function(t){return this.min.min(t.min),this.max.max(t.max),this},translate:function(t){return this.min.add(t),this.max.add(t),this},equals:function(t){return t.min.equals(this.min)&&t.max.equals(this.max)}},x.prototype=Object.create(d.prototype),x.prototype.constructor=x,x.prototype.isCubeTexture=!0,Object.defineProperty(x.prototype,\"images\",{get:function(){return this.image},set:function(t){\nthis.image=t}});var zl=new d,Ul=new x,jl=[],$l=[];K.prototype.setValue=function(t,e){for(var i=this.seq,r=0,n=i.length;r!==n;++r){var o=i[r];o.setValue(t,e[o.id])}};var Vl=/([\\w\\d_]+)(\\])?(\\[|\\.)?/g;tt.prototype.setValue=function(t,e,i){var r=this.map[e];void 0!==r&&r.setValue(t,i,this.renderer)},tt.prototype.set=function(t,e,i){var r=this.map[i];void 0!==r&&r.setValue(t,e[i],this.renderer)},tt.prototype.setOptional=function(t,e,i){var r=e[i];void 0!==r&&this.setValue(t,i,r)},tt.upload=function(t,e,i,r){for(var n=0,o=e.length;n!==o;++n){var a=e[n],s=i[a.id];s.needsUpdate!==!1&&a.setValue(t,s.value,r)}},tt.seqWithValue=function(t,e){for(var i=[],r=0,n=t.length;r!==n;++r){var o=t[r];o.id in e&&i.push(o)}return i},tt.splitDynamic=function(t,e){for(var i=null,r=t.length,n=0,o=0;o!==r;++o){var a=t[o],s=e[a.id];s&&s.dynamic===!0?(null===i&&(i=[]),i.push(a)):(ny&&v>b?vb?y0&&(r.alphaTest=this.alphaTest),this.premultipliedAlpha===!0&&(r.premultipliedAlpha=this.premultipliedAlpha),this.wireframe===!0&&(r.wireframe=this.wireframe),this.wireframeLinewidth>1&&(r.wireframeLinewidth=this.wireframeLinewidth),\"round\"!==this.wireframeLinecap&&(r.wireframeLinecap=this.wireframeLinecap),\"round\"!==this.wireframeLinejoin&&(r.wireframeLinejoin=this.wireframeLinejoin),r.skinning=this.skinning,r.morphTargets=this.morphTargets,i){var n=e(t.textures),o=e(t.images);n.length>0&&(r.textures=n),o.length>0&&(r.images=o)}return r},clone:function(){return(new this.constructor).copy(this)},copy:function(t){this.name=t.name,this.fog=t.fog,this.lights=t.lights,this.blending=t.blending,this.side=t.side,this.shading=t.shading,this.vertexColors=t.vertexColors,this.opacity=t.opacity,this.transparent=t.transparent,this.blendSrc=t.blendSrc,this.blendDst=t.blendDst,this.blendEquation=t.blendEquation,this.blendSrcAlpha=t.blendSrcAlpha,this.blendDstAlpha=t.blendDstAlpha,this.blendEquationAlpha=t.blendEquationAlpha,this.depthFunc=t.depthFunc,this.depthTest=t.depthTest,this.depthWrite=t.depthWrite,this.colorWrite=t.colorWrite,this.precision=t.precision,this.polygonOffset=t.polygonOffset,this.polygonOffsetFactor=t.polygonOffsetFactor,this.polygonOffsetUnits=t.polygonOffsetUnits,this.alphaTest=t.alphaTest,this.premultipliedAlpha=t.premultipliedAlpha,this.overdraw=t.overdraw,this.visible=t.visible,this.clipShadows=t.clipShadows;var e=t.clippingPlanes,i=null;if(null!==e){var r=e.length;i=new Array(r);for(var n=0;n!==r;++n)i[n]=e[n].clone()}return this.clippingPlanes=i,this},update:function(){this.dispatchEvent({type:\"update\"})},dispose:function(){this.dispatchEvent({type:\"dispose\"})}},Object.assign(ot.prototype,l.prototype);var Gl=0,Hl={merge:function(t){for(var e=this,i={},r=0;r 0.0 ) {\\n#if defined ( PHYSICALLY_CORRECT_LIGHTS )\\n\\t\\t\\tfloat distanceFalloff = 1.0 / max( pow( lightDistance, decayExponent ), 0.01 );\\n\\t\\t\\tfloat maxDistanceCutoffFactor = pow2( saturate( 1.0 - pow4( lightDistance / cutoffDistance ) ) );\\n\\t\\t\\treturn distanceFalloff * maxDistanceCutoffFactor;\\n#else\\n\\t\\t\\treturn pow( saturate( -lightDistance / cutoffDistance + 1.0 ), decayExponent );\\n#endif\\n\\t\\t}\\n\\t\\treturn 1.0;\\n}\\nvec3 BRDF_Diffuse_Lambert( const in vec3 diffuseColor ) {\\n\\treturn RECIPROCAL_PI * diffuseColor;\\n}\\nvec3 F_Schlick( const in vec3 specularColor, const in float dotLH ) {\\n\\tfloat fresnel = exp2( ( -5.55473 * dotLH - 6.98316 ) * dotLH );\\n\\treturn ( 1.0 - specularColor ) * fresnel + specularColor;\\n}\\nfloat G_GGX_Smith( const in float alpha, const in float dotNL, const in float dotNV ) {\\n\\tfloat a2 = pow2( alpha );\\n\\tfloat gl = dotNL + sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNL ) );\\n\\tfloat gv = dotNV + sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNV ) );\\n\\treturn 1.0 / ( gl * gv );\\n}\\nfloat G_GGX_SmithCorrelated( const in float alpha, const in float dotNL, const in float dotNV ) {\\n\\tfloat a2 = pow2( alpha );\\n\\tfloat gv = dotNL * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNV ) );\\n\\tfloat gl = dotNV * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNL ) );\\n\\treturn 0.5 / max( gv + gl, EPSILON );\\n}\\nfloat D_GGX( const in float alpha, const in float dotNH ) {\\n\\tfloat a2 = pow2( alpha );\\n\\tfloat denom = pow2( dotNH ) * ( a2 - 1.0 ) + 1.0;\\n\\treturn RECIPROCAL_PI * a2 / pow2( denom );\\n}\\nvec3 BRDF_Specular_GGX( const in IncidentLight incidentLight, const in GeometricContext geometry, const in vec3 specularColor, const in float roughness ) {\\n\\tfloat alpha = pow2( roughness );\\n\\tvec3 halfDir = normalize( incidentLight.direction + geometry.viewDir );\\n\\tfloat dotNL = saturate( dot( geometry.normal, incidentLight.direction ) );\\n\\tfloat dotNV = saturate( dot( geometry.normal, geometry.viewDir ) );\\n\\tfloat dotNH = saturate( dot( geometry.normal, halfDir ) );\\n\\tfloat dotLH = saturate( dot( incidentLight.direction, halfDir ) );\\n\\tvec3 F = F_Schlick( specularColor, dotLH );\\n\\tfloat G = G_GGX_SmithCorrelated( alpha, dotNL, dotNV );\\n\\tfloat D = D_GGX( alpha, dotNH );\\n\\treturn F * ( G * D );\\n}\\nvec3 BRDF_Specular_GGX_Environment( const in GeometricContext geometry, const in vec3 specularColor, const in float roughness ) {\\n\\tfloat dotNV = saturate( dot( geometry.normal, geometry.viewDir ) );\\n\\tconst vec4 c0 = vec4( - 1, - 0.0275, - 0.572, 0.022 );\\n\\tconst vec4 c1 = vec4( 1, 0.0425, 1.04, - 0.04 );\\n\\tvec4 r = roughness * c0 + c1;\\n\\tfloat a004 = min( r.x * r.x, exp2( - 9.28 * dotNV ) ) * r.x + r.y;\\n\\tvec2 AB = vec2( -1.04, 1.04 ) * a004 + r.zw;\\n\\treturn specularColor * AB.x + AB.y;\\n}\\nfloat G_BlinnPhong_Implicit( ) {\\n\\treturn 0.25;\\n}\\nfloat D_BlinnPhong( const in float shininess, const in float dotNH ) {\\n\\treturn RECIPROCAL_PI * ( shininess * 0.5 + 1.0 ) * pow( dotNH, shininess );\\n}\\nvec3 BRDF_Specular_BlinnPhong( const in IncidentLight incidentLight, const in GeometricContext geometry, const in vec3 specularColor, const in float shininess ) {\\n\\tvec3 halfDir = normalize( incidentLight.direction + geometry.viewDir );\\n\\tfloat dotNH = saturate( dot( geometry.normal, halfDir ) );\\n\\tfloat dotLH = saturate( dot( incidentLight.direction, halfDir ) );\\n\\tvec3 F = F_Schlick( specularColor, dotLH );\\n\\tfloat G = G_BlinnPhong_Implicit( );\\n\\tfloat D = D_BlinnPhong( shininess, dotNH );\\n\\treturn F * ( G * D );\\n}\\nfloat GGXRoughnessToBlinnExponent( const in float ggxRoughness ) {\\n\\treturn ( 2.0 / pow2( ggxRoughness + 0.0001 ) - 2.0 );\\n}\\nfloat BlinnExponentToGGXRoughness( const in float blinnExponent ) {\\n\\treturn sqrt( 2.0 / ( blinnExponent + 2.0 ) );\\n}\\n\",th=\"#ifdef USE_BUMPMAP\\n\\tuniform sampler2D bumpMap;\\n\\tuniform float bumpScale;\\n\\tvec2 dHdxy_fwd() {\\n\\t\\tvec2 dSTdx = dFdx( vUv );\\n\\t\\tvec2 dSTdy = dFdy( vUv );\\n\\t\\tfloat Hll = bumpScale * texture2D( bumpMap, vUv ).x;\\n\\t\\tfloat dBx = bumpScale * texture2D( bumpMap, vUv + dSTdx ).x - Hll;\\n\\t\\tfloat dBy = bumpScale * texture2D( bumpMap, vUv + dSTdy ).x - Hll;\\n\\t\\treturn vec2( dBx, dBy );\\n\\t}\\n\\tvec3 perturbNormalArb( vec3 surf_pos, vec3 surf_norm, vec2 dHdxy ) {\\n\\t\\tvec3 vSigmaX = dFdx( surf_pos );\\n\\t\\tvec3 vSigmaY = dFdy( surf_pos );\\n\\t\\tvec3 vN = surf_norm;\\n\\t\\tvec3 R1 = cross( vSigmaY, vN );\\n\\t\\tvec3 R2 = cross( vN, vSigmaX );\\n\\t\\tfloat fDet = dot( vSigmaX, R1 );\\n\\t\\tvec3 vGrad = sign( fDet ) * ( dHdxy.x * R1 + dHdxy.y * R2 );\\n\\t\\treturn normalize( abs( fDet ) * surf_norm - vGrad );\\n\\t}\\n#endif\\n\",eh=\"#if NUM_CLIPPING_PLANES > 0\\n\\tfor ( int i = 0; i < NUM_CLIPPING_PLANES; ++ i ) {\\n\\t\\tvec4 plane = clippingPlanes[ i ];\\n\\t\\tif ( dot( vViewPosition, plane.xyz ) > plane.w ) discard;\\n\\t}\\n#endif\\n\",ih=\"#if NUM_CLIPPING_PLANES > 0\\n\\t#if ! defined( PHYSICAL ) && ! defined( PHONG )\\n\\t\\tvarying vec3 vViewPosition;\\n\\t#endif\\n\\tuniform vec4 clippingPlanes[ NUM_CLIPPING_PLANES ];\\n#endif\\n\",rh=\"#if NUM_CLIPPING_PLANES > 0 && ! defined( PHYSICAL ) && ! defined( PHONG )\\n\\tvarying vec3 vViewPosition;\\n#endif\\n\",nh=\"#if NUM_CLIPPING_PLANES > 0 && ! defined( PHYSICAL ) && ! defined( PHONG )\\n\\tvViewPosition = - mvPosition.xyz;\\n#endif\\n\",oh=\"#ifdef USE_COLOR\\n\\tdiffuseColor.rgb *= vColor;\\n#endif\",ah=\"#ifdef USE_COLOR\\n\\tvarying vec3 vColor;\\n#endif\\n\",sh=\"#ifdef USE_COLOR\\n\\tvarying vec3 vColor;\\n#endif\",ch=\"#ifdef USE_COLOR\\n\\tvColor.xyz = color.xyz;\\n#endif\",uh=\"#define PI 3.14159265359\\n#define PI2 6.28318530718\\n#define RECIPROCAL_PI 0.31830988618\\n#define RECIPROCAL_PI2 0.15915494\\n#define LOG2 1.442695\\n#define EPSILON 1e-6\\n#define saturate(a) clamp( a, 0.0, 1.0 )\\n#define whiteCompliment(a) ( 1.0 - saturate( a ) )\\nfloat pow2( const in float x ) { return x*x; }\\nfloat pow3( const in float x ) { return x*x*x; }\\nfloat pow4( const in float x ) { float x2 = x*x; return x2*x2; }\\nfloat average( const in vec3 color ) { return dot( color, vec3( 0.3333 ) ); }\\nhighp float rand( const in vec2 uv ) {\\n\\tconst highp float a = 12.9898, b = 78.233, c = 43758.5453;\\n\\thighp float dt = dot( uv.xy, vec2( a,b ) ), sn = mod( dt, PI );\\n\\treturn fract(sin(sn) * c);\\n}\\nstruct IncidentLight {\\n\\tvec3 color;\\n\\tvec3 direction;\\n\\tbool visible;\\n};\\nstruct ReflectedLight {\\n\\tvec3 directDiffuse;\\n\\tvec3 directSpecular;\\n\\tvec3 indirectDiffuse;\\n\\tvec3 indirectSpecular;\\n};\\nstruct GeometricContext {\\n\\tvec3 position;\\n\\tvec3 normal;\\n\\tvec3 viewDir;\\n};\\nvec3 transformDirection( in vec3 dir, in mat4 matrix ) {\\n\\treturn normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );\\n}\\nvec3 inverseTransformDirection( in vec3 dir, in mat4 matrix ) {\\n\\treturn normalize( ( vec4( dir, 0.0 ) * matrix ).xyz );\\n}\\nvec3 projectOnPlane(in vec3 point, in vec3 pointOnPlane, in vec3 planeNormal ) {\\n\\tfloat distance = dot( planeNormal, point - pointOnPlane );\\n\\treturn - distance * planeNormal + point;\\n}\\nfloat sideOfPlane( in vec3 point, in vec3 pointOnPlane, in vec3 planeNormal ) {\\n\\treturn sign( dot( point - pointOnPlane, planeNormal ) );\\n}\\nvec3 linePlaneIntersect( in vec3 pointOnLine, in vec3 lineDirection, in vec3 pointOnPlane, in vec3 planeNormal ) {\\n\\treturn lineDirection * ( dot( planeNormal, pointOnPlane - pointOnLine ) / dot( planeNormal, lineDirection ) ) + pointOnLine;\\n}\\n\",lh=\"#ifdef ENVMAP_TYPE_CUBE_UV\\n#define cubeUV_textureSize (1024.0)\\nint getFaceFromDirection(vec3 direction) {\\n\\tvec3 absDirection = abs(direction);\\n\\tint face = -1;\\n\\tif( absDirection.x > absDirection.z ) {\\n\\t\\tif(absDirection.x > absDirection.y )\\n\\t\\t\\tface = direction.x > 0.0 ? 0 : 3;\\n\\t\\telse\\n\\t\\t\\tface = direction.y > 0.0 ? 1 : 4;\\n\\t}\\n\\telse {\\n\\t\\tif(absDirection.z > absDirection.y )\\n\\t\\t\\tface = direction.z > 0.0 ? 2 : 5;\\n\\t\\telse\\n\\t\\t\\tface = direction.y > 0.0 ? 1 : 4;\\n\\t}\\n\\treturn face;\\n}\\n#define cubeUV_maxLods1 (log2(cubeUV_textureSize*0.25) - 1.0)\\n#define cubeUV_rangeClamp (exp2((6.0 - 1.0) * 2.0))\\nvec2 MipLevelInfo( vec3 vec, float roughnessLevel, float roughness ) {\\n\\tfloat scale = exp2(cubeUV_maxLods1 - roughnessLevel);\\n\\tfloat dxRoughness = dFdx(roughness);\\n\\tfloat dyRoughness = dFdy(roughness);\\n\\tvec3 dx = dFdx( vec * scale * dxRoughness );\\n\\tvec3 dy = dFdy( vec * scale * dyRoughness );\\n\\tfloat d = max( dot( dx, dx ), dot( dy, dy ) );\\n\\td = clamp(d, 1.0, cubeUV_rangeClamp);\\n\\tfloat mipLevel = 0.5 * log2(d);\\n\\treturn vec2(floor(mipLevel), fract(mipLevel));\\n}\\n#define cubeUV_maxLods2 (log2(cubeUV_textureSize*0.25) - 2.0)\\n#define cubeUV_rcpTextureSize (1.0 / cubeUV_textureSize)\\nvec2 getCubeUV(vec3 direction, float roughnessLevel, float mipLevel) {\\n\\tmipLevel = roughnessLevel > cubeUV_maxLods2 - 3.0 ? 0.0 : mipLevel;\\n\\tfloat a = 16.0 * cubeUV_rcpTextureSize;\\n\\tvec2 exp2_packed = exp2( vec2( roughnessLevel, mipLevel ) );\\n\\tvec2 rcp_exp2_packed = vec2( 1.0 ) / exp2_packed;\\n\\tfloat powScale = exp2_packed.x * exp2_packed.y;\\n\\tfloat scale = rcp_exp2_packed.x * rcp_exp2_packed.y * 0.25;\\n\\tfloat mipOffset = 0.75*(1.0 - rcp_exp2_packed.y) * rcp_exp2_packed.x;\\n\\tbool bRes = mipLevel == 0.0;\\n\\tscale = bRes && (scale < a) ? a : scale;\\n\\tvec3 r;\\n\\tvec2 offset;\\n\\tint face = getFaceFromDirection(direction);\\n\\tfloat rcpPowScale = 1.0 / powScale;\\n\\tif( face == 0) {\\n\\t\\tr = vec3(direction.x, -direction.z, direction.y);\\n\\t\\toffset = vec2(0.0+mipOffset,0.75 * rcpPowScale);\\n\\t\\toffset.y = bRes && (offset.y < 2.0*a) ? a : offset.y;\\n\\t}\\n\\telse if( face == 1) {\\n\\t\\tr = vec3(direction.y, direction.x, direction.z);\\n\\t\\toffset = vec2(scale+mipOffset, 0.75 * rcpPowScale);\\n\\t\\toffset.y = bRes && (offset.y < 2.0*a) ? a : offset.y;\\n\\t}\\n\\telse if( face == 2) {\\n\\t\\tr = vec3(direction.z, direction.x, direction.y);\\n\\t\\toffset = vec2(2.0*scale+mipOffset, 0.75 * rcpPowScale);\\n\\t\\toffset.y = bRes && (offset.y < 2.0*a) ? a : offset.y;\\n\\t}\\n\\telse if( face == 3) {\\n\\t\\tr = vec3(direction.x, direction.z, direction.y);\\n\\t\\toffset = vec2(0.0+mipOffset,0.5 * rcpPowScale);\\n\\t\\toffset.y = bRes && (offset.y < 2.0*a) ? 0.0 : offset.y;\\n\\t}\\n\\telse if( face == 4) {\\n\\t\\tr = vec3(direction.y, direction.x, -direction.z);\\n\\t\\toffset = vec2(scale+mipOffset, 0.5 * rcpPowScale);\\n\\t\\toffset.y = bRes && (offset.y < 2.0*a) ? 0.0 : offset.y;\\n\\t}\\n\\telse {\\n\\t\\tr = vec3(direction.z, -direction.x, direction.y);\\n\\t\\toffset = vec2(2.0*scale+mipOffset, 0.5 * rcpPowScale);\\n\\t\\toffset.y = bRes && (offset.y < 2.0*a) ? 0.0 : offset.y;\\n\\t}\\n\\tr = normalize(r);\\n\\tfloat texelOffset = 0.5 * cubeUV_rcpTextureSize;\\n\\tvec2 s = ( r.yz / abs( r.x ) + vec2( 1.0 ) ) * 0.5;\\n\\tvec2 base = offset + vec2( texelOffset );\\n\\treturn base + s * ( scale - 2.0 * texelOffset );\\n}\\n#define cubeUV_maxLods3 (log2(cubeUV_textureSize*0.25) - 3.0)\\nvec4 textureCubeUV(vec3 reflectedDirection, float roughness ) {\\n\\tfloat roughnessVal = roughness* cubeUV_maxLods3;\\n\\tfloat r1 = floor(roughnessVal);\\n\\tfloat r2 = r1 + 1.0;\\n\\tfloat t = fract(roughnessVal);\\n\\tvec2 mipInfo = MipLevelInfo(reflectedDirection, r1, roughness);\\n\\tfloat s = mipInfo.y;\\n\\tfloat level0 = mipInfo.x;\\n\\tfloat level1 = level0 + 1.0;\\n\\tlevel1 = level1 > 5.0 ? 5.0 : level1;\\n\\tlevel0 += min( floor( s + 0.5 ), 5.0 );\\n\\tvec2 uv_10 = getCubeUV(reflectedDirection, r1, level0);\\n\\tvec4 color10 = envMapTexelToLinear(texture2D(envMap, uv_10));\\n\\tvec2 uv_20 = getCubeUV(reflectedDirection, r2, level0);\\n\\tvec4 color20 = envMapTexelToLinear(texture2D(envMap, uv_20));\\n\\tvec4 result = mix(color10, color20, t);\\n\\treturn vec4(result.rgb, 1.0);\\n}\\n#endif\\n\",hh=\"#ifdef FLIP_SIDED\\n\\tobjectNormal = -objectNormal;\\n#endif\\nvec3 transformedNormal = normalMatrix * objectNormal;\\n\",dh=\"#ifdef USE_DISPLACEMENTMAP\\n\\tuniform sampler2D displacementMap;\\n\\tuniform float displacementScale;\\n\\tuniform float displacementBias;\\n#endif\\n\",fh=\"#ifdef USE_DISPLACEMENTMAP\\n\\ttransformed += normal * ( texture2D( displacementMap, uv ).x * displacementScale + displacementBias );\\n#endif\\n\",ph=\"#ifdef USE_EMISSIVEMAP\\n\\tvec4 emissiveColor = texture2D( emissiveMap, vUv );\\n\\temissiveColor.rgb = emissiveMapTexelToLinear( emissiveColor ).rgb;\\n\\ttotalEmissiveRadiance *= emissiveColor.rgb;\\n#endif\\n\",mh=\"#ifdef USE_EMISSIVEMAP\\n\\tuniform sampler2D emissiveMap;\\n#endif\\n\",gh=\" gl_FragColor = linearToOutputTexel( gl_FragColor );\\n\",vh=\"\\nvec4 LinearToLinear( in vec4 value ) {\\n return value;\\n}\\nvec4 GammaToLinear( in vec4 value, in float gammaFactor ) {\\n return vec4( pow( value.xyz, vec3( gammaFactor ) ), value.w );\\n}\\nvec4 LinearToGamma( in vec4 value, in float gammaFactor ) {\\n return vec4( pow( value.xyz, vec3( 1.0 / gammaFactor ) ), value.w );\\n}\\nvec4 sRGBToLinear( in vec4 value ) {\\n return vec4( mix( pow( value.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), value.rgb * 0.0773993808, vec3( lessThanEqual( value.rgb, vec3( 0.04045 ) ) ) ), value.w );\\n}\\nvec4 LinearTosRGB( in vec4 value ) {\\n return vec4( mix( pow( value.rgb, vec3( 0.41666 ) ) * 1.055 - vec3( 0.055 ), value.rgb * 12.92, vec3( lessThanEqual( value.rgb, vec3( 0.0031308 ) ) ) ), value.w );\\n}\\nvec4 RGBEToLinear( in vec4 value ) {\\n return vec4( value.rgb * exp2( value.a * 255.0 - 128.0 ), 1.0 );\\n}\\nvec4 LinearToRGBE( in vec4 value ) {\\n float maxComponent = max( max( value.r, value.g ), value.b );\\n float fExp = clamp( ceil( log2( maxComponent ) ), -128.0, 127.0 );\\n return vec4( value.rgb / exp2( fExp ), ( fExp + 128.0 ) / 255.0 );\\n}\\nvec4 RGBMToLinear( in vec4 value, in float maxRange ) {\\n return vec4( value.xyz * value.w * maxRange, 1.0 );\\n}\\nvec4 LinearToRGBM( in vec4 value, in float maxRange ) {\\n float maxRGB = max( value.x, max( value.g, value.b ) );\\n float M = clamp( maxRGB / maxRange, 0.0, 1.0 );\\n M = ceil( M * 255.0 ) / 255.0;\\n return vec4( value.rgb / ( M * maxRange ), M );\\n}\\nvec4 RGBDToLinear( in vec4 value, in float maxRange ) {\\n return vec4( value.rgb * ( ( maxRange / 255.0 ) / value.a ), 1.0 );\\n}\\nvec4 LinearToRGBD( in vec4 value, in float maxRange ) {\\n float maxRGB = max( value.x, max( value.g, value.b ) );\\n float D = max( maxRange / maxRGB, 1.0 );\\n D = min( floor( D ) / 255.0, 1.0 );\\n return vec4( value.rgb * ( D * ( 255.0 / maxRange ) ), D );\\n}\\nconst mat3 cLogLuvM = mat3( 0.2209, 0.3390, 0.4184, 0.1138, 0.6780, 0.7319, 0.0102, 0.1130, 0.2969 );\\nvec4 LinearToLogLuv( in vec4 value ) {\\n vec3 Xp_Y_XYZp = value.rgb * cLogLuvM;\\n Xp_Y_XYZp = max(Xp_Y_XYZp, vec3(1e-6, 1e-6, 1e-6));\\n vec4 vResult;\\n vResult.xy = Xp_Y_XYZp.xy / Xp_Y_XYZp.z;\\n float Le = 2.0 * log2(Xp_Y_XYZp.y) + 127.0;\\n vResult.w = fract(Le);\\n vResult.z = (Le - (floor(vResult.w*255.0))/255.0)/255.0;\\n return vResult;\\n}\\nconst mat3 cLogLuvInverseM = mat3( 6.0014, -2.7008, -1.7996, -1.3320, 3.1029, -5.7721, 0.3008, -1.0882, 5.6268 );\\nvec4 LogLuvToLinear( in vec4 value ) {\\n float Le = value.z * 255.0 + value.w;\\n vec3 Xp_Y_XYZp;\\n Xp_Y_XYZp.y = exp2((Le - 127.0) / 2.0);\\n Xp_Y_XYZp.z = Xp_Y_XYZp.y / value.y;\\n Xp_Y_XYZp.x = value.x * Xp_Y_XYZp.z;\\n vec3 vRGB = Xp_Y_XYZp.rgb * cLogLuvInverseM;\\n return vec4( max(vRGB, 0.0), 1.0 );\\n}\\n\",yh=\"#ifdef USE_ENVMAP\\n\\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG )\\n\\t\\tvec3 cameraToVertex = normalize( vWorldPosition - cameraPosition );\\n\\t\\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\\n\\t\\t#ifdef ENVMAP_MODE_REFLECTION\\n\\t\\t\\tvec3 reflectVec = reflect( cameraToVertex, worldNormal );\\n\\t\\t#else\\n\\t\\t\\tvec3 reflectVec = refract( cameraToVertex, worldNormal, refractionRatio );\\n\\t\\t#endif\\n\\t#else\\n\\t\\tvec3 reflectVec = vReflect;\\n\\t#endif\\n\\t#ifdef ENVMAP_TYPE_CUBE\\n\\t\\tvec4 envColor = textureCube( envMap, flipNormal * vec3( flipEnvMap * reflectVec.x, reflectVec.yz ) );\\n\\t#elif defined( ENVMAP_TYPE_EQUIREC )\\n\\t\\tvec2 sampleUV;\\n\\t\\tsampleUV.y = saturate( flipNormal * reflectVec.y * 0.5 + 0.5 );\\n\\t\\tsampleUV.x = atan( flipNormal * reflectVec.z, flipNormal * reflectVec.x ) * RECIPROCAL_PI2 + 0.5;\\n\\t\\tvec4 envColor = texture2D( envMap, sampleUV );\\n\\t#elif defined( ENVMAP_TYPE_SPHERE )\\n\\t\\tvec3 reflectView = flipNormal * normalize( ( viewMatrix * vec4( reflectVec, 0.0 ) ).xyz + vec3( 0.0, 0.0, 1.0 ) );\\n\\t\\tvec4 envColor = texture2D( envMap, reflectView.xy * 0.5 + 0.5 );\\n\\t#else\\n\\t\\tvec4 envColor = vec4( 0.0 );\\n\\t#endif\\n\\tenvColor = envMapTexelToLinear( envColor );\\n\\t#ifdef ENVMAP_BLENDING_MULTIPLY\\n\\t\\toutgoingLight = mix( outgoingLight, outgoingLight * envColor.xyz, specularStrength * reflectivity );\\n\\t#elif defined( ENVMAP_BLENDING_MIX )\\n\\t\\toutgoingLight = mix( outgoingLight, envColor.xyz, specularStrength * reflectivity );\\n\\t#elif defined( ENVMAP_BLENDING_ADD )\\n\\t\\toutgoingLight += envColor.xyz * specularStrength * reflectivity;\\n\\t#endif\\n#endif\\n\",bh=\"#if defined( USE_ENVMAP ) || defined( PHYSICAL )\\n\\tuniform float reflectivity;\\n\\tuniform float envMapIntenstiy;\\n#endif\\n#ifdef USE_ENVMAP\\n\\t#if ! defined( PHYSICAL ) && ( defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) )\\n\\t\\tvarying vec3 vWorldPosition;\\n\\t#endif\\n\\t#ifdef ENVMAP_TYPE_CUBE\\n\\t\\tuniform samplerCube envMap;\\n\\t#else\\n\\t\\tuniform sampler2D envMap;\\n\\t#endif\\n\\tuniform float flipEnvMap;\\n\\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) || defined( PHYSICAL )\\n\\t\\tuniform float refractionRatio;\\n\\t#else\\n\\t\\tvarying vec3 vReflect;\\n\\t#endif\\n#endif\\n\",xh=\"#ifdef USE_ENVMAP\\n\\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG )\\n\\t\\tvarying vec3 vWorldPosition;\\n\\t#else\\n\\t\\tvarying vec3 vReflect;\\n\\t\\tuniform float refractionRatio;\\n\\t#endif\\n#endif\\n\",_h=\"#ifdef USE_ENVMAP\\n\\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG )\\n\\t\\tvWorldPosition = worldPosition.xyz;\\n\\t#else\\n\\t\\tvec3 cameraToVertex = normalize( worldPosition.xyz - cameraPosition );\\n\\t\\tvec3 worldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\\n\\t\\t#ifdef ENVMAP_MODE_REFLECTION\\n\\t\\t\\tvReflect = reflect( cameraToVertex, worldNormal );\\n\\t\\t#else\\n\\t\\t\\tvReflect = refract( cameraToVertex, worldNormal, refractionRatio );\\n\\t\\t#endif\\n\\t#endif\\n#endif\\n\",wh=\"#ifdef USE_FOG\\n\\t#ifdef USE_LOGDEPTHBUF_EXT\\n\\t\\tfloat depth = gl_FragDepthEXT / gl_FragCoord.w;\\n\\t#else\\n\\t\\tfloat depth = gl_FragCoord.z / gl_FragCoord.w;\\n\\t#endif\\n\\t#ifdef FOG_EXP2\\n\\t\\tfloat fogFactor = whiteCompliment( exp2( - fogDensity * fogDensity * depth * depth * LOG2 ) );\\n\\t#else\\n\\t\\tfloat fogFactor = smoothstep( fogNear, fogFar, depth );\\n\\t#endif\\n\\tgl_FragColor.rgb = mix( gl_FragColor.rgb, fogColor, fogFactor );\\n#endif\\n\",Sh=\"#ifdef USE_FOG\\n\\tuniform vec3 fogColor;\\n\\t#ifdef FOG_EXP2\\n\\t\\tuniform float fogDensity;\\n\\t#else\\n\\t\\tuniform float fogNear;\\n\\t\\tuniform float fogFar;\\n\\t#endif\\n#endif\",Ah=\"#ifdef USE_LIGHTMAP\\n\\treflectedLight.indirectDiffuse += PI * texture2D( lightMap, vUv2 ).xyz * lightMapIntensity;\\n#endif\\n\",Mh=\"#ifdef USE_LIGHTMAP\\n\\tuniform sampler2D lightMap;\\n\\tuniform float lightMapIntensity;\\n#endif\",Ph=\"vec3 diffuse = vec3( 1.0 );\\nGeometricContext geometry;\\ngeometry.position = mvPosition.xyz;\\ngeometry.normal = normalize( transformedNormal );\\ngeometry.viewDir = normalize( -mvPosition.xyz );\\nGeometricContext backGeometry;\\nbackGeometry.position = geometry.position;\\nbackGeometry.normal = -geometry.normal;\\nbackGeometry.viewDir = geometry.viewDir;\\nvLightFront = vec3( 0.0 );\\n#ifdef DOUBLE_SIDED\\n\\tvLightBack = vec3( 0.0 );\\n#endif\\nIncidentLight directLight;\\nfloat dotNL;\\nvec3 directLightColor_Diffuse;\\n#if NUM_POINT_LIGHTS > 0\\n\\tfor ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\\n\\t\\tgetPointDirectLightIrradiance( pointLights[ i ], geometry, directLight );\\n\\t\\tdotNL = dot( geometry.normal, directLight.direction );\\n\\t\\tdirectLightColor_Diffuse = PI * directLight.color;\\n\\t\\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\\n\\t\\t#ifdef DOUBLE_SIDED\\n\\t\\t\\tvLightBack += saturate( -dotNL ) * directLightColor_Diffuse;\\n\\t\\t#endif\\n\\t}\\n#endif\\n#if NUM_SPOT_LIGHTS > 0\\n\\tfor ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\\n\\t\\tgetSpotDirectLightIrradiance( spotLights[ i ], geometry, directLight );\\n\\t\\tdotNL = dot( geometry.normal, directLight.direction );\\n\\t\\tdirectLightColor_Diffuse = PI * directLight.color;\\n\\t\\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\\n\\t\\t#ifdef DOUBLE_SIDED\\n\\t\\t\\tvLightBack += saturate( -dotNL ) * directLightColor_Diffuse;\\n\\t\\t#endif\\n\\t}\\n#endif\\n#if NUM_DIR_LIGHTS > 0\\n\\tfor ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\\n\\t\\tgetDirectionalDirectLightIrradiance( directionalLights[ i ], geometry, directLight );\\n\\t\\tdotNL = dot( geometry.normal, directLight.direction );\\n\\t\\tdirectLightColor_Diffuse = PI * directLight.color;\\n\\t\\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\\n\\t\\t#ifdef DOUBLE_SIDED\\n\\t\\t\\tvLightBack += saturate( -dotNL ) * directLightColor_Diffuse;\\n\\t\\t#endif\\n\\t}\\n#endif\\n#if NUM_HEMI_LIGHTS > 0\\n\\tfor ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {\\n\\t\\tvLightFront += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry );\\n\\t\\t#ifdef DOUBLE_SIDED\\n\\t\\t\\tvLightBack += getHemisphereLightIrradiance( hemisphereLights[ i ], backGeometry );\\n\\t\\t#endif\\n\\t}\\n#endif\\n\",Ch=\"uniform vec3 ambientLightColor;\\nvec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {\\n\\tvec3 irradiance = ambientLightColor;\\n\\t#ifndef PHYSICALLY_CORRECT_LIGHTS\\n\\t\\tirradiance *= PI;\\n\\t#endif\\n\\treturn irradiance;\\n}\\n#if NUM_DIR_LIGHTS > 0\\n\\tstruct DirectionalLight {\\n\\t\\tvec3 direction;\\n\\t\\tvec3 color;\\n\\t\\tint shadow;\\n\\t\\tfloat shadowBias;\\n\\t\\tfloat shadowRadius;\\n\\t\\tvec2 shadowMapSize;\\n\\t};\\n\\tuniform DirectionalLight directionalLights[ NUM_DIR_LIGHTS ];\\n\\tvoid getDirectionalDirectLightIrradiance( const in DirectionalLight directionalLight, const in GeometricContext geometry, out IncidentLight directLight ) {\\n\\t\\tdirectLight.color = directionalLight.color;\\n\\t\\tdirectLight.direction = directionalLight.direction;\\n\\t\\tdirectLight.visible = true;\\n\\t}\\n#endif\\n#if NUM_POINT_LIGHTS > 0\\n\\tstruct PointLight {\\n\\t\\tvec3 position;\\n\\t\\tvec3 color;\\n\\t\\tfloat distance;\\n\\t\\tfloat decay;\\n\\t\\tint shadow;\\n\\t\\tfloat shadowBias;\\n\\t\\tfloat shadowRadius;\\n\\t\\tvec2 shadowMapSize;\\n\\t};\\n\\tuniform PointLight pointLights[ NUM_POINT_LIGHTS ];\\n\\tvoid getPointDirectLightIrradiance( const in PointLight pointLight, const in GeometricContext geometry, out IncidentLight directLight ) {\\n\\t\\tvec3 lVector = pointLight.position - geometry.position;\\n\\t\\tdirectLight.direction = normalize( lVector );\\n\\t\\tfloat lightDistance = length( lVector );\\n\\t\\tif ( testLightInRange( lightDistance, pointLight.distance ) ) {\\n\\t\\t\\tdirectLight.color = pointLight.color;\\n\\t\\t\\tdirectLight.color *= punctualLightIntensityToIrradianceFactor( lightDistance, pointLight.distance, pointLight.decay );\\n\\t\\t\\tdirectLight.visible = true;\\n\\t\\t} else {\\n\\t\\t\\tdirectLight.color = vec3( 0.0 );\\n\\t\\t\\tdirectLight.visible = false;\\n\\t\\t}\\n\\t}\\n#endif\\n#if NUM_SPOT_LIGHTS > 0\\n\\tstruct SpotLight {\\n\\t\\tvec3 position;\\n\\t\\tvec3 direction;\\n\\t\\tvec3 color;\\n\\t\\tfloat distance;\\n\\t\\tfloat decay;\\n\\t\\tfloat coneCos;\\n\\t\\tfloat penumbraCos;\\n\\t\\tint shadow;\\n\\t\\tfloat shadowBias;\\n\\t\\tfloat shadowRadius;\\n\\t\\tvec2 shadowMapSize;\\n\\t};\\n\\tuniform SpotLight spotLights[ NUM_SPOT_LIGHTS ];\\n\\tvoid getSpotDirectLightIrradiance( const in SpotLight spotLight, const in GeometricContext geometry, out IncidentLight directLight ) {\\n\\t\\tvec3 lVector = spotLight.position - geometry.position;\\n\\t\\tdirectLight.direction = normalize( lVector );\\n\\t\\tfloat lightDistance = length( lVector );\\n\\t\\tfloat angleCos = dot( directLight.direction, spotLight.direction );\\n\\t\\tif ( all( bvec2( angleCos > spotLight.coneCos, testLightInRange( lightDistance, spotLight.distance ) ) ) ) {\\n\\t\\t\\tfloat spotEffect = smoothstep( spotLight.coneCos, spotLight.penumbraCos, angleCos );\\n\\t\\t\\tdirectLight.color = spotLight.color;\\n\\t\\t\\tdirectLight.color *= spotEffect * punctualLightIntensityToIrradianceFactor( lightDistance, spotLight.distance, spotLight.decay );\\n\\t\\t\\tdirectLight.visible = true;\\n\\t\\t} else {\\n\\t\\t\\tdirectLight.color = vec3( 0.0 );\\n\\t\\t\\tdirectLight.visible = false;\\n\\t\\t}\\n\\t}\\n#endif\\n#if NUM_HEMI_LIGHTS > 0\\n\\tstruct HemisphereLight {\\n\\t\\tvec3 direction;\\n\\t\\tvec3 skyColor;\\n\\t\\tvec3 groundColor;\\n\\t};\\n\\tuniform HemisphereLight hemisphereLights[ NUM_HEMI_LIGHTS ];\\n\\tvec3 getHemisphereLightIrradiance( const in HemisphereLight hemiLight, const in GeometricContext geometry ) {\\n\\t\\tfloat dotNL = dot( geometry.normal, hemiLight.direction );\\n\\t\\tfloat hemiDiffuseWeight = 0.5 * dotNL + 0.5;\\n\\t\\tvec3 irradiance = mix( hemiLight.groundColor, hemiLight.skyColor, hemiDiffuseWeight );\\n\\t\\t#ifndef PHYSICALLY_CORRECT_LIGHTS\\n\\t\\t\\tirradiance *= PI;\\n\\t\\t#endif\\n\\t\\treturn irradiance;\\n\\t}\\n#endif\\n#if defined( USE_ENVMAP ) && defined( PHYSICAL )\\n\\tvec3 getLightProbeIndirectIrradiance( const in GeometricContext geometry, const in int maxMIPLevel ) {\\n\\t\\t#include \\n\\t\\tvec3 worldNormal = inverseTransformDirection( geometry.normal, viewMatrix );\\n\\t\\t#ifdef ENVMAP_TYPE_CUBE\\n\\t\\t\\tvec3 queryVec = flipNormal * vec3( flipEnvMap * worldNormal.x, worldNormal.yz );\\n\\t\\t\\t#ifdef TEXTURE_LOD_EXT\\n\\t\\t\\t\\tvec4 envMapColor = textureCubeLodEXT( envMap, queryVec, float( maxMIPLevel ) );\\n\\t\\t\\t#else\\n\\t\\t\\t\\tvec4 envMapColor = textureCube( envMap, queryVec, float( maxMIPLevel ) );\\n\\t\\t\\t#endif\\n\\t\\t\\tenvMapColor.rgb = envMapTexelToLinear( envMapColor ).rgb;\\n\\t\\t#elif defined( ENVMAP_TYPE_CUBE_UV )\\n\\t\\t\\tvec3 queryVec = flipNormal * vec3( flipEnvMap * worldNormal.x, worldNormal.yz );\\n\\t\\t\\tvec4 envMapColor = textureCubeUV( queryVec, 1.0 );\\n\\t\\t#else\\n\\t\\t\\tvec4 envMapColor = vec4( 0.0 );\\n\\t\\t#endif\\n\\t\\treturn PI * envMapColor.rgb * envMapIntensity;\\n\\t}\\n\\tfloat getSpecularMIPLevel( const in float blinnShininessExponent, const in int maxMIPLevel ) {\\n\\t\\tfloat maxMIPLevelScalar = float( maxMIPLevel );\\n\\t\\tfloat desiredMIPLevel = maxMIPLevelScalar - 0.79248 - 0.5 * log2( pow2( blinnShininessExponent ) + 1.0 );\\n\\t\\treturn clamp( desiredMIPLevel, 0.0, maxMIPLevelScalar );\\n\\t}\\n\\tvec3 getLightProbeIndirectRadiance( const in GeometricContext geometry, const in float blinnShininessExponent, const in int maxMIPLevel ) {\\n\\t\\t#ifdef ENVMAP_MODE_REFLECTION\\n\\t\\t\\tvec3 reflectVec = reflect( -geometry.viewDir, geometry.normal );\\n\\t\\t#else\\n\\t\\t\\tvec3 reflectVec = refract( -geometry.viewDir, geometry.normal, refractionRatio );\\n\\t\\t#endif\\n\\t\\t#include \\n\\t\\treflectVec = inverseTransformDirection( reflectVec, viewMatrix );\\n\\t\\tfloat specularMIPLevel = getSpecularMIPLevel( blinnShininessExponent, maxMIPLevel );\\n\\t\\t#ifdef ENVMAP_TYPE_CUBE\\n\\t\\t\\tvec3 queryReflectVec = flipNormal * vec3( flipEnvMap * reflectVec.x, reflectVec.yz );\\n\\t\\t\\t#ifdef TEXTURE_LOD_EXT\\n\\t\\t\\t\\tvec4 envMapColor = textureCubeLodEXT( envMap, queryReflectVec, specularMIPLevel );\\n\\t\\t\\t#else\\n\\t\\t\\t\\tvec4 envMapColor = textureCube( envMap, queryReflectVec, specularMIPLevel );\\n\\t\\t\\t#endif\\n\\t\\t\\tenvMapColor.rgb = envMapTexelToLinear( envMapColor ).rgb;\\n\\t\\t#elif defined( ENVMAP_TYPE_CUBE_UV )\\n\\t\\t\\tvec3 queryReflectVec = flipNormal * vec3( flipEnvMap * reflectVec.x, reflectVec.yz );\\n\\t\\t\\tvec4 envMapColor = textureCubeUV(queryReflectVec, BlinnExponentToGGXRoughness(blinnShininessExponent));\\n\\t\\t#elif defined( ENVMAP_TYPE_EQUIREC )\\n\\t\\t\\tvec2 sampleUV;\\n\\t\\t\\tsampleUV.y = saturate( flipNormal * reflectVec.y * 0.5 + 0.5 );\\n\\t\\t\\tsampleUV.x = atan( flipNormal * reflectVec.z, flipNormal * reflectVec.x ) * RECIPROCAL_PI2 + 0.5;\\n\\t\\t\\t#ifdef TEXTURE_LOD_EXT\\n\\t\\t\\t\\tvec4 envMapColor = texture2DLodEXT( envMap, sampleUV, specularMIPLevel );\\n\\t\\t\\t#else\\n\\t\\t\\t\\tvec4 envMapColor = texture2D( envMap, sampleUV, specularMIPLevel );\\n\\t\\t\\t#endif\\n\\t\\t\\tenvMapColor.rgb = envMapTexelToLinear( envMapColor ).rgb;\\n\\t\\t#elif defined( ENVMAP_TYPE_SPHERE )\\n\\t\\t\\tvec3 reflectView = flipNormal * normalize( ( viewMatrix * vec4( reflectVec, 0.0 ) ).xyz + vec3( 0.0,0.0,1.0 ) );\\n\\t\\t\\t#ifdef TEXTURE_LOD_EXT\\n\\t\\t\\t\\tvec4 envMapColor = texture2DLodEXT( envMap, reflectView.xy * 0.5 + 0.5, specularMIPLevel );\\n\\t\\t\\t#else\\n\\t\\t\\t\\tvec4 envMapColor = texture2D( envMap, reflectView.xy * 0.5 + 0.5, specularMIPLevel );\\n\\t\\t\\t#endif\\n\\t\\t\\tenvMapColor.rgb = envMapTexelToLinear( envMapColor ).rgb;\\n\\t\\t#endif\\n\\t\\treturn envMapColor.rgb * envMapIntensity;\\n\\t}\\n#endif\\n\",Th=\"BlinnPhongMaterial material;\\nmaterial.diffuseColor = diffuseColor.rgb;\\nmaterial.specularColor = specular;\\nmaterial.specularShininess = shininess;\\nmaterial.specularStrength = specularStrength;\\n\",Eh=\"varying vec3 vViewPosition;\\n#ifndef FLAT_SHADED\\n\\tvarying vec3 vNormal;\\n#endif\\nstruct BlinnPhongMaterial {\\n\\tvec3\\tdiffuseColor;\\n\\tvec3\\tspecularColor;\\n\\tfloat\\tspecularShininess;\\n\\tfloat\\tspecularStrength;\\n};\\nvoid RE_Direct_BlinnPhong( const in IncidentLight directLight, const in GeometricContext geometry, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\\n\\tfloat dotNL = saturate( dot( geometry.normal, directLight.direction ) );\\n\\tvec3 irradiance = dotNL * directLight.color;\\n\\t#ifndef PHYSICALLY_CORRECT_LIGHTS\\n\\t\\tirradiance *= PI;\\n\\t#endif\\n\\treflectedLight.directDiffuse += irradiance * BRDF_Diffuse_Lambert( material.diffuseColor );\\n\\treflectedLight.directSpecular += irradiance * BRDF_Specular_BlinnPhong( directLight, geometry, material.specularColor, material.specularShininess ) * material.specularStrength;\\n}\\nvoid RE_IndirectDiffuse_BlinnPhong( const in vec3 irradiance, const in GeometricContext geometry, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\\n\\treflectedLight.indirectDiffuse += irradiance * BRDF_Diffuse_Lambert( material.diffuseColor );\\n}\\n#define RE_Direct\\t\\t\\t\\tRE_Direct_BlinnPhong\\n#define RE_IndirectDiffuse\\t\\tRE_IndirectDiffuse_BlinnPhong\\n#define Material_LightProbeLOD( material )\\t(0)\\n\",Ih=\"PhysicalMaterial material;\\nmaterial.diffuseColor = diffuseColor.rgb * ( 1.0 - metalnessFactor );\\nmaterial.specularRoughness = clamp( roughnessFactor, 0.04, 1.0 );\\n#ifdef STANDARD\\n\\tmaterial.specularColor = mix( vec3( DEFAULT_SPECULAR_COEFFICIENT ), diffuseColor.rgb, metalnessFactor );\\n#else\\n\\tmaterial.specularColor = mix( vec3( MAXIMUM_SPECULAR_COEFFICIENT * pow2( reflectivity ) ), diffuseColor.rgb, metalnessFactor );\\n\\tmaterial.clearCoat = saturate( clearCoat );\\tmaterial.clearCoatRoughness = clamp( clearCoatRoughness, 0.04, 1.0 );\\n#endif\\n\",Lh=\"struct PhysicalMaterial {\\n\\tvec3\\tdiffuseColor;\\n\\tfloat\\tspecularRoughness;\\n\\tvec3\\tspecularColor;\\n\\t#ifndef STANDARD\\n\\t\\tfloat clearCoat;\\n\\t\\tfloat clearCoatRoughness;\\n\\t#endif\\n};\\n#define MAXIMUM_SPECULAR_COEFFICIENT 0.16\\n#define DEFAULT_SPECULAR_COEFFICIENT 0.04\\nfloat clearCoatDHRApprox( const in float roughness, const in float dotNL ) {\\n\\treturn DEFAULT_SPECULAR_COEFFICIENT + ( 1.0 - DEFAULT_SPECULAR_COEFFICIENT ) * ( pow( 1.0 - dotNL, 5.0 ) * pow( 1.0 - roughness, 2.0 ) );\\n}\\nvoid RE_Direct_Physical( const in IncidentLight directLight, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\\n\\tfloat dotNL = saturate( dot( geometry.normal, directLight.direction ) );\\n\\tvec3 irradiance = dotNL * directLight.color;\\n\\t#ifndef PHYSICALLY_CORRECT_LIGHTS\\n\\t\\tirradiance *= PI;\\n\\t#endif\\n\\t#ifndef STANDARD\\n\\t\\tfloat clearCoatDHR = material.clearCoat * clearCoatDHRApprox( material.clearCoatRoughness, dotNL );\\n\\t#else\\n\\t\\tfloat clearCoatDHR = 0.0;\\n\\t#endif\\n\\treflectedLight.directSpecular += ( 1.0 - clearCoatDHR ) * irradiance * BRDF_Specular_GGX( directLight, geometry, material.specularColor, material.specularRoughness );\\n\\treflectedLight.directDiffuse += ( 1.0 - clearCoatDHR ) * irradiance * BRDF_Diffuse_Lambert( material.diffuseColor );\\n\\t#ifndef STANDARD\\n\\t\\treflectedLight.directSpecular += irradiance * material.clearCoat * BRDF_Specular_GGX( directLight, geometry, vec3( DEFAULT_SPECULAR_COEFFICIENT ), material.clearCoatRoughness );\\n\\t#endif\\n}\\nvoid RE_IndirectDiffuse_Physical( const in vec3 irradiance, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\\n\\treflectedLight.indirectDiffuse += irradiance * BRDF_Diffuse_Lambert( material.diffuseColor );\\n}\\nvoid RE_IndirectSpecular_Physical( const in vec3 radiance, const in vec3 clearCoatRadiance, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\\n\\t#ifndef STANDARD\\n\\t\\tfloat dotNV = saturate( dot( geometry.normal, geometry.viewDir ) );\\n\\t\\tfloat dotNL = dotNV;\\n\\t\\tfloat clearCoatDHR = material.clearCoat * clearCoatDHRApprox( material.clearCoatRoughness, dotNL );\\n\\t#else\\n\\t\\tfloat clearCoatDHR = 0.0;\\n\\t#endif\\n\\treflectedLight.indirectSpecular += ( 1.0 - clearCoatDHR ) * radiance * BRDF_Specular_GGX_Environment( geometry, material.specularColor, material.specularRoughness );\\n\\t#ifndef STANDARD\\n\\t\\treflectedLight.indirectSpecular += clearCoatRadiance * material.clearCoat * BRDF_Specular_GGX_Environment( geometry, vec3( DEFAULT_SPECULAR_COEFFICIENT ), material.clearCoatRoughness );\\n\\t#endif\\n}\\n#define RE_Direct\\t\\t\\t\\tRE_Direct_Physical\\n#define RE_IndirectDiffuse\\t\\tRE_IndirectDiffuse_Physical\\n#define RE_IndirectSpecular\\t\\tRE_IndirectSpecular_Physical\\n#define Material_BlinnShininessExponent( material ) GGXRoughnessToBlinnExponent( material.specularRoughness )\\n#define Material_ClearCoat_BlinnShininessExponent( material ) GGXRoughnessToBlinnExponent( material.clearCoatRoughness )\\nfloat computeSpecularOcclusion( const in float dotNV, const in float ambientOcclusion, const in float roughness ) {\\n\\treturn saturate( pow( dotNV + ambientOcclusion, exp2( - 16.0 * roughness - 1.0 ) ) - 1.0 + ambientOcclusion );\\n}\\n\",Rh=\"\\nGeometricContext geometry;\\ngeometry.position = - vViewPosition;\\ngeometry.normal = normal;\\ngeometry.viewDir = normalize( vViewPosition );\\nIncidentLight directLight;\\n#if ( NUM_POINT_LIGHTS > 0 ) && defined( RE_Direct )\\n\\tPointLight pointLight;\\n\\tfor ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\\n\\t\\tpointLight = pointLights[ i ];\\n\\t\\tgetPointDirectLightIrradiance( pointLight, geometry, directLight );\\n\\t\\t#ifdef USE_SHADOWMAP\\n\\t\\tdirectLight.color *= all( bvec2( pointLight.shadow, directLight.visible ) ) ? getPointShadow( pointShadowMap[ i ], pointLight.shadowMapSize, pointLight.shadowBias, pointLight.shadowRadius, vPointShadowCoord[ i ] ) : 1.0;\\n\\t\\t#endif\\n\\t\\tRE_Direct( directLight, geometry, material, reflectedLight );\\n\\t}\\n#endif\\n#if ( NUM_SPOT_LIGHTS > 0 ) && defined( RE_Direct )\\n\\tSpotLight spotLight;\\n\\tfor ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\\n\\t\\tspotLight = spotLights[ i ];\\n\\t\\tgetSpotDirectLightIrradiance( spotLight, geometry, directLight );\\n\\t\\t#ifdef USE_SHADOWMAP\\n\\t\\tdirectLight.color *= all( bvec2( spotLight.shadow, directLight.visible ) ) ? getShadow( spotShadowMap[ i ], spotLight.shadowMapSize, spotLight.shadowBias, spotLight.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0;\\n\\t\\t#endif\\n\\t\\tRE_Direct( directLight, geometry, material, reflectedLight );\\n\\t}\\n#endif\\n#if ( NUM_DIR_LIGHTS > 0 ) && defined( RE_Direct )\\n\\tDirectionalLight directionalLight;\\n\\tfor ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\\n\\t\\tdirectionalLight = directionalLights[ i ];\\n\\t\\tgetDirectionalDirectLightIrradiance( directionalLight, geometry, directLight );\\n\\t\\t#ifdef USE_SHADOWMAP\\n\\t\\tdirectLight.color *= all( bvec2( directionalLight.shadow, directLight.visible ) ) ? getShadow( directionalShadowMap[ i ], directionalLight.shadowMapSize, directionalLight.shadowBias, directionalLight.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\\n\\t\\t#endif\\n\\t\\tRE_Direct( directLight, geometry, material, reflectedLight );\\n\\t}\\n#endif\\n#if defined( RE_IndirectDiffuse )\\n\\tvec3 irradiance = getAmbientLightIrradiance( ambientLightColor );\\n\\t#ifdef USE_LIGHTMAP\\n\\t\\tvec3 lightMapIrradiance = texture2D( lightMap, vUv2 ).xyz * lightMapIntensity;\\n\\t\\t#ifndef PHYSICALLY_CORRECT_LIGHTS\\n\\t\\t\\tlightMapIrradiance *= PI;\\n\\t\\t#endif\\n\\t\\tirradiance += lightMapIrradiance;\\n\\t#endif\\n\\t#if ( NUM_HEMI_LIGHTS > 0 )\\n\\t\\tfor ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {\\n\\t\\t\\tirradiance += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry );\\n\\t\\t}\\n\\t#endif\\n\\t#if defined( USE_ENVMAP ) && defined( PHYSICAL ) && defined( ENVMAP_TYPE_CUBE_UV )\\n\\t \\tirradiance += getLightProbeIndirectIrradiance( geometry, 8 );\\n\\t#endif\\n\\tRE_IndirectDiffuse( irradiance, geometry, material, reflectedLight );\\n#endif\\n#if defined( USE_ENVMAP ) && defined( RE_IndirectSpecular )\\n\\tvec3 radiance = getLightProbeIndirectRadiance( geometry, Material_BlinnShininessExponent( material ), 8 );\\n\\t#ifndef STANDARD\\n\\t\\tvec3 clearCoatRadiance = getLightProbeIndirectRadiance( geometry, Material_ClearCoat_BlinnShininessExponent( material ), 8 );\\n\\t#else\\n\\t\\tvec3 clearCoatRadiance = vec3( 0.0 );\\n\\t#endif\\n\\t\\t\\n\\tRE_IndirectSpecular( radiance, clearCoatRadiance, geometry, material, reflectedLight );\\n#endif\\n\",Oh=\"#if defined(USE_LOGDEPTHBUF) && defined(USE_LOGDEPTHBUF_EXT)\\n\\tgl_FragDepthEXT = log2(vFragDepth) * logDepthBufFC * 0.5;\\n#endif\",Dh=\"#ifdef USE_LOGDEPTHBUF\\n\\tuniform float logDepthBufFC;\\n\\t#ifdef USE_LOGDEPTHBUF_EXT\\n\\t\\tvarying float vFragDepth;\\n\\t#endif\\n#endif\\n\",Nh=\"#ifdef USE_LOGDEPTHBUF\\n\\t#ifdef USE_LOGDEPTHBUF_EXT\\n\\t\\tvarying float vFragDepth;\\n\\t#endif\\n\\tuniform float logDepthBufFC;\\n#endif\",kh=\"#ifdef USE_LOGDEPTHBUF\\n\\tgl_Position.z = log2(max( EPSILON, gl_Position.w + 1.0 )) * logDepthBufFC;\\n\\t#ifdef USE_LOGDEPTHBUF_EXT\\n\\t\\tvFragDepth = 1.0 + gl_Position.w;\\n\\t#else\\n\\t\\tgl_Position.z = (gl_Position.z - 1.0) * gl_Position.w;\\n\\t#endif\\n#endif\\n\",Fh=\"#ifdef USE_MAP\\n\\tvec4 texelColor = texture2D( map, vUv );\\n\\ttexelColor = mapTexelToLinear( texelColor );\\n\\tdiffuseColor *= texelColor;\\n#endif\\n\",Bh=\"#ifdef USE_MAP\\n\\tuniform sampler2D map;\\n#endif\\n\",zh=\"#ifdef USE_MAP\\n\\tvec4 mapTexel = texture2D( map, vec2( gl_PointCoord.x, 1.0 - gl_PointCoord.y ) * offsetRepeat.zw + offsetRepeat.xy );\\n\\tdiffuseColor *= mapTexelToLinear( mapTexel );\\n#endif\\n\",Uh=\"#ifdef USE_MAP\\n\\tuniform vec4 offsetRepeat;\\n\\tuniform sampler2D map;\\n#endif\\n\",jh=\"float metalnessFactor = metalness;\\n#ifdef USE_METALNESSMAP\\n\\tvec4 texelMetalness = texture2D( metalnessMap, vUv );\\n\\tmetalnessFactor *= texelMetalness.r;\\n#endif\\n\",$h=\"#ifdef USE_METALNESSMAP\\n\\tuniform sampler2D metalnessMap;\\n#endif\",Vh=\"#ifdef USE_MORPHNORMALS\\n\\tobjectNormal += ( morphNormal0 - normal ) * morphTargetInfluences[ 0 ];\\n\\tobjectNormal += ( morphNormal1 - normal ) * morphTargetInfluences[ 1 ];\\n\\tobjectNormal += ( morphNormal2 - normal ) * morphTargetInfluences[ 2 ];\\n\\tobjectNormal += ( morphNormal3 - normal ) * morphTargetInfluences[ 3 ];\\n#endif\\n\",Gh=\"#ifdef USE_MORPHTARGETS\\n\\t#ifndef USE_MORPHNORMALS\\n\\tuniform float morphTargetInfluences[ 8 ];\\n\\t#else\\n\\tuniform float morphTargetInfluences[ 4 ];\\n\\t#endif\\n#endif\",Hh=\"#ifdef USE_MORPHTARGETS\\n\\ttransformed += ( morphTarget0 - position ) * morphTargetInfluences[ 0 ];\\n\\ttransformed += ( morphTarget1 - position ) * morphTargetInfluences[ 1 ];\\n\\ttransformed += ( morphTarget2 - position ) * morphTargetInfluences[ 2 ];\\n\\ttransformed += ( morphTarget3 - position ) * morphTargetInfluences[ 3 ];\\n\\t#ifndef USE_MORPHNORMALS\\n\\ttransformed += ( morphTarget4 - position ) * morphTargetInfluences[ 4 ];\\n\\ttransformed += ( morphTarget5 - position ) * morphTargetInfluences[ 5 ];\\n\\ttransformed += ( morphTarget6 - position ) * morphTargetInfluences[ 6 ];\\n\\ttransformed += ( morphTarget7 - position ) * morphTargetInfluences[ 7 ];\\n\\t#endif\\n#endif\\n\",Wh=\"#ifdef DOUBLE_SIDED\\n\\tfloat flipNormal = ( float( gl_FrontFacing ) * 2.0 - 1.0 );\\n#else\\n\\tfloat flipNormal = 1.0;\\n#endif\\n\",Xh=\"#ifdef FLAT_SHADED\\n\\tvec3 fdx = vec3( dFdx( vViewPosition.x ), dFdx( vViewPosition.y ), dFdx( vViewPosition.z ) );\\n\\tvec3 fdy = vec3( dFdy( vViewPosition.x ), dFdy( vViewPosition.y ), dFdy( vViewPosition.z ) );\\n\\tvec3 normal = normalize( cross( fdx, fdy ) );\\n#else\\n\\tvec3 normal = normalize( vNormal ) * flipNormal;\\n#endif\\n#ifdef USE_NORMALMAP\\n\\tnormal = perturbNormal2Arb( -vViewPosition, normal );\\n#elif defined( USE_BUMPMAP )\\n\\tnormal = perturbNormalArb( -vViewPosition, normal, dHdxy_fwd() );\\n#endif\\n\",qh=\"#ifdef USE_NORMALMAP\\n\\tuniform sampler2D normalMap;\\n\\tuniform vec2 normalScale;\\n\\tvec3 perturbNormal2Arb( vec3 eye_pos, vec3 surf_norm ) {\\n\\t\\tvec3 q0 = dFdx( eye_pos.xyz );\\n\\t\\tvec3 q1 = dFdy( eye_pos.xyz );\\n\\t\\tvec2 st0 = dFdx( vUv.st );\\n\\t\\tvec2 st1 = dFdy( vUv.st );\\n\\t\\tvec3 S = normalize( q0 * st1.t - q1 * st0.t );\\n\\t\\tvec3 T = normalize( -q0 * st1.s + q1 * st0.s );\\n\\t\\tvec3 N = normalize( surf_norm );\\n\\t\\tvec3 mapN = texture2D( normalMap, vUv ).xyz * 2.0 - 1.0;\\n\\t\\tmapN.xy = normalScale * mapN.xy;\\n\\t\\tmat3 tsn = mat3( S, T, N );\\n\\t\\treturn normalize( tsn * mapN );\\n\\t}\\n#endif\\n\",Yh=\"vec3 packNormalToRGB( const in vec3 normal ) {\\n return normalize( normal ) * 0.5 + 0.5;\\n}\\nvec3 unpackRGBToNormal( const in vec3 rgb ) {\\n return 1.0 - 2.0 * rgb.xyz;\\n}\\nconst float PackUpscale = 256. / 255.;const float UnpackDownscale = 255. / 256.;\\nconst vec3 PackFactors = vec3( 256. * 256. * 256., 256. * 256., 256. );\\nconst vec4 UnpackFactors = UnpackDownscale / vec4( PackFactors, 1. );\\nconst float ShiftRight8 = 1. / 256.;\\nvec4 packDepthToRGBA( const in float v ) {\\n\\tvec4 r = vec4( fract( v * PackFactors ), v );\\n\\tr.yzw -= r.xyz * ShiftRight8;\\treturn r * PackUpscale;\\n}\\nfloat unpackRGBAToDepth( const in vec4 v ) {\\n\\treturn dot( v, UnpackFactors );\\n}\\nfloat viewZToOrthographicDepth( const in float viewZ, const in float near, const in float far ) {\\n return ( viewZ + near ) / ( near - far );\\n}\\nfloat orthographicDepthToViewZ( const in float linearClipZ, const in float near, const in float far ) {\\n return linearClipZ * ( near - far ) - near;\\n}\\nfloat viewZToPerspectiveDepth( const in float viewZ, const in float near, const in float far ) {\\n return (( near + viewZ ) * far ) / (( far - near ) * viewZ );\\n}\\nfloat perspectiveDepthToViewZ( const in float invClipZ, const in float near, const in float far ) {\\n return ( near * far ) / ( ( far - near ) * invClipZ - far );\\n}\\n\",Zh=\"#ifdef PREMULTIPLIED_ALPHA\\n\\tgl_FragColor.rgb *= gl_FragColor.a;\\n#endif\\n\",Kh=\"#ifdef USE_SKINNING\\n\\tvec4 mvPosition = modelViewMatrix * skinned;\\n#else\\n\\tvec4 mvPosition = modelViewMatrix * vec4( transformed, 1.0 );\\n#endif\\ngl_Position = projectionMatrix * mvPosition;\\n\",Qh=\"float roughnessFactor = roughness;\\n#ifdef USE_ROUGHNESSMAP\\n\\tvec4 texelRoughness = texture2D( roughnessMap, vUv );\\n\\troughnessFactor *= texelRoughness.r;\\n#endif\\n\",Jh=\"#ifdef USE_ROUGHNESSMAP\\n\\tuniform sampler2D roughnessMap;\\n#endif\",td=\"#ifdef USE_SHADOWMAP\\n\\t#if NUM_DIR_LIGHTS > 0\\n\\t\\tuniform sampler2D directionalShadowMap[ NUM_DIR_LIGHTS ];\\n\\t\\tvarying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHTS ];\\n\\t#endif\\n\\t#if NUM_SPOT_LIGHTS > 0\\n\\t\\tuniform sampler2D spotShadowMap[ NUM_SPOT_LIGHTS ];\\n\\t\\tvarying vec4 vSpotShadowCoord[ NUM_SPOT_LIGHTS ];\\n\\t#endif\\n\\t#if NUM_POINT_LIGHTS > 0\\n\\t\\tuniform sampler2D pointShadowMap[ NUM_POINT_LIGHTS ];\\n\\t\\tvarying vec4 vPointShadowCoord[ NUM_POINT_LIGHTS ];\\n\\t#endif\\n\\tfloat texture2DCompare( sampler2D depths, vec2 uv, float compare ) {\\n\\t\\treturn step( compare, unpackRGBAToDepth( texture2D( depths, uv ) ) );\\n\\t}\\n\\tfloat texture2DShadowLerp( sampler2D depths, vec2 size, vec2 uv, float compare ) {\\n\\t\\tconst vec2 offset = vec2( 0.0, 1.0 );\\n\\t\\tvec2 texelSize = vec2( 1.0 ) / size;\\n\\t\\tvec2 centroidUV = floor( uv * size + 0.5 ) / size;\\n\\t\\tfloat lb = texture2DCompare( depths, centroidUV + texelSize * offset.xx, compare );\\n\\t\\tfloat lt = texture2DCompare( depths, centroidUV + texelSize * offset.xy, compare );\\n\\t\\tfloat rb = texture2DCompare( depths, centroidUV + texelSize * offset.yx, compare );\\n\\t\\tfloat rt = texture2DCompare( depths, centroidUV + texelSize * offset.yy, compare );\\n\\t\\tvec2 f = fract( uv * size + 0.5 );\\n\\t\\tfloat a = mix( lb, lt, f.y );\\n\\t\\tfloat b = mix( rb, rt, f.y );\\n\\t\\tfloat c = mix( a, b, f.x );\\n\\t\\treturn c;\\n\\t}\\n\\tfloat getShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord ) {\\n\\t\\tshadowCoord.xyz /= shadowCoord.w;\\n\\t\\tshadowCoord.z += shadowBias;\\n\\t\\tbvec4 inFrustumVec = bvec4 ( shadowCoord.x >= 0.0, shadowCoord.x <= 1.0, shadowCoord.y >= 0.0, shadowCoord.y <= 1.0 );\\n\\t\\tbool inFrustum = all( inFrustumVec );\\n\\t\\tbvec2 frustumTestVec = bvec2( inFrustum, shadowCoord.z <= 1.0 );\\n\\t\\tbool frustumTest = all( frustumTestVec );\\n\\t\\tif ( frustumTest ) {\\n\\t\\t#if defined( SHADOWMAP_TYPE_PCF )\\n\\t\\t\\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\\n\\t\\t\\tfloat dx0 = - texelSize.x * shadowRadius;\\n\\t\\t\\tfloat dy0 = - texelSize.y * shadowRadius;\\n\\t\\t\\tfloat dx1 = + texelSize.x * shadowRadius;\\n\\t\\t\\tfloat dy1 = + texelSize.y * shadowRadius;\\n\\t\\t\\treturn (\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, 0.0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, 0.0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy1 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy1 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy1 ), shadowCoord.z )\\n\\t\\t\\t) * ( 1.0 / 9.0 );\\n\\t\\t#elif defined( SHADOWMAP_TYPE_PCF_SOFT )\\n\\t\\t\\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\\n\\t\\t\\tfloat dx0 = - texelSize.x * shadowRadius;\\n\\t\\t\\tfloat dy0 = - texelSize.y * shadowRadius;\\n\\t\\t\\tfloat dx1 = + texelSize.x * shadowRadius;\\n\\t\\t\\tfloat dy1 = + texelSize.y * shadowRadius;\\n\\t\\t\\treturn (\\n\\t\\t\\t\\ttexture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy + vec2( dx0, dy0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy + vec2( 0.0, dy0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy + vec2( dx1, dy0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy + vec2( dx0, 0.0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy, shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy + vec2( dx1, 0.0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy + vec2( dx0, dy1 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy + vec2( 0.0, dy1 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy + vec2( dx1, dy1 ), shadowCoord.z )\\n\\t\\t\\t) * ( 1.0 / 9.0 );\\n\\t\\t#else\\n\\t\\t\\treturn texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z );\\n\\t\\t#endif\\n\\t\\t}\\n\\t\\treturn 1.0;\\n\\t}\\n\\tvec2 cubeToUV( vec3 v, float texelSizeY ) {\\n\\t\\tvec3 absV = abs( v );\\n\\t\\tfloat scaleToCube = 1.0 / max( absV.x, max( absV.y, absV.z ) );\\n\\t\\tabsV *= scaleToCube;\\n\\t\\tv *= scaleToCube * ( 1.0 - 2.0 * texelSizeY );\\n\\t\\tvec2 planar = v.xy;\\n\\t\\tfloat almostATexel = 1.5 * texelSizeY;\\n\\t\\tfloat almostOne = 1.0 - almostATexel;\\n\\t\\tif ( absV.z >= almostOne ) {\\n\\t\\t\\tif ( v.z > 0.0 )\\n\\t\\t\\t\\tplanar.x = 4.0 - v.x;\\n\\t\\t} else if ( absV.x >= almostOne ) {\\n\\t\\t\\tfloat signX = sign( v.x );\\n\\t\\t\\tplanar.x = v.z * signX + 2.0 * signX;\\n\\t\\t} else if ( absV.y >= almostOne ) {\\n\\t\\t\\tfloat signY = sign( v.y );\\n\\t\\t\\tplanar.x = v.x + 2.0 * signY + 2.0;\\n\\t\\t\\tplanar.y = v.z * signY - 2.0;\\n\\t\\t}\\n\\t\\treturn vec2( 0.125, 0.25 ) * planar + vec2( 0.375, 0.75 );\\n\\t}\\n\\tfloat getPointShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord ) {\\n\\t\\tvec2 texelSize = vec2( 1.0 ) / ( shadowMapSize * vec2( 4.0, 2.0 ) );\\n\\t\\tvec3 lightToPosition = shadowCoord.xyz;\\n\\t\\tvec3 bd3D = normalize( lightToPosition );\\n\\t\\tfloat dp = ( length( lightToPosition ) - shadowBias ) / 1000.0;\\n\\t\\t#if defined( SHADOWMAP_TYPE_PCF ) || defined( SHADOWMAP_TYPE_PCF_SOFT )\\n\\t\\t\\tvec2 offset = vec2( - 1, 1 ) * shadowRadius * texelSize.y;\\n\\t\\t\\treturn (\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyy, texelSize.y ), dp ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyy, texelSize.y ), dp ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyx, texelSize.y ), dp ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyx, texelSize.y ), dp ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxy, texelSize.y ), dp ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxy, texelSize.y ), dp ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxx, texelSize.y ), dp ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxx, texelSize.y ), dp )\\n\\t\\t\\t) * ( 1.0 / 9.0 );\\n\\t\\t#else\\n\\t\\t\\treturn texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp );\\n\\t\\t#endif\\n\\t}\\n#endif\\n\",ed=\"#ifdef USE_SHADOWMAP\\n\\t#if NUM_DIR_LIGHTS > 0\\n\\t\\tuniform mat4 directionalShadowMatrix[ NUM_DIR_LIGHTS ];\\n\\t\\tvarying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHTS ];\\n\\t#endif\\n\\t#if NUM_SPOT_LIGHTS > 0\\n\\t\\tuniform mat4 spotShadowMatrix[ NUM_SPOT_LIGHTS ];\\n\\t\\tvarying vec4 vSpotShadowCoord[ NUM_SPOT_LIGHTS ];\\n\\t#endif\\n\\t#if NUM_POINT_LIGHTS > 0\\n\\t\\tuniform mat4 pointShadowMatrix[ NUM_POINT_LIGHTS ];\\n\\t\\tvarying vec4 vPointShadowCoord[ NUM_POINT_LIGHTS ];\\n\\t#endif\\n#endif\\n\",id=\"#ifdef USE_SHADOWMAP\\n\\t#if NUM_DIR_LIGHTS > 0\\n\\tfor ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\\n\\t\\tvDirectionalShadowCoord[ i ] = directionalShadowMatrix[ i ] * worldPosition;\\n\\t}\\n\\t#endif\\n\\t#if NUM_SPOT_LIGHTS > 0\\n\\tfor ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\\n\\t\\tvSpotShadowCoord[ i ] = spotShadowMatrix[ i ] * worldPosition;\\n\\t}\\n\\t#endif\\n\\t#if NUM_POINT_LIGHTS > 0\\n\\tfor ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\\n\\t\\tvPointShadowCoord[ i ] = pointShadowMatrix[ i ] * worldPosition;\\n\\t}\\n\\t#endif\\n#endif\\n\",rd=\"float getShadowMask() {\\n\\tfloat shadow = 1.0;\\n\\t#ifdef USE_SHADOWMAP\\n\\t#if NUM_DIR_LIGHTS > 0\\n\\tDirectionalLight directionalLight;\\n\\tfor ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\\n\\t\\tdirectionalLight = directionalLights[ i ];\\n\\t\\tshadow *= bool( directionalLight.shadow ) ? getShadow( directionalShadowMap[ i ], directionalLight.shadowMapSize, directionalLight.shadowBias, directionalLight.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\\n\\t}\\n\\t#endif\\n\\t#if NUM_SPOT_LIGHTS > 0\\n\\tSpotLight spotLight;\\n\\tfor ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\\n\\t\\tspotLight = spotLights[ i ];\\n\\t\\tshadow *= bool( spotLight.shadow ) ? getShadow( spotShadowMap[ i ], spotLight.shadowMapSize, spotLight.shadowBias, spotLight.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0;\\n\\t}\\n\\t#endif\\n\\t#if NUM_POINT_LIGHTS > 0\\n\\tPointLight pointLight;\\n\\tfor ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\\n\\t\\tpointLight = pointLights[ i ];\\n\\t\\tshadow *= bool( pointLight.shadow ) ? getPointShadow( pointShadowMap[ i ], pointLight.shadowMapSize, pointLight.shadowBias, pointLight.shadowRadius, vPointShadowCoord[ i ] ) : 1.0;\\n\\t}\\n\\t#endif\\n\\t#endif\\n\\treturn shadow;\\n}\\n\",nd=\"#ifdef USE_SKINNING\\n\\tmat4 boneMatX = getBoneMatrix( skinIndex.x );\\n\\tmat4 boneMatY = getBoneMatrix( skinIndex.y );\\n\\tmat4 boneMatZ = getBoneMatrix( skinIndex.z );\\n\\tmat4 boneMatW = getBoneMatrix( skinIndex.w );\\n#endif\",od=\"#ifdef USE_SKINNING\\n\\tuniform mat4 bindMatrix;\\n\\tuniform mat4 bindMatrixInverse;\\n\\t#ifdef BONE_TEXTURE\\n\\t\\tuniform sampler2D boneTexture;\\n\\t\\tuniform int boneTextureWidth;\\n\\t\\tuniform int boneTextureHeight;\\n\\t\\tmat4 getBoneMatrix( const in float i ) {\\n\\t\\t\\tfloat j = i * 4.0;\\n\\t\\t\\tfloat x = mod( j, float( boneTextureWidth ) );\\n\\t\\t\\tfloat y = floor( j / float( boneTextureWidth ) );\\n\\t\\t\\tfloat dx = 1.0 / float( boneTextureWidth );\\n\\t\\t\\tfloat dy = 1.0 / float( boneTextureHeight );\\n\\t\\t\\ty = dy * ( y + 0.5 );\\n\\t\\t\\tvec4 v1 = texture2D( boneTexture, vec2( dx * ( x + 0.5 ), y ) );\\n\\t\\t\\tvec4 v2 = texture2D( boneTexture, vec2( dx * ( x + 1.5 ), y ) );\\n\\t\\t\\tvec4 v3 = texture2D( boneTexture, vec2( dx * ( x + 2.5 ), y ) );\\n\\t\\t\\tvec4 v4 = texture2D( boneTexture, vec2( dx * ( x + 3.5 ), y ) );\\n\\t\\t\\tmat4 bone = mat4( v1, v2, v3, v4 );\\n\\t\\t\\treturn bone;\\n\\t\\t}\\n\\t#else\\n\\t\\tuniform mat4 boneMatrices[ MAX_BONES ];\\n\\t\\tmat4 getBoneMatrix( const in float i ) {\\n\\t\\t\\tmat4 bone = boneMatrices[ int(i) ];\\n\\t\\t\\treturn bone;\\n\\t\\t}\\n\\t#endif\\n#endif\\n\",ad=\"#ifdef USE_SKINNING\\n\\tvec4 skinVertex = bindMatrix * vec4( transformed, 1.0 );\\n\\tvec4 skinned = vec4( 0.0 );\\n\\tskinned += boneMatX * skinVertex * skinWeight.x;\\n\\tskinned += boneMatY * skinVertex * skinWeight.y;\\n\\tskinned += boneMatZ * skinVertex * skinWeight.z;\\n\\tskinned += boneMatW * skinVertex * skinWeight.w;\\n\\tskinned = bindMatrixInverse * skinned;\\n#endif\\n\",sd=\"#ifdef USE_SKINNING\\n\\tmat4 skinMatrix = mat4( 0.0 );\\n\\tskinMatrix += skinWeight.x * boneMatX;\\n\\tskinMatrix += skinWeight.y * boneMatY;\\n\\tskinMatrix += skinWeight.z * boneMatZ;\\n\\tskinMatrix += skinWeight.w * boneMatW;\\n\\tskinMatrix = bindMatrixInverse * skinMatrix * bindMatrix;\\n\\tobjectNormal = vec4( skinMatrix * vec4( objectNormal, 0.0 ) ).xyz;\\n#endif\\n\",cd=\"float specularStrength;\\n#ifdef USE_SPECULARMAP\\n\\tvec4 texelSpecular = texture2D( specularMap, vUv );\\n\\tspecularStrength = texelSpecular.r;\\n#else\\n\\tspecularStrength = 1.0;\\n#endif\",ud=\"#ifdef USE_SPECULARMAP\\n\\tuniform sampler2D specularMap;\\n#endif\",ld=\"#if defined( TONE_MAPPING )\\n gl_FragColor.rgb = toneMapping( gl_FragColor.rgb );\\n#endif\\n\",hd=\"#define saturate(a) clamp( a, 0.0, 1.0 )\\nuniform float toneMappingExposure;\\nuniform float toneMappingWhitePoint;\\nvec3 LinearToneMapping( vec3 color ) {\\n return toneMappingExposure * color;\\n}\\nvec3 ReinhardToneMapping( vec3 color ) {\\n color *= toneMappingExposure;\\n return saturate( color / ( vec3( 1.0 ) + color ) );\\n}\\n#define Uncharted2Helper( x ) max( ( ( x * ( 0.15 * x + 0.10 * 0.50 ) + 0.20 * 0.02 ) / ( x * ( 0.15 * x + 0.50 ) + 0.20 * 0.30 ) ) - 0.02 / 0.30, vec3( 0.0 ) )\\nvec3 Uncharted2ToneMapping( vec3 color ) {\\n color *= toneMappingExposure;\\n return saturate( Uncharted2Helper( color ) / Uncharted2Helper( vec3( toneMappingWhitePoint ) ) );\\n}\\nvec3 OptimizedCineonToneMapping( vec3 color ) {\\n color *= toneMappingExposure;\\n color = max( vec3( 0.0 ), color - 0.004 );\\n return pow( ( color * ( 6.2 * color + 0.5 ) ) / ( color * ( 6.2 * color + 1.7 ) + 0.06 ), vec3( 2.2 ) );\\n}\\n\",dd=\"#if defined( USE_MAP ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( USE_SPECULARMAP ) || defined( USE_ALPHAMAP ) || defined( USE_EMISSIVEMAP ) || defined( USE_ROUGHNESSMAP ) || defined( USE_METALNESSMAP )\\n\\tvarying vec2 vUv;\\n#endif\",fd=\"#if defined( USE_MAP ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( USE_SPECULARMAP ) || defined( USE_ALPHAMAP ) || defined( USE_EMISSIVEMAP ) || defined( USE_ROUGHNESSMAP ) || defined( USE_METALNESSMAP )\\n\\tvarying vec2 vUv;\\n\\tuniform vec4 offsetRepeat;\\n#endif\\n\",pd=\"#if defined( USE_MAP ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( USE_SPECULARMAP ) || defined( USE_ALPHAMAP ) || defined( USE_EMISSIVEMAP ) || defined( USE_ROUGHNESSMAP ) || defined( USE_METALNESSMAP )\\n\\tvUv = uv * offsetRepeat.zw + offsetRepeat.xy;\\n#endif\",md=\"#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\\n\\tvarying vec2 vUv2;\\n#endif\",gd=\"#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\\n\\tattribute vec2 uv2;\\n\\tvarying vec2 vUv2;\\n#endif\",vd=\"#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\\n\\tvUv2 = uv2;\\n#endif\",yd=\"#if defined( USE_ENVMAP ) || defined( PHONG ) || defined( PHYSICAL ) || defined( LAMBERT ) || defined ( USE_SHADOWMAP )\\n\\t#ifdef USE_SKINNING\\n\\t\\tvec4 worldPosition = modelMatrix * skinned;\\n\\t#else\\n\\t\\tvec4 worldPosition = modelMatrix * vec4( transformed, 1.0 );\\n\\t#endif\\n#endif\\n\",bd=\"uniform samplerCube tCube;\\nuniform float tFlip;\\nuniform float opacity;\\nvarying vec3 vWorldPosition;\\n#include \\nvoid main() {\\n\\tgl_FragColor = textureCube( tCube, vec3( tFlip * vWorldPosition.x, vWorldPosition.yz ) );\\n\\tgl_FragColor.a *= opacity;\\n}\\n\",xd=\"varying vec3 vWorldPosition;\\n#include \\nvoid main() {\\n\\tvWorldPosition = transformDirection( position, modelMatrix );\\n\\t#include \\n\\t#include \\n}\\n\",_d=\"#if DEPTH_PACKING == 3200\\n\\tuniform float opacity;\\n#endif\\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\nvoid main() {\\n\\t#include \\n\\tvec4 diffuseColor = vec4( 1.0 );\\n\\t#if DEPTH_PACKING == 3200\\n\\t\\tdiffuseColor.a = opacity;\\n\\t#endif\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#if DEPTH_PACKING == 3200\\n\\t\\tgl_FragColor = vec4( vec3( gl_FragCoord.z ), opacity );\\n\\t#elif DEPTH_PACKING == 3201\\n\\t\\tgl_FragColor = packDepthToRGBA( gl_FragCoord.z );\\n\\t#endif\\n}\\n\",wd=\"#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\nvoid main() {\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n}\\n\",Sd=\"uniform vec3 lightPos;\\nvarying vec4 vWorldPosition;\\n#include \\n#include \\n#include \\nvoid main () {\\n\\t#include \\n\\tgl_FragColor = packDepthToRGBA( length( vWorldPosition.xyz - lightPos.xyz ) / 1000.0 );\\n}\\n\",Ad=\"varying vec4 vWorldPosition;\\n#include \\n#include \\n#include \\n#include \\nvoid main() {\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\tvWorldPosition = worldPosition;\\n}\\n\",Md=\"uniform sampler2D tEquirect;\\nuniform float tFlip;\\nvarying vec3 vWorldPosition;\\n#include \\nvoid main() {\\n\\tvec3 direction = normalize( vWorldPosition );\\n\\tvec2 sampleUV;\\n\\tsampleUV.y = saturate( tFlip * direction.y * -0.5 + 0.5 );\\n\\tsampleUV.x = atan( direction.z, direction.x ) * RECIPROCAL_PI2 + 0.5;\\n\\tgl_FragColor = texture2D( tEquirect, sampleUV );\\n}\\n\",Pd=\"varying vec3 vWorldPosition;\\n#include \\nvoid main() {\\n\\tvWorldPosition = transformDirection( position, modelMatrix );\\n\\t#include \\n\\t#include \\n}\\n\",Cd=\"uniform vec3 diffuse;\\nuniform float opacity;\\nuniform float dashSize;\\nuniform float totalSize;\\nvarying float vLineDistance;\\n#include \\n#include \\n#include \\n#include \\n#include \\nvoid main() {\\n\\t#include \\n\\tif ( mod( vLineDistance, totalSize ) > dashSize ) {\\n\\t\\tdiscard;\\n\\t}\\n\\tvec3 outgoingLight = vec3( 0.0 );\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\t#include \\n\\t#include \\n\\toutgoingLight = diffuseColor.rgb;\\n\\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n}\\n\",Td=\"uniform float scale;\\nattribute float lineDistance;\\nvarying float vLineDistance;\\n#include \\n#include \\n#include \\n#include \\nvoid main() {\\n\\t#include \\n\\tvLineDistance = scale * lineDistance;\\n\\tvec4 mvPosition = modelViewMatrix * vec4( position, 1.0 );\\n\\tgl_Position = projectionMatrix * mvPosition;\\n\\t#include \\n\\t#include \\n}\\n\",Ed=\"uniform vec3 diffuse;\\nuniform float opacity;\\n#ifndef FLAT_SHADED\\n\\tvarying vec3 vNormal;\\n#endif\\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\nvoid main() {\\n\\t#include \\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\tReflectedLight reflectedLight;\\n\\treflectedLight.directDiffuse = vec3( 0.0 );\\n\\treflectedLight.directSpecular = vec3( 0.0 );\\n\\treflectedLight.indirectDiffuse = diffuseColor.rgb;\\n\\treflectedLight.indirectSpecular = vec3( 0.0 );\\n\\t#include \\n\\tvec3 outgoingLight = reflectedLight.indirectDiffuse;\\n\\t#include \\n\\t#include \\n\\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n}\\n\",Id=\"#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\nvoid main() {\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#ifdef USE_ENVMAP\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#endif\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n}\\n\",Ld=\"uniform vec3 diffuse;\\nuniform vec3 emissive;\\nuniform float opacity;\\nvarying vec3 vLightFront;\\n#ifdef DOUBLE_SIDED\\n\\tvarying vec3 vLightBack;\\n#endif\\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\nvoid main() {\\n\\t#include \\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\\n\\tvec3 totalEmissiveRadiance = emissive;\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\treflectedLight.indirectDiffuse = getAmbientLightIrradiance( ambientLightColor );\\n\\t#include \\n\\treflectedLight.indirectDiffuse *= BRDF_Diffuse_Lambert( diffuseColor.rgb );\\n\\t#ifdef DOUBLE_SIDED\\n\\t\\treflectedLight.directDiffuse = ( gl_FrontFacing ) ? vLightFront : vLightBack;\\n\\t#else\\n\\t\\treflectedLight.directDiffuse = vLightFront;\\n\\t#endif\\n\\treflectedLight.directDiffuse *= BRDF_Diffuse_Lambert( diffuseColor.rgb ) * getShadowMask();\\n\\t#include \\n\\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\\n\\t#include \\n\\t#include \\n\\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n}\\n\",Rd=\"#define LAMBERT\\nvarying vec3 vLightFront;\\n#ifdef DOUBLE_SIDED\\n\\tvarying vec3 vLightBack;\\n#endif\\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\nvoid main() {\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n}\\n\",Od=\"#define PHONG\\nuniform vec3 diffuse;\\nuniform vec3 emissive;\\nuniform vec3 specular;\\nuniform float shininess;\\nuniform float opacity;\\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\nvoid main() {\\n\\t#include \\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\\n\\tvec3 totalEmissiveRadiance = emissive;\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance;\\n\\t#include \\n\\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n}\\n\",Dd=\"#define PHONG\\nvarying vec3 vViewPosition;\\n#ifndef FLAT_SHADED\\n\\tvarying vec3 vNormal;\\n#endif\\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\nvoid main() {\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n#ifndef FLAT_SHADED\\n\\tvNormal = normalize( transformedNormal );\\n#endif\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\tvViewPosition = - mvPosition.xyz;\\n\\t#include \\n\\t#include \\n\\t#include \\n}\\n\",Nd=\"#define PHYSICAL\\nuniform vec3 diffuse;\\nuniform vec3 emissive;\\nuniform float roughness;\\nuniform float metalness;\\nuniform float opacity;\\n#ifndef STANDARD\\n\\tuniform float clearCoat;\\n\\tuniform float clearCoatRoughness;\\n#endif\\nuniform float envMapIntensity;\\nvarying vec3 vViewPosition;\\n#ifndef FLAT_SHADED\\n\\tvarying vec3 vNormal;\\n#endif\\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\nvoid main() {\\n\\t#include \\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\\n\\tvec3 totalEmissiveRadiance = emissive;\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance;\\n\\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n}\\n\",kd=\"#define PHYSICAL\\nvarying vec3 vViewPosition;\\n#ifndef FLAT_SHADED\\n\\tvarying vec3 vNormal;\\n#endif\\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\nvoid main() {\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n#ifndef FLAT_SHADED\\n\\tvNormal = normalize( transformedNormal );\\n#endif\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\tvViewPosition = - mvPosition.xyz;\\n\\t#include \\n\\t#include \\n}\\n\",Fd=\"uniform float opacity;\\nvarying vec3 vNormal;\\n#include \\n#include \\n#include \\n#include \\nvoid main() {\\n\\t#include \\n\\tgl_FragColor = vec4( packNormalToRGB( vNormal ), opacity );\\n\\t#include \\n}\\n\",Bd=\"varying vec3 vNormal;\\n#include \\n#include \\n#include \\n#include \\nvoid main() {\\n\\tvNormal = normalize( normalMatrix * normal );\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n}\\n\",zd=\"uniform vec3 diffuse;\\nuniform float opacity;\\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\nvoid main() {\\n\\t#include \\n\\tvec3 outgoingLight = vec3( 0.0 );\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n\\toutgoingLight = diffuseColor.rgb;\\n\\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n}\\n\",Ud=\"uniform float size;\\nuniform float scale;\\n#include \\n#include \\n#include \\n#include \\n#include \\nvoid main() {\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#ifdef USE_SIZEATTENUATION\\n\\t\\tgl_PointSize = size * ( scale / - mvPosition.z );\\n\\t#else\\n\\t\\tgl_PointSize = size;\\n\\t#endif\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n}\\n\",jd=\"uniform float opacity;\\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\nvoid main() {\\n\\tgl_FragColor = vec4( 0.0, 0.0, 0.0, opacity * ( 1.0 - getShadowMask() ) );\\n}\\n\",$d=\"#include \\nvoid main() {\\n\\t#include \\n\\t#include \\n\\t#include \\n\\t#include \\n}\\n\",Vd={\nalphamap_fragment:Wl,alphamap_pars_fragment:Xl,alphatest_fragment:ql,aomap_fragment:Yl,aomap_pars_fragment:Zl,begin_vertex:Kl,beginnormal_vertex:Ql,bsdfs:Jl,bumpmap_pars_fragment:th,clipping_planes_fragment:eh,clipping_planes_pars_fragment:ih,clipping_planes_pars_vertex:rh,clipping_planes_vertex:nh,color_fragment:oh,color_pars_fragment:ah,color_pars_vertex:sh,color_vertex:ch,common:uh,cube_uv_reflection_fragment:lh,defaultnormal_vertex:hh,displacementmap_pars_vertex:dh,displacementmap_vertex:fh,emissivemap_fragment:ph,emissivemap_pars_fragment:mh,encodings_fragment:gh,encodings_pars_fragment:vh,envmap_fragment:yh,envmap_pars_fragment:bh,envmap_pars_vertex:xh,envmap_vertex:_h,fog_fragment:wh,fog_pars_fragment:Sh,lightmap_fragment:Ah,lightmap_pars_fragment:Mh,lights_lambert_vertex:Ph,lights_pars:Ch,lights_phong_fragment:Th,lights_phong_pars_fragment:Eh,lights_physical_fragment:Ih,lights_physical_pars_fragment:Lh,lights_template:Rh,logdepthbuf_fragment:Oh,logdepthbuf_pars_fragment:Dh,logdepthbuf_pars_vertex:Nh,logdepthbuf_vertex:kh,map_fragment:Fh,map_pars_fragment:Bh,map_particle_fragment:zh,map_particle_pars_fragment:Uh,metalnessmap_fragment:jh,metalnessmap_pars_fragment:$h,morphnormal_vertex:Vh,morphtarget_pars_vertex:Gh,morphtarget_vertex:Hh,normal_flip:Wh,normal_fragment:Xh,normalmap_pars_fragment:qh,packing:Yh,premultiplied_alpha_fragment:Zh,project_vertex:Kh,roughnessmap_fragment:Qh,roughnessmap_pars_fragment:Jh,shadowmap_pars_fragment:td,shadowmap_pars_vertex:ed,shadowmap_vertex:id,shadowmask_pars_fragment:rd,skinbase_vertex:nd,skinning_pars_vertex:od,skinning_vertex:ad,skinnormal_vertex:sd,specularmap_fragment:cd,specularmap_pars_fragment:ud,tonemapping_fragment:ld,tonemapping_pars_fragment:hd,uv_pars_fragment:dd,uv_pars_vertex:fd,uv_vertex:pd,uv2_pars_fragment:md,uv2_pars_vertex:gd,uv2_vertex:vd,worldpos_vertex:yd,cube_frag:bd,cube_vert:xd,depth_frag:_d,depth_vert:wd,distanceRGBA_frag:Sd,distanceRGBA_vert:Ad,equirect_frag:Md,equirect_vert:Pd,linedashed_frag:Cd,linedashed_vert:Td,meshbasic_frag:Ed,meshbasic_vert:Id,meshlambert_frag:Ld,meshlambert_vert:Rd,meshphong_frag:Od,meshphong_vert:Dd,meshphysical_frag:Nd,meshphysical_vert:kd,normal_frag:Fd,normal_vert:Bd,points_frag:zd,points_vert:Ud,shadow_frag:jd,shadow_vert:$d};ct.prototype={constructor:ct,isColor:!0,r:1,g:1,b:1,set:function(t){return t&&t.isColor?this.copy(t):\"number\"==typeof t?this.setHex(t):\"string\"==typeof t&&this.setStyle(t),this},setScalar:function(t){this.r=t,this.g=t,this.b=t},setHex:function(t){return t=Math.floor(t),this.r=(t>>16&255)/255,this.g=(t>>8&255)/255,this.b=(255&t)/255,this},setRGB:function(t,e,i){return this.r=t,this.g=e,this.b=i,this},setHSL:function(){function t(t,e,i){return i<0&&(i+=1),i>1&&(i-=1),i<1/6?t+6*(e-t)*i:i<.5?e:i<2/3?t+6*(e-t)*(2/3-i):t}return function(e,i,r){if(e=Fl.euclideanModulo(e,1),i=Fl.clamp(i,0,1),r=Fl.clamp(r,0,1),0===i)this.r=this.g=this.b=r;else{var n=r<=.5?r*(1+i):r+i-r*i,o=2*r-n;this.r=t(o,n,e+1/3),this.g=t(o,n,e),this.b=t(o,n,e-1/3)}return this}}(),setStyle:function(t){function e(e){void 0!==e&&parseFloat(e)<1&&console.warn(\"THREE.Color: Alpha component of \"+t+\" will be ignored.\")}var i;if(i=/^((?:rgb|hsl)a?)\\(\\s*([^\\)]*)\\)/.exec(t)){var r,n=i[1],o=i[2];switch(n){case\"rgb\":case\"rgba\":if(r=/^(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*(,\\s*([0-9]*\\.?[0-9]+)\\s*)?$/.exec(o))return this.r=Math.min(255,parseInt(r[1],10))/255,this.g=Math.min(255,parseInt(r[2],10))/255,this.b=Math.min(255,parseInt(r[3],10))/255,e(r[5]),this;if(r=/^(\\d+)\\%\\s*,\\s*(\\d+)\\%\\s*,\\s*(\\d+)\\%\\s*(,\\s*([0-9]*\\.?[0-9]+)\\s*)?$/.exec(o))return this.r=Math.min(100,parseInt(r[1],10))/100,this.g=Math.min(100,parseInt(r[2],10))/100,this.b=Math.min(100,parseInt(r[3],10))/100,e(r[5]),this;break;case\"hsl\":case\"hsla\":if(r=/^([0-9]*\\.?[0-9]+)\\s*,\\s*(\\d+)\\%\\s*,\\s*(\\d+)\\%\\s*(,\\s*([0-9]*\\.?[0-9]+)\\s*)?$/.exec(o)){var a=parseFloat(r[1])/360,s=parseInt(r[2],10)/100,c=parseInt(r[3],10)/100;return e(r[5]),this.setHSL(a,s,c)}}}else if(i=/^\\#([A-Fa-f0-9]+)$/.exec(t)){var u=i[1],l=u.length;if(3===l)return this.r=parseInt(u.charAt(0)+u.charAt(0),16)/255,this.g=parseInt(u.charAt(1)+u.charAt(1),16)/255,this.b=parseInt(u.charAt(2)+u.charAt(2),16)/255,this;if(6===l)return this.r=parseInt(u.charAt(0)+u.charAt(1),16)/255,this.g=parseInt(u.charAt(2)+u.charAt(3),16)/255,this.b=parseInt(u.charAt(4)+u.charAt(5),16)/255,this}if(t&&t.length>0){var u=Gd[t];void 0!==u?this.setHex(u):console.warn(\"THREE.Color: Unknown color \"+t)}return this},clone:function(){return new this.constructor(this.r,this.g,this.b)},copy:function(t){return this.r=t.r,this.g=t.g,this.b=t.b,this},copyGammaToLinear:function(t,e){return void 0===e&&(e=2),this.r=Math.pow(t.r,e),this.g=Math.pow(t.g,e),this.b=Math.pow(t.b,e),this},copyLinearToGamma:function(t,e){void 0===e&&(e=2);var i=e>0?1/e:1;return this.r=Math.pow(t.r,i),this.g=Math.pow(t.g,i),this.b=Math.pow(t.b,i),this},convertGammaToLinear:function(){var t=this.r,e=this.g,i=this.b;return this.r=t*t,this.g=e*e,this.b=i*i,this},convertLinearToGamma:function(){return this.r=Math.sqrt(this.r),this.g=Math.sqrt(this.g),this.b=Math.sqrt(this.b),this},getHex:function(){return 255*this.r<<16^255*this.g<<8^255*this.b<<0},getHexString:function(){return(\"000000\"+this.getHex().toString(16)).slice(-6)},getHSL:function(t){var e,i,r=t||{h:0,s:0,l:0},n=this.r,o=this.g,a=this.b,s=Math.max(n,o,a),c=Math.min(n,o,a),u=(c+s)/2;if(c===s)e=0,i=0;else{var l=s-c;switch(i=u<=.5?l/(s+c):l/(2-s-c),s){case n:e=(o-a)/l+(on&&(n=u),l>o&&(o=l),h>a&&(a=h)}this.min.set(e,i,r),this.max.set(n,o,a)},setFromPoints:function(t){var e=this;this.makeEmpty();for(var i=0,r=t.length;ithis.max.x||t.ythis.max.y||t.zthis.max.z)},containsBox:function(t){return this.min.x<=t.min.x&&t.max.x<=this.max.x&&this.min.y<=t.min.y&&t.max.y<=this.max.y&&this.min.z<=t.min.z&&t.max.z<=this.max.z},getParameter:function(t,e){var i=e||new g;return i.set((t.x-this.min.x)/(this.max.x-this.min.x),(t.y-this.min.y)/(this.max.y-this.min.y),(t.z-this.min.z)/(this.max.z-this.min.z))},intersectsBox:function(t){return!(t.max.xthis.max.x||t.max.ythis.max.y||t.max.zthis.max.z)},intersectsSphere:function(){var t;return function(e){return void 0===t&&(t=new g),this.clampPoint(e.center,t),t.distanceToSquared(e.center)<=e.radius*e.radius}}(),intersectsPlane:function(t){var e,i;return t.normal.x>0?(e=t.normal.x*this.min.x,i=t.normal.x*this.max.x):(e=t.normal.x*this.max.x,i=t.normal.x*this.min.x),t.normal.y>0?(e+=t.normal.y*this.min.y,i+=t.normal.y*this.max.y):(e+=t.normal.y*this.max.y,i+=t.normal.y*this.min.y),t.normal.z>0?(e+=t.normal.z*this.min.z,i+=t.normal.z*this.max.z):(e+=t.normal.z*this.max.z,i+=t.normal.z*this.min.z),e<=t.constant&&i>=t.constant},clampPoint:function(t,e){var i=e||new g;return i.copy(t).clamp(this.min,this.max)},distanceToPoint:function(){var t=new g;return function(e){var i=t.copy(e).clamp(this.min,this.max);return i.sub(e).length()}}(),getBoundingSphere:function(){var t=new g;return function(e){var i=e||new ht;return i.center=this.center(),i.radius=.5*this.size(t).length(),i}}(),intersect:function(t){return this.min.max(t.min),this.max.min(t.max),this.isEmpty()&&this.makeEmpty(),this},union:function(t){return this.min.min(t.min),this.max.max(t.max),this},applyMatrix4:function(){var t=[new g,new g,new g,new g,new g,new g,new g,new g];return function(e){return this.isEmpty()?this:(t[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(e),t[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(e),t[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(e),t[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(e),t[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(e),t[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(e),t[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(e),t[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(e),this.setFromPoints(t),this)}}(),translate:function(t){return this.min.add(t),this.max.add(t),this},equals:function(t){return t.min.equals(this.min)&&t.max.equals(this.max)}},ht.prototype={constructor:ht,set:function(t,e){return this.center.copy(t),this.radius=e,this},setFromPoints:function(){var t=new lt;return function(e,i){var r=this.center;void 0!==i?r.copy(i):t.setFromPoints(e).center(r);for(var n=0,o=0,a=e.length;othis.radius*this.radius&&(r.sub(this.center).normalize(),r.multiplyScalar(this.radius).add(this.center)),r},getBoundingBox:function(t){var e=t||new lt;return e.set(this.center,this.center),e.expandByScalar(this.radius),e},applyMatrix4:function(t){return this.center.applyMatrix4(t),this.radius=this.radius*t.getMaxScaleOnAxis(),this},translate:function(t){return this.center.add(t),this},equals:function(t){return t.center.equals(this.center)&&t.radius===this.radius}},dt.prototype={constructor:dt,isMatrix3:!0,set:function(t,e,i,r,n,o,a,s,c){var u=this.elements;return u[0]=t,u[1]=r,u[2]=a,u[3]=e,u[4]=n,u[5]=s,u[6]=i,u[7]=o,u[8]=c,this},identity:function(){return this.set(1,0,0,0,1,0,0,0,1),this},clone:function(){return(new this.constructor).fromArray(this.elements)},copy:function(t){var e=t.elements;return this.set(e[0],e[3],e[6],e[1],e[4],e[7],e[2],e[5],e[8]),this},setFromMatrix4:function(t){var e=t.elements;return this.set(e[0],e[4],e[8],e[1],e[5],e[9],e[2],e[6],e[10]),this},applyToVector3Array:function(){var t;return function(e,i,r){var n=this;void 0===t&&(t=new g),void 0===i&&(i=0),void 0===r&&(r=e.length);for(var o=0,a=i;o1))return r.copy(n).multiplyScalar(a).add(e.start)}else if(0===this.distanceToPoint(e.start))return r.copy(e.start)}}(),intersectsLine:function(t){var e=this.distanceToPoint(t.start),i=this.distanceToPoint(t.end);return e<0&&i>0||i<0&&e>0},intersectsBox:function(t){return t.intersectsPlane(this)},intersectsSphere:function(t){return t.intersectsPlane(this)},coplanarPoint:function(t){var e=t||new g;return e.copy(this.normal).multiplyScalar(-this.constant)},applyMatrix4:function(){var t=new g,e=new dt;return function(i,r){var n=this.coplanarPoint(t).applyMatrix4(i),o=r||e.getNormalMatrix(i),a=this.normal.applyMatrix3(o).normalize();return this.constant=-n.dot(a),this}}(),translate:function(t){return this.constant=this.constant-t.dot(this.normal),this},equals:function(t){return t.normal.equals(this.normal)&&t.constant===this.constant}},pt.prototype={constructor:pt,set:function(t,e,i,r,n,o){var a=this.planes;return a[0].copy(t),a[1].copy(e),a[2].copy(i),a[3].copy(r),a[4].copy(n),a[5].copy(o),this},clone:function(){return(new this.constructor).copy(this)},copy:function(t){for(var e=this.planes,i=0;i<6;i++)e[i].copy(t.planes[i]);return this},setFromMatrix:function(t){var e=this.planes,i=t.elements,r=i[0],n=i[1],o=i[2],a=i[3],s=i[4],c=i[5],u=i[6],l=i[7],h=i[8],d=i[9],f=i[10],p=i[11],m=i[12],g=i[13],v=i[14],y=i[15];return e[0].setComponents(a-r,l-s,p-h,y-m).normalize(),e[1].setComponents(a+r,l+s,p+h,y+m).normalize(),e[2].setComponents(a+n,l+c,p+d,y+g).normalize(),e[3].setComponents(a-n,l-c,p-d,y-g).normalize(),e[4].setComponents(a-o,l-u,p-f,y-v).normalize(),e[5].setComponents(a+o,l+u,p+f,y+v).normalize(),this},intersectsObject:function(){var t=new ht;return function(e){var i=e.geometry;return null===i.boundingSphere&&i.computeBoundingSphere(),t.copy(i.boundingSphere).applyMatrix4(e.matrixWorld),this.intersectsSphere(t)}}(),intersectsSprite:function(){var t=new ht;return function(e){return t.center.set(0,0,0),t.radius=.7071067811865476,t.applyMatrix4(e.matrixWorld),this.intersectsSphere(t)}}(),intersectsSphere:function(t){for(var e=this.planes,i=t.center,r=-t.radius,n=0;n<6;n++){var o=e[n].distanceToPoint(i);if(o0?i.min.x:i.max.x,e.x=o.normal.x>0?i.max.x:i.min.x,t.y=o.normal.y>0?i.min.y:i.max.y,e.y=o.normal.y>0?i.max.y:i.min.y,t.z=o.normal.z>0?i.min.z:i.max.z,e.z=o.normal.z>0?i.max.z:i.min.z;var a=o.distanceToPoint(t),s=o.distanceToPoint(e);if(a<0&&s<0)return!1}return!0}}(),containsPoint:function(t){for(var e=this.planes,i=0;i<6;i++)if(e[i].distanceToPoint(t)<0)return!1;return!0}};var Xd=0;Rt.prototype={constructor:Rt,isBufferAttribute:!0,get count(){return this.array.length/this.itemSize},set needsUpdate(t){t===!0&&this.version++},setDynamic:function(t){return this.dynamic=t,this},copy:function(t){return this.array=new t.array.constructor(t.array),this.itemSize=t.itemSize,this.normalized=t.normalized,this.dynamic=t.dynamic,this},copyAt:function(t,e,i){var r=this;t*=this.itemSize,i*=e.itemSize;for(var n=0,o=this.itemSize;n1){for(var r=0;r1)for(var r=0;r0){o.children=[];for(var a=0;a0&&(n.geometries=s),c.length>0&&(n.materials=c),u.length>0&&(n.textures=u),l.length>0&&(n.images=l)}return n.object=o,n},clone:function(t){return(new this.constructor).copy(this,t)},copy:function(t,e){var i=this;if(void 0===e&&(e=!0),this.name=t.name,this.up.copy(t.up),this.position.copy(t.position),this.quaternion.copy(t.quaternion),this.scale.copy(t.scale),this.matrix.copy(t.matrix),this.matrixWorld.copy(t.matrixWorld),this.matrixAutoUpdate=t.matrixAutoUpdate,this.matrixWorldNeedsUpdate=t.matrixWorldNeedsUpdate,this.visible=t.visible,this.castShadow=t.castShadow,this.receiveShadow=t.receiveShadow,this.frustumCulled=t.frustumCulled,this.renderOrder=t.renderOrder,this.userData=JSON.parse(JSON.stringify(t.userData)),e===!0)for(var r=0;r0)for(var p=0;p0&&(this.normalsNeedUpdate=!0)},computeMorphNormals:function(){var t,e,i,r,n,o=this;for(i=0,r=this.faces.length;i0&&(e+=i[r].distanceTo(i[r-1])),t.lineDistances[r]=e},computeBoundingBox:function(){null===this.boundingBox&&(this.boundingBox=new lt),this.boundingBox.setFromPoints(this.vertices)},computeBoundingSphere:function(){null===this.boundingSphere&&(this.boundingSphere=new ht),this.boundingSphere.setFromPoints(this.vertices)},merge:function(t,e,i){if((t&&t.isGeometry)===!1)return void console.error(\"THREE.Geometry.merge(): geometry not an instance of THREE.Geometry.\",t);var r,n=this.vertices.length,o=this.vertices,a=t.vertices,s=this.faces,c=t.faces,u=this.faceVertexUvs[0],l=t.faceVertexUvs[0];void 0===i&&(i=0),void 0!==e&&(r=(new dt).getNormalMatrix(e));for(var h=0,d=a.length;h=0;i--){var v=p[i];for(c.faces.splice(v,1),a=0,s=this.faceVertexUvs.length;a0,S=y.vertexNormals.length>0,A=1!==y.color.r||1!==y.color.g||1!==y.color.b,M=y.vertexColors.length>0,P=0;if(P=t(P,0,0),P=t(P,1,b),P=t(P,2,x),P=t(P,3,_),P=t(P,4,w),P=t(P,5,S),P=t(P,6,A),P=t(P,7,M),h.push(P),h.push(y.a,y.b,y.c),h.push(y.materialIndex),_){var C=n.faceVertexUvs[0][u];h.push(r(C[0]),r(C[1]),r(C[2]))}if(w&&h.push(e(y.normal)),S){var T=y.vertexNormals;h.push(e(T[0]),e(T[1]),e(T[2]))}if(A&&h.push(i(y.color)),M){var E=y.vertexColors;h.push(i(E[0]),i(E[1]),i(E[2]))}}return o.data={},o.data.vertices=c,o.data.normals=d,p.length>0&&(o.data.colors=p),g.length>0&&(o.data.uvs=[g]),o.data.faces=h,o},clone:function(){return(new zt).copy(this)},copy:function(t){var e=this;this.vertices=[],this.faces=[],this.faceVertexUvs=[[]];for(var i=t.vertices,r=0,n=i.length;r0,s=o[1]&&o[1].length>0,c=t.morphTargets,u=c.length;if(u>0){e=[];for(var l=0;l0){d=[];for(var l=0;l0){var r=new Float32Array(3*t.normals.length);this.addAttribute(\"normal\",new Rt(r,3).copyVector3sArray(t.normals))}if(t.colors.length>0){var n=new Float32Array(3*t.colors.length);this.addAttribute(\"color\",new Rt(n,3).copyColorsArray(t.colors))}if(t.uvs.length>0){var o=new Float32Array(2*t.uvs.length);this.addAttribute(\"uv\",new Rt(o,2).copyVector2sArray(t.uvs))}if(t.uvs2.length>0){var a=new Float32Array(2*t.uvs2.length);this.addAttribute(\"uv2\",new Rt(a,2).copyVector2sArray(t.uvs2))}if(t.indices.length>0){var s=t.vertices.length>65535?Uint32Array:Uint16Array,c=new s(3*t.indices.length);this.setIndex(new Rt(c,1).copyIndicesArray(t.indices))}this.groups=t.groups;for(var u in t.morphTargets){for(var l=[],h=t.morphTargets[u],d=0,f=h.length;d0){var g=new Ot(4*t.skinIndices.length,4);this.addAttribute(\"skinIndex\",g.copyVector4sArray(t.skinIndices))}if(t.skinWeights.length>0){var v=new Ot(4*t.skinWeights.length,4);this.addAttribute(\"skinWeight\",v.copyVector4sArray(t.skinWeights))}return null!==t.boundingSphere&&(this.boundingSphere=t.boundingSphere.clone()),null!==t.boundingBox&&(this.boundingBox=t.boundingBox.clone()),this},computeBoundingBox:function(){null===this.boundingBox&&(this.boundingBox=new lt);var t=this.attributes.position.array;void 0!==t?this.boundingBox.setFromArray(t):this.boundingBox.makeEmpty(),(isNaN(this.boundingBox.min.x)||isNaN(this.boundingBox.min.y)||isNaN(this.boundingBox.min.z))&&console.error('THREE.BufferGeometry.computeBoundingBox: Computed min/max have NaN values. The \"position\" attribute is likely to have NaN values.',this)},computeBoundingSphere:function(){var t=new lt,e=new g;return function(){null===this.boundingSphere&&(this.boundingSphere=new ht);var i=this.attributes.position;if(i){var r=i.array,n=this.boundingSphere.center;t.setFromArray(r),t.center(n);for(var o=0,a=0,s=r.length;a0&&(t.data.groups=JSON.parse(JSON.stringify(s)));var c=this.boundingSphere;return null!==c&&(t.data.boundingSphere={center:c.center.toArray(),radius:c.radius}),t},clone:function(){return(new $t).copy(this)},copy:function(t){var e=this,i=t.index;null!==i&&this.setIndex(i.clone());var r=t.attributes;for(var n in r){var o=r[n];e.addAttribute(n,o.clone())}for(var a=t.groups,s=0,c=a.length;s0)if(s=d*p-f,c=d*f-p,l=h*g,s>=0)if(c>=-l)if(c<=l){var v=1/g;s*=v,c*=v,u=s*(s+d*c+2*f)+c*(d*s+c+2*p)+m}else c=h,s=Math.max(0,-(d*c+f)),u=-s*s+c*(c+2*p)+m;else c=-h,s=Math.max(0,-(d*c+f)),u=-s*s+c*(c+2*p)+m;else c<=-l?(s=Math.max(0,-(-d*h+f)),c=s>0?-h:Math.min(Math.max(-h,-p),h),u=-s*s+c*(c+2*p)+m):c<=l?(s=0,c=Math.min(Math.max(-h,-p),h),u=c*(c+2*p)+m):(s=Math.max(0,-(d*h+f)),c=s>0?h:Math.min(Math.max(-h,-p),h),u=-s*s+c*(c+2*p)+m);else c=d>0?-h:h,s=Math.max(0,-(d*c+f)),u=-s*s+c*(c+2*p)+m;return o&&o.copy(this.direction).multiplyScalar(s).add(this.origin),a&&a.copy(e).multiplyScalar(c).add(t),u}}(),intersectSphere:function(){var t=new g;return function(e,i){t.subVectors(e.center,this.origin);var r=t.dot(this.direction),n=t.dot(t)-r*r,o=e.radius*e.radius;if(n>o)return null;var a=Math.sqrt(o-n),s=r-a,c=r+a;return s<0&&c<0?null:s<0?this.at(c,i):this.at(s,i)}}(),intersectsSphere:function(t){return this.distanceToPoint(t.center)<=t.radius},distanceToPlane:function(t){var e=t.normal.dot(this.direction);if(0===e)return 0===t.distanceToPoint(this.origin)?0:null;var i=-(this.origin.dot(t.normal)+t.constant)/e;return i>=0?i:null},intersectPlane:function(t,e){var i=this.distanceToPlane(t);return null===i?null:this.at(i,e)},intersectsPlane:function(t){var e=t.distanceToPoint(this.origin);if(0===e)return!0;var i=t.normal.dot(this.direction);return i*e<0},intersectBox:function(t,e){var i,r,n,o,a,s,c=1/this.direction.x,u=1/this.direction.y,l=1/this.direction.z,h=this.origin;return c>=0?(i=(t.min.x-h.x)*c,r=(t.max.x-h.x)*c):(i=(t.max.x-h.x)*c,r=(t.min.x-h.x)*c),u>=0?(n=(t.min.y-h.y)*u,o=(t.max.y-h.y)*u):(n=(t.max.y-h.y)*u,o=(t.min.y-h.y)*u),i>o||n>r?null:((n>i||i!==i)&&(i=n),(o=0?(a=(t.min.z-h.z)*l,s=(t.max.z-h.z)*l):(a=(t.max.z-h.z)*l,s=(t.min.z-h.z)*l),i>s||a>r?null:((a>i||i!==i)&&(i=a),(s=0?i:r,e)))},intersectsBox:function(){var t=new g;return function(e){return null!==this.intersectBox(e,t)}}(),intersectTriangle:function(){var t=new g,e=new g,i=new g,r=new g;return function(n,o,a,s,c){e.subVectors(o,n),i.subVectors(a,n),r.crossVectors(e,i);var u,l=this.direction.dot(r);if(l>0){if(s)return null;u=1}else{if(!(l<0))return null;u=-1,l=-l}t.subVectors(this.origin,n);var h=u*this.direction.dot(i.crossVectors(t,i));\nif(h<0)return null;var d=u*this.direction.dot(e.cross(t));if(d<0)return null;if(h+d>l)return null;var f=-u*t.dot(r);return f<0?null:this.at(f/l,c)}}(),applyMatrix4:function(t){return this.direction.add(this.origin).applyMatrix4(t),this.origin.applyMatrix4(t),this.direction.sub(this.origin),this.direction.normalize(),this},equals:function(t){return t.origin.equals(this.origin)&&t.direction.equals(this.direction)}},Jt.prototype={constructor:Jt,set:function(t,e){return this.start.copy(t),this.end.copy(e),this},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.start.copy(t.start),this.end.copy(t.end),this},center:function(t){var e=t||new g;return e.addVectors(this.start,this.end).multiplyScalar(.5)},delta:function(t){var e=t||new g;return e.subVectors(this.end,this.start)},distanceSq:function(){return this.start.distanceToSquared(this.end)},distance:function(){return this.start.distanceTo(this.end)},at:function(t,e){var i=e||new g;return this.delta(i).multiplyScalar(t).add(this.start)},closestPointToPointParameter:function(){var t=new g,e=new g;return function(i,r){t.subVectors(i,this.start),e.subVectors(this.end,this.start);var n=e.dot(e),o=e.dot(t),a=o/n;return r&&(a=Fl.clamp(a,0,1)),a}}(),closestPointToPoint:function(t,e,i){var r=this.closestPointToPointParameter(t,e),n=i||new g;return this.delta(n).multiplyScalar(r).add(this.start)},applyMatrix4:function(t){return this.start.applyMatrix4(t),this.end.applyMatrix4(t),this},equals:function(t){return t.start.equals(this.start)&&t.end.equals(this.end)}},te.normal=function(){var t=new g;return function(e,i,r,n){var o=n||new g;o.subVectors(r,i),t.subVectors(e,i),o.cross(t);var a=o.lengthSq();return a>0?o.multiplyScalar(1/Math.sqrt(a)):o.set(0,0,0)}}(),te.barycoordFromPoint=function(){var t=new g,e=new g,i=new g;return function(r,n,o,a,s){t.subVectors(a,n),e.subVectors(o,n),i.subVectors(r,n);var c=t.dot(t),u=t.dot(e),l=t.dot(i),h=e.dot(e),d=e.dot(i),f=c*h-u*u,p=s||new g;if(0===f)return p.set(-2,-1,-1);var m=1/f,v=(h*l-u*d)*m,y=(c*d-u*l)*m;return p.set(1-v-y,y,v)}}(),te.containsPoint=function(){var t=new g;return function(e,i,r,n){var o=te.barycoordFromPoint(e,i,r,n,t);return o.x>=0&&o.y>=0&&o.x+o.y<=1}}(),te.prototype={constructor:te,set:function(t,e,i){return this.a.copy(t),this.b.copy(e),this.c.copy(i),this},setFromPointsAndIndices:function(t,e,i,r){return this.a.copy(t[e]),this.b.copy(t[i]),this.c.copy(t[r]),this},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.a.copy(t.a),this.b.copy(t.b),this.c.copy(t.c),this},area:function(){var t=new g,e=new g;return function(){return t.subVectors(this.c,this.b),e.subVectors(this.a,this.b),.5*t.cross(e).length()}}(),midpoint:function(t){var e=t||new g;return e.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)},normal:function(t){return te.normal(this.a,this.b,this.c,t)},plane:function(t){var e=t||new ft;return e.setFromCoplanarPoints(this.a,this.b,this.c)},barycoordFromPoint:function(t,e){return te.barycoordFromPoint(t,this.a,this.b,this.c,e)},containsPoint:function(t){return te.containsPoint(t,this.a,this.b,this.c)},closestPointToPoint:function(){var t,e,i,r;return function(n,o){void 0===t&&(t=new ft,e=[new Jt,new Jt,new Jt],i=new g,r=new g);var a=o||new g,s=1/0;if(t.setFromCoplanarPoints(this.a,this.b,this.c),t.projectPoint(n,i),this.containsPoint(i)===!0)a.copy(i);else{e[0].set(this.a,this.b),e[1].set(this.b,this.c),e[2].set(this.c,this.a);for(var c=0;c0){this.morphTargetBase=-1,this.morphTargetInfluences=[],this.morphTargetDictionary={};for(var e=0,i=this.geometry.morphTargets.length;ee.far?null:{distance:u,point:x.clone(),object:t}}function i(i,r,n,o,u,l,h,d){a.fromArray(o,3*l),s.fromArray(o,3*h),c.fromArray(o,3*d);var p=e(i,r,n,a,s,c,b);return p&&(u&&(f.fromArray(u,2*l),m.fromArray(u,2*h),v.fromArray(u,2*d),p.uv=t(b,a,s,c,f,m,v)),p.face=new Dt(l,h,d,te.normal(a,s,c)),p.faceIndex=l),p}var r=new p,n=new Qt,o=new ht,a=new g,s=new g,c=new g,u=new g,l=new g,d=new g,f=new h,m=new h,v=new h,y=new g,b=new g,x=new g;return function(h,p){var g=this,y=this.geometry,x=this.material,_=this.matrixWorld;if(void 0!==x&&(null===y.boundingSphere&&y.computeBoundingSphere(),o.copy(y.boundingSphere),o.applyMatrix4(_),h.ray.intersectsSphere(o)!==!1&&(r.getInverse(_),n.copy(h.ray).applyMatrix4(r),null===y.boundingBox||n.intersectsBox(y.boundingBox)!==!1))){var w,S;if(y&&y.isBufferGeometry){var A,M,P,C=y.index,T=y.attributes,E=T.position.array;if(void 0!==T.uv&&(w=T.uv.array),null!==C)for(var I=C.array,L=0,R=I.length;L0&&(w=U);for(var j=0,$=z.length;j<$;j++){var V=z[j],G=k===!0?F[V.materialIndex]:x;if(void 0!==G){if(O=B[V.a],D=B[V.b],N=B[V.c],G.morphTargets===!0){var H=y.morphTargets,W=g.morphTargetInfluences;a.set(0,0,0),s.set(0,0,0),c.set(0,0,0);for(var X=0,q=H.length;Xn||i.push({distance:Math.sqrt(r),point:this.position,face:null,object:this})}}(),clone:function(){return new this.constructor(this.material).copy(this)}}),pe.prototype=Object.assign(Object.create(Ft.prototype),{constructor:pe,copy:function(t){var e=this;Ft.prototype.copy.call(this,t,!1);for(var i=t.levels,r=0,n=i.length;r1){t.setFromMatrixPosition(i.matrixWorld),e.setFromMatrixPosition(this.matrixWorld);var n=t.distanceTo(e);r[0].object.visible=!0;for(var o=1,a=r.length;o=r[o].distance;o++)r[o-1].object.visible=!1,r[o].object.visible=!0;for(;os)){f.applyMatrix4(o.matrixWorld);var M=r.ray.origin.distanceTo(f);Mr.far||n.push({distance:M,point:d.clone().applyMatrix4(o.matrixWorld),index:x,face:null,faceIndex:null,object:o})}}else for(var x=0,_=y.length/3-1;x<_;x+=p){l.fromArray(y,3*x),h.fromArray(y,3*x+3);var A=e.distanceSqToSegment(l,h,f,d);if(!(A>s)){f.applyMatrix4(o.matrixWorld);var M=r.ray.origin.distanceTo(f);Mr.far||n.push({distance:M,point:d.clone().applyMatrix4(o.matrixWorld),index:x,face:null,faceIndex:null,object:o})}}}else if(c&&c.isGeometry)for(var P=c.vertices,C=P.length,x=0;xs)){f.applyMatrix4(o.matrixWorld);var M=r.ray.origin.distanceTo(f);Mr.far||n.push({distance:M,point:d.clone().applyMatrix4(o.matrixWorld),index:x,face:null,faceIndex:null,object:o})}}}}}(),clone:function(){return new this.constructor(this.geometry,this.material).copy(this)}}),_e.prototype=Object.assign(Object.create(xe.prototype),{constructor:_e,isLineSegments:!0}),we.prototype=Object.create(ot.prototype),we.prototype.constructor=we,we.prototype.isPointsMaterial=!0,we.prototype.copy=function(t){return ot.prototype.copy.call(this,t),this.color.copy(t.color),this.map=t.map,this.size=t.size,this.sizeAttenuation=t.sizeAttenuation,this},Se.prototype=Object.assign(Object.create(Ft.prototype),{constructor:Se,isPoints:!0,raycast:function(){var t=new p,e=new Qt,i=new ht;return function(r,n){function o(t,i){var o=e.distanceSqToPoint(t);if(or.far)return;n.push({distance:u,distanceToRay:Math.sqrt(o),point:s.clone(),index:i,face:null,object:a})}}var a=this,s=this.geometry,c=this.matrixWorld,u=r.params.Points.threshold;if(null===s.boundingSphere&&s.computeBoundingSphere(),i.copy(s.boundingSphere),i.applyMatrix4(c),r.ray.intersectsSphere(i)!==!1){t.getInverse(c),e.copy(r.ray).applyMatrix4(t);var l=u/((this.scale.x+this.scale.y+this.scale.z)/3),h=l*l,d=new g;if(s&&s.isBufferGeometry){var f=s.index,p=s.attributes,m=p.position.array;if(null!==f)for(var v=f.array,y=0,b=v.length;y0||0===t.search(/^data\\:image\\/jpeg/);n.format=r?el:il,n.image=i,n.needsUpdate=!0,void 0!==e&&e(n)},i,r),n},setCrossOrigin:function(t){return this.crossOrigin=t,this},setWithCredentials:function(t){return this.withCredentials=t,this},setPath:function(t){return this.path=t,this}}),De.prototype=Object.assign(Object.create(Ft.prototype),{constructor:De,isLight:!0,copy:function(t){return Ft.prototype.copy.call(this,t),this.color.copy(t.color),this.intensity=t.intensity,this},toJSON:function(t){var e=Ft.prototype.toJSON.call(this,t);return e.object.color=this.color.getHex(),e.object.intensity=this.intensity,void 0!==this.groundColor&&(e.object.groundColor=this.groundColor.getHex()),void 0!==this.distance&&(e.object.distance=this.distance),void 0!==this.angle&&(e.object.angle=this.angle),void 0!==this.decay&&(e.object.decay=this.decay),void 0!==this.penumbra&&(e.object.penumbra=this.penumbra),void 0!==this.shadow&&(e.object.shadow=this.shadow.toJSON()),e}}),Ne.prototype=Object.assign(Object.create(De.prototype),{constructor:Ne,isHemisphereLight:!0,copy:function(t){return De.prototype.copy.call(this,t),this.groundColor.copy(t.groundColor),this}}),Object.assign(ke.prototype,{copy:function(t){return this.camera=t.camera.clone(),this.bias=t.bias,this.radius=t.radius,this.mapSize.copy(t.mapSize),this},clone:function(){return(new this.constructor).copy(this)},toJSON:function(){var t={};return 0!==this.bias&&(t.bias=this.bias),1!==this.radius&&(t.radius=this.radius),512===this.mapSize.x&&512===this.mapSize.y||(t.mapSize=this.mapSize.toArray()),t.camera=this.camera.toJSON(!1).object,delete t.camera.matrix,t}}),Fe.prototype=Object.assign(Object.create(ke.prototype),{constructor:Fe,isSpotLightShadow:!0,update:function(t){var e=2*Fl.RAD2DEG*t.angle,i=this.mapSize.width/this.mapSize.height,r=t.distance||500,n=this.camera;e===n.fov&&i===n.aspect&&r===n.far||(n.fov=e,n.aspect=i,n.far=r,n.updateProjectionMatrix())}}),Be.prototype=Object.assign(Object.create(De.prototype),{constructor:Be,isSpotLight:!0,copy:function(t){return De.prototype.copy.call(this,t),this.distance=t.distance,this.angle=t.angle,this.penumbra=t.penumbra,this.decay=t.decay,this.target=t.target.clone(),this.shadow=t.shadow.clone(),this}}),ze.prototype=Object.assign(Object.create(De.prototype),{constructor:ze,isPointLight:!0,copy:function(t){return De.prototype.copy.call(this,t),this.distance=t.distance,this.decay=t.decay,this.shadow=t.shadow.clone(),this}}),Ue.prototype=Object.assign(Object.create(ke.prototype),{constructor:Ue}),je.prototype=Object.assign(Object.create(De.prototype),{constructor:je,isDirectionalLight:!0,copy:function(t){return De.prototype.copy.call(this,t),this.target=t.target.clone(),this.shadow=t.shadow.clone(),this}}),$e.prototype=Object.assign(Object.create(De.prototype),{constructor:$e,isAmbientLight:!0});var Qd={arraySlice:function(t,e,i){return Qd.isTypedArray(t)?new t.constructor(t.subarray(e,i)):t.slice(e,i)},convertArray:function(t,e,i){return!t||!i&&t.constructor===e?t:\"number\"==typeof e.BYTES_PER_ELEMENT?new e(t):Array.prototype.slice.call(t)},isTypedArray:function(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)},getKeyframeOrder:function(t){function e(e,i){return t[e]-t[i]}for(var i=t.length,r=new Array(i),n=0;n!==i;++n)r[n]=n;return r.sort(e),r},sortedArray:function(t,e,i){for(var r=t.length,n=new t.constructor(r),o=0,a=0;a!==r;++o)for(var s=i[o]*e,c=0;c!==e;++c)n[a++]=t[s+c];return n},flattenJSON:function(t,e,i,r){for(var n=1,o=t[0];void 0!==o&&void 0===o[r];)o=t[n++];if(void 0!==o){var a=o[r];if(void 0!==a)if(Array.isArray(a)){do a=o[r],void 0!==a&&(e.push(o.time),i.push.apply(i,a)),o=t[n++];while(void 0!==o)}else if(void 0!==a.toArray){do a=o[r],void 0!==a&&(e.push(o.time),a.toArray(i,i.length)),o=t[n++];while(void 0!==o)}else do a=o[r],void 0!==a&&(e.push(o.time),i.push(a)),o=t[n++];while(void 0!==o)}}};Ve.prototype={constructor:Ve,evaluate:function(t){var e=this,i=this.parameterPositions,r=this._cachedIndex,n=i[r],o=i[r-1];t:{e:{var a;i:{r:if(!(t=o)break t;var c=i[1];t=o)break e}a=r,r=0}}for(;r>>1;te;)--o;if(++o,0!==n||o!==r){n>=o&&(o=Math.max(o,1),n=o-1);var a=this.getValueSize();this.times=Qd.arraySlice(i,n,o),this.values=Qd.arraySlice(this.values,n*a,o*a)}return this},validate:function(){var t=this,e=!0,i=this.getValueSize();i-Math.floor(i)!==0&&(console.error(\"invalid value size in track\",this),e=!1);var r=this.times,n=this.values,o=r.length;0===o&&(console.error(\"track is empty\",this),e=!1);for(var a=null,s=0;s!==o;s++){var c=r[s];if(\"number\"==typeof c&&isNaN(c)){console.error(\"time is not a valid number\",t,s,c),e=!1;break}if(null!==a&&a>c){console.error(\"out of order keys\",t,s,c,a),e=!1;break}a=c}if(void 0!==n&&Qd.isTypedArray(n))for(var s=0,u=n.length;s!==u;++s){var l=n[s];if(isNaN(l)){console.error(\"value is not a valid number\",t,s,l),e=!1;break}}return e},optimize:function(){for(var t=this.times,e=this.values,i=this.getValueSize(),r=1,n=1,o=t.length-1;n<=o;++n){var a=!1,s=t[n],c=t[n+1];if(s!==c&&(1!==n||s!==s[0]))for(var u=n*i,l=u-i,h=u+i,d=0;d!==i;++d){var f=e[u+d];if(f!==e[l+d]||f!==e[h+d]){a=!0;break}}if(a){if(n!==r){t[r]=t[n];for(var p=n*i,m=r*i,d=0;d!==i;++d)e[m+d]=e[p+d]}++r}}return r!==t.length&&(this.times=Qd.arraySlice(t,0,r),this.values=Qd.arraySlice(e,0,r*i)),this}},qe.prototype=Object.assign(Object.create(Jd),{constructor:qe,ValueTypeName:\"vector\"}),Ye.prototype=Object.assign(Object.create(Ve.prototype),{constructor:Ye,interpolate_:function(t,e,i,r){for(var n=this.resultBuffer,o=this.sampleValues,a=this.valueSize,s=t*a,c=(i-e)/(r-e),u=s+a;s!==u;s+=4)m.slerpFlat(n,0,o,s-a,o,s,c);return n}}),Ze.prototype=Object.assign(Object.create(Jd),{constructor:Ze,ValueTypeName:\"quaternion\",DefaultInterpolation:xl,InterpolantFactoryMethodLinear:function(t){return new Ye(this.times,this.values,this.getValueSize(),t)},InterpolantFactoryMethodSmooth:void 0}),Ke.prototype=Object.assign(Object.create(Jd),{constructor:Ke,ValueTypeName:\"number\"}),Qe.prototype=Object.assign(Object.create(Jd),{constructor:Qe,ValueTypeName:\"string\",ValueBufferType:Array,DefaultInterpolation:bl,InterpolantFactoryMethodLinear:void 0,InterpolantFactoryMethodSmooth:void 0}),Je.prototype=Object.assign(Object.create(Jd),{constructor:Je,ValueTypeName:\"bool\",ValueBufferType:Array,DefaultInterpolation:bl,InterpolantFactoryMethodLinear:void 0,InterpolantFactoryMethodSmooth:void 0}),ti.prototype=Object.assign(Object.create(Jd),{constructor:ti,ValueTypeName:\"color\"}),ei.prototype=Jd,Jd.constructor=ei,Object.assign(ei,{parse:function(t){if(void 0===t.type)throw new Error(\"track type undefined, can not parse\");var e=ei._getTrackTypeForValueTypeName(t.type);if(void 0===t.times){var i=[],r=[];Qd.flattenJSON(t.keys,i,r,\"value\"),t.times=i,t.values=r}return void 0!==e.parse?e.parse(t):new e(t.name,t.times,t.values,t.interpolation)},toJSON:function(t){var e,i=t.constructor;if(void 0!==i.toJSON)e=i.toJSON(t);else{e={name:t.name,times:Qd.convertArray(t.times,Array),values:Qd.convertArray(t.values,Array)};var r=t.getInterpolation();r!==t.DefaultInterpolation&&(e.interpolation=r)}return e.type=t.ValueTypeName,e},_getTrackTypeForValueTypeName:function(t){switch(t.toLowerCase()){case\"scalar\":case\"double\":case\"float\":case\"number\":case\"integer\":return Ke;case\"vector\":case\"vector2\":case\"vector3\":case\"vector4\":return qe;case\"color\":return ti;case\"quaternion\":return Ze;case\"bool\":case\"boolean\":return Je;case\"string\":return Qe}throw new Error(\"Unsupported typeName: \"+t)}}),ii.prototype={constructor:ii,resetDuration:function(){for(var t=this,e=this.tracks,i=0,r=0,n=e.length;r!==n;++r){var o=t.tracks[r];i=Math.max(i,o.times[o.times.length-1])}this.duration=i},trim:function(){for(var t=this,e=0;e1){var u=c[1],l=r[u];l||(r[u]=l=[]),l.push(s)}}var h=[];for(var u in r)h.push(ii.CreateFromMorphTargetSequence(u,r[u],e,i));return h},parseAnimation:function(t,e,i){if(!t)return console.error(\" no animation in JSONLoader data\"),null;for(var r=function(t,e,i,r,n){if(0!==i.length){var o=[],a=[];Qd.flattenJSON(i,o,a,r),0!==o.length&&n.push(new t(e,o,a))}},n=[],o=t.name||\"default\",a=t.length||-1,s=t.fps||30,c=t.hierarchy||[],u=0;u1?t.skinWeights[i+1]:0,s=e>2?t.skinWeights[i+2]:0,c=e>3?t.skinWeights[i+3]:0;a.skinWeights.push(new it(n,o,s,c))}if(t.skinIndices)for(var i=0,r=t.skinIndices.length;i1?t.skinIndices[i+1]:0,h=e>2?t.skinIndices[i+2]:0,d=e>3?t.skinIndices[i+3]:0;a.skinIndices.push(new it(u,l,h,d))}a.bones=t.bones,a.bones&&a.bones.length>0&&(a.skinWeights.length!==a.skinIndices.length||a.skinIndices.length!==a.vertices.length)&&console.warn(\"When skinning, number of vertices (\"+a.vertices.length+\"), skinIndices (\"+a.skinIndices.length+\"), and skinWeights (\"+a.skinWeights.length+\") should match.\")}function n(e){if(void 0!==t.morphTargets)for(var i=0,r=t.morphTargets.length;i0){console.warn('THREE.JSONLoader: \"morphColors\" no longer supported. Using them as face colors.');for(var l=a.faces,h=t.morphColors[0].colors,i=0,r=l.length;i0&&(a.animations=e)}var a=new zt,s=void 0!==t.scale?1/t.scale:1;if(i(s),r(),n(s),o(),a.computeFaceNormals(),a.computeBoundingSphere(),void 0===t.materials||0===t.materials.length)return{geometry:a};var c=oi.prototype.initMaterials(t.materials,e,this.crossOrigin);return{geometry:a,materials:c}}}),Object.assign(si.prototype,{load:function(t,e,i,r){\"\"===this.texturePath&&(this.texturePath=t.substring(0,t.lastIndexOf(\"/\")+1));var n=this,o=new Te(n.manager);o.load(t,function(t){n.parse(JSON.parse(t),e)},i,r)},setTexturePath:function(t){this.texturePath=t},setCrossOrigin:function(t){this.crossOrigin=t},parse:function(t,e){var i=this.parseGeometries(t.geometries),r=this.parseImages(t.images,function(){void 0!==e&&e(a)}),n=this.parseTextures(t.textures,r),o=this.parseMaterials(t.materials,n),a=this.parseObject(t.object,i,o);return t.animations&&(a.animations=this.parseAnimations(t.animations)),void 0!==t.images&&0!==t.images.length||void 0!==e&&e(a),a},parseGeometries:function(t){var e=this,i={};if(void 0!==t)for(var r=new ai,n=new ni,o=0,a=t.length;o0){var o=new Ce(e),a=new Le(o);a.setCrossOrigin(this.crossOrigin);for(var s=0,c=t.length;s0?new ye(c,u):new ie(c,u);break;case\"LOD\":a=new pe;break;case\"Line\":a=new xe(n(e.geometry),o(e.material),e.mode);break;case\"LineSegments\":a=new _e(n(e.geometry),o(e.material));break;case\"PointCloud\":case\"Points\":a=new Se(n(e.geometry),o(e.material));break;case\"Sprite\":a=new fe(o(e.material));break;case\"Group\":a=new Ae;break;default:a=new Ft}if(a.uuid=e.uuid,void 0!==e.name&&(a.name=e.name),void 0!==e.matrix?(t.fromArray(e.matrix),t.decompose(a.position,a.quaternion,a.scale)):(void 0!==e.position&&a.position.fromArray(e.position),void 0!==e.rotation&&a.rotation.fromArray(e.rotation),void 0!==e.quaternion&&a.quaternion.fromArray(e.quaternion),void 0!==e.scale&&a.scale.fromArray(e.scale)),void 0!==e.castShadow&&(a.castShadow=e.castShadow),void 0!==e.receiveShadow&&(a.receiveShadow=e.receiveShadow),e.shadow&&(void 0!==e.shadow.bias&&(a.shadow.bias=e.shadow.bias),void 0!==e.shadow.radius&&(a.shadow.radius=e.shadow.radius),void 0!==e.shadow.mapSize&&a.shadow.mapSize.fromArray(e.shadow.mapSize),void 0!==e.shadow.camera&&(a.shadow.camera=this.parseObject(e.shadow.camera))),void 0!==e.visible&&(a.visible=e.visible),void 0!==e.userData&&(a.userData=e.userData),void 0!==e.children)for(var l in e.children)a.add(s.parseObject(e.children[l],i,r));if(\"LOD\"===e.type)for(var h=e.levels,d=0;d(u-s)*(d-c)-(l-c)*(h-s))return!1;var m,g,v,y,b,x,_,w,S,A,M,P,C,T,E;for(m=h-u,g=d-l,v=s-h,y=c-d,b=u-s,x=l-c,a=0;a=-Number.EPSILON&&T>=-Number.EPSILON&&C>=-Number.EPSILON))return!1;return!0}return function(e,i){var r=e.length;if(r<3)return null;var n,o,a,s=[],c=[],u=[];if(tf.area(e)>0)for(o=0;o2;){if(h--<=0)return console.warn(\"THREE.ShapeUtils: Unable to triangulate polygon! in triangulate()\"),i?u:s;if(n=o,l<=n&&(n=0),o=n+1,l<=o&&(o=0),a=o+1,l<=a&&(a=0),t(e,n,o,a,l,c)){var d,f,p,m,g;for(d=c[n],f=c[o],p=c[a],s.push([e[d],e[f],e[p]]),u.push([c[n],c[o],c[a]]),m=o,g=o+1;g2&&t[e-1].equals(t[0])&&t.pop()}function r(t,e,i){return t.x!==e.x?t.xNumber.EPSILON){var p;if(d>0){if(f<0||f>d)return[];if(p=u*l-c*h,p<0||p>d)return[]}else{if(f>0||f0||pM?[]:x===M?o?[]:[y]:_<=M?[y,b]:[y,S]}function o(t,e,i,r){var n=e.x-t.x,o=e.y-t.y,a=i.x-t.x,s=i.y-t.y,c=r.x-t.x,u=r.y-t.y,l=n*s-o*a,h=n*u-o*c;if(Math.abs(l)>Number.EPSILON){var d=c*s-u*a;return l>0?h>=0&&d>=0:h>=0||d>=0}return h>0}function a(t,e){function i(t,e){var i=y.length-1,r=t-1;r<0&&(r=i);var n=t+1;n>i&&(n=0);var a=o(y[t],y[r],y[n],s[e]);if(!a)return!1;var c=s.length-1,u=e-1;u<0&&(u=c);var l=e+1;return l>c&&(l=0),a=o(s[e],s[u],s[l],y[t]),!!a}function r(t,e){var i,r,o;for(i=0;i0)return!0;return!1}function a(t,i){var r,o,a,s,c;for(r=0;r0)return!0;return!1}for(var s,c,u,l,h,d,f,p,m,g,v,y=t.concat(),b=[],x=[],_=0,w=e.length;_0;){if(A--,A<0){console.log(\"Infinite Loop! Holes left:\"+b.length+\", Probably Hole outside Shape!\");break}for(u=S;u=0)break;x[f]=!0}if(c>=0)break}}return y}i(t),e.forEach(i);for(var s,c,u,l,h,d,f={},p=t.concat(),m=0,g=e.length;m0)){c=n;break}c=n-1}if(n=c,r[n]===i){var u=n/(o-1);return u}var l=r[n],h=r[n+1],d=h-l,f=(i-l)/d,u=(n+f)/(o-1);return u},getTangent:function(t){var e=1e-4,i=t-e,r=t+e;i<0&&(i=0),r>1&&(r=1);var n=this.getPoint(i),o=this.getPoint(r),a=o.clone().sub(n);return a.normalize()},getTangentAt:function(t){var e=this.getUtoTmapping(t);return this.getTangent(e)}},ci.create=function(t,e){return t.prototype=Object.create(ci.prototype),t.prototype.constructor=t,t.prototype.getPoint=e,t},ui.prototype=Object.create(ci.prototype),ui.prototype.constructor=ui,ui.prototype.isLineCurve=!0,ui.prototype.getPoint=function(t){if(1===t)return this.v2.clone();var e=this.v2.clone().sub(this.v1);return e.multiplyScalar(t).add(this.v1),e},ui.prototype.getPointAt=function(t){return this.getPoint(t)},ui.prototype.getTangent=function(t){var e=this.v2.clone().sub(this.v1);return e.normalize()},li.prototype=Object.assign(Object.create(ci.prototype),{constructor:li,add:function(t){this.curves.push(t)},closePath:function(){var t=this.curves[0].getPoint(0),e=this.curves[this.curves.length-1].getPoint(1);t.equals(e)||this.curves.push(new ui(e,t))},getPoint:function(t){for(var e=this,i=t*this.getLength(),r=this.getCurveLengths(),n=0;n=i){var o=r[n]-i,a=e.curves[n],s=a.getLength(),c=0===s?0:1-o/s;return a.getPointAt(c)}n++}return null},getLength:function(){var t=this.getCurveLengths();return t[t.length-1]},updateArcLengths:function(){this.needsUpdate=!0,this.cacheLengths=null,this.getLengths()},getCurveLengths:function(){var t=this;if(this.cacheLengths&&this.cacheLengths.length===this.curves.length)return this.cacheLengths;for(var e=[],i=0,r=0,n=this.curves.length;r1&&!i[i.length-1].equals(i[0])&&i.push(i[0]),i},createPointsGeometry:function(t){var e=this.getPoints(t);return this.createGeometry(e)},createSpacedPointsGeometry:function(t){var e=this.getSpacedPoints(t);return this.createGeometry(e)},createGeometry:function(t){for(var e=new zt,i=0,r=t.length;ie;)i-=e;ie.length-2?e.length-1:r+1],c=e[r>e.length-3?e.length-1:r+2],u=ef.interpolate;return new h(u(o.x,a.x,s.x,c.x,n),u(o.y,a.y,s.y,c.y,n))},fi.prototype=Object.create(ci.prototype),fi.prototype.constructor=fi,fi.prototype.getPoint=function(t){var e=tf.b3;return new h(e(t,this.v0.x,this.v1.x,this.v2.x,this.v3.x),e(t,this.v0.y,this.v1.y,this.v2.y,this.v3.y))},fi.prototype.getTangent=function(t){var e=ef.tangentCubicBezier;return new h(e(t,this.v0.x,this.v1.x,this.v2.x,this.v3.x),e(t,this.v0.y,this.v1.y,this.v2.y,this.v3.y)).normalize()},pi.prototype=Object.create(ci.prototype),pi.prototype.constructor=pi,pi.prototype.getPoint=function(t){var e=tf.b2;return new h(e(t,this.v0.x,this.v1.x,this.v2.x),e(t,this.v0.y,this.v1.y,this.v2.y))},pi.prototype.getTangent=function(t){var e=ef.tangentQuadraticBezier;return new h(e(t,this.v0.x,this.v1.x,this.v2.x),e(t,this.v0.y,this.v1.y,this.v2.y)).normalize()};var rf=Object.assign(Object.create(li.prototype),{fromPoints:function(t){var e=this;this.moveTo(t[0].x,t[0].y);for(var i=1,r=t.length;i0){var u=c.getPoint(0);u.equals(this.currentPoint)||this.lineTo(u.x,u.y)}this.curves.push(c);var l=c.getPoint(1);this.currentPoint.copy(l)}});mi.prototype=Object.create(zt.prototype),mi.prototype.constructor=mi,mi.NoTaper=function(t){return 1},mi.SinusoidalTaper=function(t){return Math.sin(Math.PI*t)},mi.FrenetFrames=function(t,e,i){function r(){f[0]=new g,m[0]=new g,o=Number.MAX_VALUE,a=Math.abs(d[0].x),s=Math.abs(d[0].y),c=Math.abs(d[0].z),a<=o&&(o=a,h.set(1,0,0)),s<=o&&(o=s,h.set(0,1,0)),c<=o&&h.set(0,0,1),v.crossVectors(d[0],h).normalize(),f[0].crossVectors(d[0],v),m[0].crossVectors(d[0],f[0])}var n,o,a,s,c,u,l,h=new g,d=[],f=[],m=[],v=new g,y=new p,b=e+1;for(this.tangents=d,this.normals=f,this.binormals=m,u=0;uNumber.EPSILON&&(v.normalize(),n=Math.acos(Fl.clamp(d[u-1].dot(d[u]),-1,1)),f[u].applyMatrix4(y.makeRotationAxis(v,n))),m[u].crossVectors(d[u],f[u]);if(i)for(n=Math.acos(Fl.clamp(f[0].dot(f[b-1]),-1,1)),n/=b-1,d[0].dot(v.crossVectors(f[0],f[b-1]))>0&&(n=-n),u=1;uNumber.EPSILON){var f=Math.sqrt(l),p=Math.sqrt(c*c+u*u),m=e.x-s/f,g=e.y+a/f,v=i.x-u/p,y=i.y+c/p,b=((v-m)*u-(y-g)*c)/(a*u-s*c);r=m+a*b-t.x,n=g+s*b-t.y;var x=r*r+n*n;if(x<=2)return new h(r,n);o=Math.sqrt(x/2)}else{var _=!1;a>Number.EPSILON?c>Number.EPSILON&&(_=!0):a<-Number.EPSILON?c<-Number.EPSILON&&(_=!0):Math.sign(s)===Math.sign(u)&&(_=!0),_?(r=-s,n=a,o=Math.sqrt(l)):(r=a,n=s,o=Math.sqrt(l/2))}return new h(r/o,n/o)}function n(){if(_){var t=0,e=G*t;for(X=0;X=0;){i=X,r=X-1,r<0&&(r=t.length-1);var n=0,o=S+2*x;for(n=0;n=0;B--){for(U=B/x,j=y*Math.cos(U*Math.PI/2),z=b*Math.sin(U*Math.PI/2),X=0,q=F.length;XNumber.EPSILON){if(u<0&&(a=e[o],c=-c,s=e[n],u=-u),t.ys.y)continue;if(t.y===a.y){if(t.x===a.x)return!0}else{var l=u*(t.x-a.x)-c*(t.y-a.y);if(0===l)return!0;if(l<0)continue;r=!r}}else{if(t.y!==a.y)continue;if(s.x<=t.x&&t.x<=a.x||a.x<=t.x&&t.x<=s.x)return!0}}return r}var n=tf.isClockWise,o=this.subPaths;if(0===o.length)return[];if(e===!0)return i(o);var a,s,c,u=[];if(1===o.length)return s=o[0],c=new yi,c.curves=s.curves,u.push(c),u;var l=!n(o[0].getPoints());l=t?!l:l;var h,d=[],f=[],p=[],m=0;f[m]=void 0,p[m]=[];for(var g=0,v=o.length;g1){for(var y=!1,b=[],x=0,_=f.length;x<_;x++)d[x]=[];for(var x=0,_=f.length;x<_;x++)for(var w=p[x],S=0;S0&&(y||(p=d))}for(var C,g=0,T=f.length;g0){this.source.connect(this.filters[0]);for(var e=1,i=this.filters.length;e0){this.source.disconnect(this.filters[0]);for(var e=1,i=this.filters.length;e=.5)for(var o=0;o!==n;++o)t[e+o]=t[i+o]},_slerp:function(t,e,i,r,n){m.slerpFlat(t,e,t,e,t,i,r)},_lerp:function(t,e,i,r,n){for(var o=1-r,a=0;a!==n;++a){var s=e+a;t[s]=t[s]*o+t[i+a]*r}}},Li.prototype={constructor:Li,getValue:function(t,e){this.bind(),this.getValue(t,e)},setValue:function(t,e){this.bind(),this.setValue(t,e)},bind:function(){var t=this.node,e=this.parsedPath,i=e.objectName,r=e.propertyName,n=e.propertyIndex;if(t||(t=Li.findNode(this.rootNode,e.nodeName)||this.rootNode,this.node=t),this.getValue=this._getValue_unavailable,this.setValue=this._setValue_unavailable,!t)return void console.error(\" trying to update node for track: \"+this.path+\" but it wasn't found.\");if(i){var o=e.objectIndex;switch(i){case\"materials\":if(!t.material)return void console.error(\" can not bind to material as node does not have a material\",this);if(!t.material.materials)return void console.error(\" can not bind to material.materials as node.material does not have a materials array\",this);t=t.material.materials;break;case\"bones\":if(!t.skeleton)return void console.error(\" can not bind to bones as node does not have a skeleton\",this);t=t.skeleton.bones;for(var a=0;a0)for(var c=this._interpolants,u=this._propertyBindings,l=0,h=c.length;l!==h;++l)c[l].evaluate(a),u[l].accumulate(r,s)},_updateWeight:function(t){var e=0;if(this.enabled){e=this.weight;var i=this._weightInterpolant;if(null!==i){var r=i.evaluate(t)[0];e*=r,t>i.parameterPositions[1]&&(this.stopFading(),0===r&&(this.enabled=!1))}}return this._effectiveWeight=e,e},_updateTimeScale:function(t){var e=0;if(!this.paused){e=this.timeScale;var i=this._timeScaleInterpolant;\nif(null!==i){var r=i.evaluate(t)[0];e*=r,t>i.parameterPositions[1]&&(this.stopWarping(),0===e?this.paused=!0:this.timeScale=e)}}return this._effectiveTimeScale=e,e},_updateTime:function(t){var e=this.time+t;if(0===t)return e;var i=this._clip.duration,r=this.loop,n=this._loopCount;if(r===gl){n===-1&&(this.loopCount=0,this._setEndings(!0,!0,!1));t:{if(e>=i)e=i;else{if(!(e<0))break t;e=0}this.clampWhenFinished?this.paused=!0:this.enabled=!1,this._mixer.dispatchEvent({type:\"finished\",action:this,direction:t<0?-1:1})}}else{var o=r===yl;if(n===-1&&(t>=0?(n=0,this._setEndings(!0,0===this.repetitions,o)):this._setEndings(0===this.repetitions,!0,o)),e>=i||e<0){var a=Math.floor(e/i);e-=i*a,n+=Math.abs(a);var s=this.repetitions-n;if(s<0)this.clampWhenFinished?this.paused=!0:this.enabled=!1,e=t>0?i:0,this._mixer.dispatchEvent({type:\"finished\",action:this,direction:t>0?1:-1});else{if(0===s){var c=t<0;this._setEndings(c,!c,o)}else this._setEndings(!1,!1,o);this._loopCount=n,this._mixer.dispatchEvent({type:\"loop\",action:this,loopDelta:a})}}if(o&&1===(1&n))return this.time=e,i-e}return this.time=e,e},_setEndings:function(t,e,i){var r=this._interpolantSettings;i?(r.endingStart=Sl,r.endingEnd=Sl):(t?r.endingStart=this.zeroSlopeAtStart?Sl:wl:r.endingStart=Al,e?r.endingEnd=this.zeroSlopeAtEnd?Sl:wl:r.endingEnd=Al)},_scheduleFading:function(t,e,i){var r=this._mixer,n=r.time,o=this._weightInterpolant;null===o&&(o=r._lendControlInterpolant(),this._weightInterpolant=o);var a=o.parameterPositions,s=o.sampleValues;return a[0]=n,s[0]=e,a[1]=n+t,s[1]=i,this}},Object.assign(Oi.prototype,l.prototype,{clipAction:function(t,e){var i=e||this._root,r=i.uuid,n=\"string\"==typeof t?ii.findByName(i,t):t,o=null!==n?n.uuid:t,a=this._actionsByClip[o],s=null;if(void 0!==a){var c=a.actionByRoot[r];if(void 0!==c)return c;s=a.knownActions[0],null===n&&(n=s._clip)}if(null===n)return null;var u=new Ri(this,n,e);return this._bindAction(u,s),this._addInactiveAction(u,o,r),u},existingAction:function(t,e){var i=e||this._root,r=i.uuid,n=\"string\"==typeof t?ii.findByName(i,t):t,o=n?n.uuid:t,a=this._actionsByClip[o];return void 0!==a?a.actionByRoot[r]||null:null},stopAllAction:function(){var t=this._actions,e=this._nActiveActions,i=this._bindings,r=this._nActiveBindings;this._nActiveActions=0,this._nActiveBindings=0;for(var n=0;n!==e;++n)t[n].reset();for(var n=0;n!==r;++n)i[n].useCount=0;return this},update:function(t){t*=this.timeScale;for(var e=this._actions,i=this._nActiveActions,r=this.time+=t,n=Math.sign(t),o=this._accuIndex^=1,a=0;a!==i;++a){var s=e[a];s.enabled&&s._update(r,t,n,o)}for(var c=this._bindings,u=this._nActiveBindings,a=0;a!==u;++a)c[a].apply(o);return this},getRoot:function(){return this._root},uncacheClip:function(t){var e=this,i=this._actions,r=t.uuid,n=this._actionsByClip,o=n[r];if(void 0!==o){for(var a=o.knownActions,s=0,c=a.length;s!==c;++s){var u=a[s];e._deactivateAction(u);var l=u._cacheIndex,h=i[i.length-1];u._cacheIndex=null,u._byClipCacheIndex=null,h._cacheIndex=l,i[l]=h,i.pop(),e._removeInactiveBindingsForAction(u)}delete n[r]}},uncacheRoot:function(t){var e=this,i=t.uuid,r=this._actionsByClip;for(var n in r){var o=r[n].actionByRoot,a=o[i];void 0!==a&&(e._deactivateAction(a),e._removeInactiveAction(a))}var s=this._bindingsByRootAndName,c=s[i];if(void 0!==c)for(var u in c){var l=c[u];l.restoreOriginalState(),e._removeInactiveBinding(l)}},uncacheAction:function(t,e){var i=this.existingAction(t,e);null!==i&&(this._deactivateAction(i),this._removeInactiveAction(i))}}),Object.assign(Oi.prototype,{_bindAction:function(t,e){var i=this,r=t._localRoot||this._root,n=t._clip.tracks,o=n.length,a=t._propertyBindings,s=t._interpolants,c=r.uuid,u=this._bindingsByRootAndName,l=u[c];void 0===l&&(l={},u[c]=l);for(var h=0;h!==o;++h){var d=n[h],f=d.name,p=l[f];if(void 0!==p)a[h]=p;else{if(p=a[h],void 0!==p){null===p._cacheIndex&&(++p.referenceCount,i._addInactiveBinding(p,c,f));continue}var m=e&&e._propertyBindings[h].binding.parsedPath;p=new Ii(Li.create(r,f,m),d.ValueTypeName,d.getValueSize()),++p.referenceCount,i._addInactiveBinding(p,c,f),a[h]=p}s[h].resultBuffer=p.buffer}},_activateAction:function(t){var e=this;if(!this._isActiveAction(t)){if(null===t._cacheIndex){var i=(t._localRoot||this._root).uuid,r=t._clip.uuid,n=this._actionsByClip[r];this._bindAction(t,n&&n.knownActions[0]),this._addInactiveAction(t,r,i)}for(var o=t._propertyBindings,a=0,s=o.length;a!==s;++a){var c=o[a];0===c.useCount++&&(e._lendBinding(c),c.saveOriginalState())}this._lendAction(t)}},_deactivateAction:function(t){var e=this;if(this._isActiveAction(t)){for(var i=t._propertyBindings,r=0,n=i.length;r!==n;++r){var o=i[r];0===--o.useCount&&(o.restoreOriginalState(),e._takeBackBinding(o))}this._takeBackAction(t)}},_initMemoryManager:function(){this._actions=[],this._nActiveActions=0,this._actionsByClip={},this._bindings=[],this._nActiveBindings=0,this._bindingsByRootAndName={},this._controlInterpolants=[],this._nActiveControlInterpolants=0;var t=this;this.stats={actions:{get total(){return t._actions.length},get inUse(){return t._nActiveActions}},bindings:{get total(){return t._bindings.length},get inUse(){return t._nActiveBindings}},controlInterpolants:{get total(){return t._controlInterpolants.length},get inUse(){return t._nActiveControlInterpolants}}}},_isActiveAction:function(t){var e=t._cacheIndex;return null!==e&&e0?0:(Math.floor(Math.abs(a)/u.length)+1)*u.length:0===s&&a===c-1&&(a=c-2,s=1);var l,h,d,f;if(this.closed||a>0?l=u[(a-1)%c]:(e.subVectors(u[0],u[1]).add(u[0]),l=e),h=u[a%c],d=u[(a+1)%c],this.closed||a+2e.length-2?e.length-1:r+1],c=e[r>e.length-3?e.length-1:r+2],u=ef.interpolate;return new g(u(o.x,a.x,s.x,c.x,n),u(o.y,a.y,s.y,c.y,n),u(o.z,a.z,s.z,c.z,n))}),ci.create(function(t,e,i,r){this.v0=t,this.v1=e,this.v2=i,this.v3=r},function(t){var e=tf.b3;return new g(e(t,this.v0.x,this.v1.x,this.v2.x,this.v3.x),e(t,this.v0.y,this.v1.y,this.v2.y,this.v3.y),e(t,this.v0.z,this.v1.z,this.v2.z,this.v3.z))}),ci.create(function(t,e,i){this.v0=t,this.v1=e,this.v2=i},function(t){var e=tf.b2;return new g(e(t,this.v0.x,this.v1.x,this.v2.x),e(t,this.v0.y,this.v1.y,this.v2.y),e(t,this.v0.z,this.v1.z,this.v2.z))}),ci.create(function(t,e){this.v1=t,this.v2=e},function(t){if(1===t)return this.v2.clone();var e=new g;return e.subVectors(this.v2,this.v1),e.multiplyScalar(t),e.add(this.v1),e}),function(t){this.name=t,this._dict={}}),cf={names:{}};sf.prototype.add=function(t,e){this._dict[lr(t)]=e},sf.prototype.get=function(t){return this._dict[lr(t)]},cf.names.get=function(){return Object.keys(this._dict)},Object.defineProperties(sf.prototype,cf);var uf=function(){this.activeWorkerCount=0,this._funcDict={},this._depsDict={},this._blobDict={}};uf.prototype.add=function(t,e,i){this._funcDict[t]=e,this._depsDict[t]=i},uf.prototype.get=function(t){return this._blobDict[t]||(this._blobDict[t]=pr(this._funcDict[t],this._depsDict[t])),this._blobDict[t]};var lf,hf,df,ff,pf,mf,gf,vf,yf,bf,xf,_f,wf,Sf,Af,Mf,Pf,Cf,Tf,Ef,If,Lf,Rf,Of,Df,Nf,kf,Ff,Bf,zf,Uf,jf,$f,Vf,Gf,Hf,Wf,Xf,qf,Yf,Zf,Kf,Qf,Jf,tp,ep,ip,rp,np,op,ap,sp,cp,up,lp,hp,dp,fp,pp,mp,gp,vp,yp,bp,xp,_p,wp,Sp,Ap,Mp,Pp,Cp,Tp,Ep,Ip,Lp,Rp,Op,Dp=\"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\".split(\"\"),Np=new Array(36),kp=[].slice;Ep=function(){var t,e,i,r,n;for(t={},n=\"Boolean Number String Function Array Date RegExp Undefined Null\".split(\" \"),r=0,e=n.length;ri&&(t=i),t},Ip=function(t){return t.length>=3?[].slice.call(t):t[0]},Ef=function(t){var e;for(e in t)e<3?(t[e]<0&&(t[e]=0),t[e]>255&&(t[e]=255)):3===e&&(t[e]<0&&(t[e]=0),t[e]>1&&(t[e]=1));return t},ff=Math.PI,Ap=Math.round,Rf=Math.cos,Ff=Math.floor,up=Math.pow,ep=Math.log,Pp=Math.sin,Cp=Math.sqrt,wf=Math.atan2,np=Math.max,_f=Math.abs,gf=2*ff,pf=ff/3,hf=ff/180,mf=180/ff,Tf=function(){return arguments[0]instanceof lf?arguments[0]:function(t,e,i){i.prototype=t.prototype;var r=new i,n=t.apply(r,e);return Object(n)===n?n:r}(lf,arguments,function(){})},xf=[],Tf.version=\"1.1.1\",bf={},vf=[],yf=!1,lf=function(){function t(){var t,e,i,r,n,o,a,s,c,u=arguments;for(o=this,e=[],s=0,r=arguments.length;s3?e[3]:1]},Op=function(t){return Ap(255*(t<=.00304?12.92*t:1.055*up(t,1/2.4)-.055))},Zf=function(t){return t>df.t1?t*t*t:df.t2*(t-df.t0)},df={Kn:18,Xn:.95047,Yn:1,Zn:1.08883,t0:.137931034,t1:.206896552,t2:.12841855,t3:.008856452},gp=function(){var t,e,i,r,n,o,a,s;return r=Ip(arguments),i=r[0],e=r[1],t=r[2],n=_p(i,e,t),o=n[0],a=n[1],s=n[2],[116*a-16,500*(o-a),200*(a-s)]},wp=function(t){return(t/=255)<=.04045?t/12.92:up((t+.055)/1.055,2.4)},Rp=function(t){return t>df.t3?up(t,1/3):t/df.t2+df.t0},_p=function(){var t,e,i,r,n,o,a;return r=Ip(arguments),i=r[0],e=r[1],t=r[2],i=wp(i),e=wp(e),t=wp(t),n=Rp((.4124564*i+.3575761*e+.1804375*t)/df.Xn),o=Rp((.2126729*i+.7151522*e+.072175*t)/df.Yn),a=Rp((.0193339*i+.119192*e+.9503041*t)/df.Zn),[n,o,a]},Tf.lab=function(){return function(t,e,i){i.prototype=t.prototype;var r=new i,n=t.apply(r,e);return Object(n)===n?n:r}(lf,kp.call(arguments).concat([\"lab\"]),function(){})},bf.lab=Yf,lf.prototype.lab=function(){return gp(this._rgb)},Sf=function(t){var e,i,r,n,o,a,s,c,u,l,h;return t=function(){var e,i,r;for(r=[],i=0,e=t.length;i=0&&e[3]<=1?\"rgb\":void 0}}),Bf=function(t){var e,i,r,n,o,a;if(t.match(/^#?([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/))return 4!==t.length&&7!==t.length||(t=t.substr(1)),3===t.length&&(t=t.split(\"\"),t=t[0]+t[0]+t[1]+t[1]+t[2]+t[2]),a=parseInt(t,16),n=a>>16,r=a>>8&255,i=255&a,[n,r,i,1];if(t.match(/^#?([A-Fa-f0-9]{8})$/))return 9===t.length&&(t=t.substr(1)),a=parseInt(t,16),n=a>>24&255,r=a>>16&255,i=a>>8&255,e=Ap((255&a)/255*100)/100,[n,r,i,e];if(null!=bf.css&&(o=bf.css(t)))return o;throw\"unknown color: \"+t},dp=function(t,e){var i,r,n,o,a,s,c;return null==e&&(e=\"rgb\"),a=t[0],n=t[1],r=t[2],i=t[3],c=a<<16|n<<8|r,s=\"000000\"+c.toString(16),s=s.substr(s.length-6),o=\"0\"+Ap(255*i).toString(16),o=o.substr(o.length-2),\"#\"+function(){switch(e.toLowerCase()){case\"rgba\":return s+o;case\"argb\":return o+s;default:return s}}()},bf.hex=function(t){return Bf(t)},Tf.hex=function(){return function(t,e,i){i.prototype=t.prototype;var r=new i,n=t.apply(r,e);return Object(n)===n?n:r}(lf,kp.call(arguments).concat([\"hex\"]),function(){})},lf.prototype.hex=function(t){return null==t&&(t=\"rgb\"),dp(this._rgb,t)},vf.push({p:10,test:function(t){if(1===arguments.length&&\"string\"===Ep(t))return\"hex\"}}),jf=function(){var t,e,i,r,n,o,a,s,c,u,l,h,d,f;if(t=Ip(arguments),n=t[0],l=t[1],a=t[2],0===l)c=r=e=255*a;else{for(f=[0,0,0],i=[0,0,0],d=a<.5?a*(1+l):a+l-a*l,h=2*a-d,n/=360,f[0]=n+1/3,f[1]=n,f[2]=n-1/3,o=s=0;s<=2;o=++s)f[o]<0&&(f[o]+=1),f[o]>1&&(f[o]-=1),6*f[o]<1?i[o]=h+6*(d-h)*f[o]:2*f[o]<1?i[o]=d:3*f[o]<2?i[o]=h+(d-h)*(2/3-f[o])*6:i[o]=h;u=[Ap(255*i[0]),Ap(255*i[1]),Ap(255*i[2])],c=u[0],r=u[1],e=u[2]}return t.length>3?[c,r,e,t[3]]:[c,r,e]},pp=function(t,e,i){var r,n,o,a,s;return void 0!==t&&t.length>=3&&(a=t,t=a[0],e=a[1],i=a[2]),t/=255,e/=255,i/=255,o=Math.min(t,e,i),np=Math.max(t,e,i),n=(np+o)/2,np===o?(s=0,r=Number.NaN):s=n<.5?(np-o)/(np+o):(np-o)/(2-np-o),t===np?r=(e-i)/(np-o):e===np?r=2+(i-t)/(np-o):i===np&&(r=4+(t-e)/(np-o)),r*=60,r<0&&(r+=360),[r,s,n]},Tf.hsl=function(){return function(t,e,i){i.prototype=t.prototype;var r=new i,n=t.apply(r,e);return Object(n)===n?n:r}(lf,kp.call(arguments).concat([\"hsl\"]),function(){})},bf.hsl=jf,lf.prototype.hsl=function(){return pp(this._rgb)},$f=function(){var t,e,i,r,n,o,a,s,c,u,l,h,d,f,p,m,g,v;if(t=Ip(arguments),n=t[0],m=t[1],v=t[2],v*=255,0===m)c=r=e=v;else switch(360===n&&(n=0),n>360&&(n-=360),n<0&&(n+=360),n/=60,o=Ff(n),i=n-o,a=v*(1-m),s=v*(1-m*i),g=v*(1-m*(1-i)),o){case 0:u=[v,g,a],c=u[0],r=u[1],e=u[2];break;case 1:l=[s,v,a],c=l[0],r=l[1],e=l[2];break;case 2:h=[a,v,g],c=h[0],r=h[1],e=h[2];break;case 3:d=[a,s,v],c=d[0],r=d[1],e=d[2];break;case 4:f=[g,a,v],c=f[0],r=f[1],e=f[2];break;case 5:p=[v,a,s],c=p[0],r=p[1],e=p[2]}return c=Ap(c),r=Ap(r),e=Ap(e),[c,r,e,t.length>3?t[3]:1]},mp=function(){var t,e,i,r,n,o,a,s,c;return a=Ip(arguments),o=a[0],i=a[1],t=a[2],n=Math.min(o,i,t),np=Math.max(o,i,t),e=np-n,c=np/255,0===np?(r=Number.NaN,s=0):(s=e/np,o===np&&(r=(i-t)/e),i===np&&(r=2+(t-o)/e),t===np&&(r=4+(o-i)/e),r*=60,r<0&&(r+=360)),[r,s,c]},Tf.hsv=function(){return function(t,e,i){i.prototype=t.prototype;var r=new i,n=t.apply(r,e);return Object(n)===n?n:r}(lf,kp.call(arguments).concat([\"hsv\"]),function(){})},bf.hsv=$f,lf.prototype.hsv=function(){return mp(this._rgb)},sp=function(t){var e,i,r;return\"number\"===Ep(t)&&t>=0&&t<=16777215?(r=t>>16,i=t>>8&255,e=255&t,[r,i,e,1]):(console.warn(\"unknown num color: \"+t),[0,0,0,1])},bp=function(){var t,e,i,r;return r=Ip(arguments),i=r[0],e=r[1],t=r[2],(i<<16)+(e<<8)+t},Tf.num=function(t){return new lf(t,\"num\")},lf.prototype.num=function(t){return null==t&&(t=\"rgb\"),bp(this._rgb,t)},bf.num=sp,vf.push({p:10,test:function(t){if(1===arguments.length&&\"number\"===Ep(t)&&t>=0&&t<=16777215)return\"num\"}}),Of=function(t){var e,i,r,n,o,a,s,c;if(t=t.toLowerCase(),null!=Tf.colors&&Tf.colors[t])return Bf(Tf.colors[t]);if(o=t.match(/rgb\\(\\s*(\\-?\\d+),\\s*(\\-?\\d+)\\s*,\\s*(\\-?\\d+)\\s*\\)/)){for(s=o.slice(1,4),n=a=0;a<=2;n=++a)s[n]=+s[n];s[3]=1}else if(o=t.match(/rgba\\(\\s*(\\-?\\d+),\\s*(\\-?\\d+)\\s*,\\s*(\\-?\\d+)\\s*,\\s*([01]|[01]?\\.\\d+)\\)/))for(s=o.slice(1,5),n=c=0;c<=3;n=++c)s[n]=+s[n];else if(o=t.match(/rgb\\(\\s*(\\-?\\d+(?:\\.\\d+)?)%,\\s*(\\-?\\d+(?:\\.\\d+)?)%\\s*,\\s*(\\-?\\d+(?:\\.\\d+)?)%\\s*\\)/)){for(s=o.slice(1,4),n=e=0;e<=2;n=++e)s[n]=Ap(2.55*s[n]);s[3]=1}else if(o=t.match(/rgba\\(\\s*(\\-?\\d+(?:\\.\\d+)?)%,\\s*(\\-?\\d+(?:\\.\\d+)?)%\\s*,\\s*(\\-?\\d+(?:\\.\\d+)?)%\\s*,\\s*([01]|[01]?\\.\\d+)\\)/)){for(s=o.slice(1,5),n=i=0;i<=2;n=++i)s[n]=Ap(2.55*s[n]);s[3]=+s[3]}else(o=t.match(/hsl\\(\\s*(\\-?\\d+(?:\\.\\d+)?),\\s*(\\-?\\d+(?:\\.\\d+)?)%\\s*,\\s*(\\-?\\d+(?:\\.\\d+)?)%\\s*\\)/))?(r=o.slice(1,4),r[1]*=.01,r[2]*=.01,s=jf(r),s[3]=1):(o=t.match(/hsla\\(\\s*(\\-?\\d+(?:\\.\\d+)?),\\s*(\\-?\\d+(?:\\.\\d+)?)%\\s*,\\s*(\\-?\\d+(?:\\.\\d+)?)%\\s*,\\s*([01]|[01]?\\.\\d+)\\)/))&&(r=o.slice(1,4),r[1]*=.01,r[2]*=.01,s=jf(r),s[3]=+o[4]);return s},hp=function(t){var e;return e=t[3]<1?\"rgba\":\"rgb\",\"rgb\"===e?e+\"(\"+t.slice(0,3).map(Ap).join(\",\")+\")\":\"rgba\"===e?e+\"(\"+t.slice(0,3).map(Ap).join(\",\")+\",\"+t[3]+\")\":void 0},Sp=function(t){return Ap(100*t)/100},Uf=function(t,e){var i;return i=e<1?\"hsla\":\"hsl\",t[0]=Sp(t[0]||0),t[1]=Sp(100*t[1])+\"%\",t[2]=Sp(100*t[2])+\"%\",\"hsla\"===i&&(t[3]=e),i+\"(\"+t.join(\",\")+\")\"},bf.css=function(t){return Of(t)},Tf.css=function(){return function(t,e,i){i.prototype=t.prototype;var r=new i,n=t.apply(r,e);return Object(n)===n?n:r}(lf,kp.call(arguments).concat([\"css\"]),function(){})},lf.prototype.css=function(t){return null==t&&(t=\"rgb\"),\"rgb\"===t.slice(0,3)?hp(this._rgb):\"hsl\"===t.slice(0,3)?Uf(this.hsl(),this.alpha()):void 0},bf.named=function(t){return Bf(Lp[t])},vf.push({p:20,test:function(t){if(1===arguments.length&&null!=Lp[t])return\"named\"}}),lf.prototype.name=function(t){var e,i;arguments.length&&(Lp[t]&&(this._rgb=Bf(Lp[t])),\nthis._rgb[3]=1),e=this.hex();for(i in Lp)if(e===Lp[i])return i;return e},Kf=function(){var t,e,i,r;return r=Ip(arguments),i=r[0],t=r[1],e=r[2],e*=hf,[i,Rf(e)*t,Pp(e)*t]},Qf=function(){var t,e,i,r,n,o,a,s,c,u,l;return i=Ip(arguments),s=i[0],n=i[1],a=i[2],u=Kf(s,n,a),t=u[0],e=u[1],r=u[2],l=Yf(t,e,r),c=l[0],o=l[1],r=l[2],[tp(c,0,255),tp(o,0,255),tp(r,0,255),i.length>3?i[3]:1]},qf=function(){var t,e,i,r,n,o;return o=Ip(arguments),n=o[0],t=o[1],e=o[2],i=Cp(t*t+e*e),r=(wf(e,t)*mf+360)%360,0===Ap(1e4*i)&&(r=Number.NaN),[n,i,r]},vp=function(){var t,e,i,r,n,o,a;return o=Ip(arguments),n=o[0],i=o[1],e=o[2],a=gp(n,i,e),r=a[0],t=a[1],e=a[2],qf(r,t,e)},Tf.lch=function(){var t;return t=Ip(arguments),new lf(t,\"lch\")},Tf.hcl=function(){var t;return t=Ip(arguments),new lf(t,\"hcl\")},bf.lch=Qf,bf.hcl=function(){var t,e,i,r;return r=Ip(arguments),e=r[0],t=r[1],i=r[2],Qf([i,t,e])},lf.prototype.lch=function(){return vp(this._rgb)},lf.prototype.hcl=function(){return vp(this._rgb).reverse()},lp=function(t){var e,i,r,n,o,a,s,c,u;return null==t&&(t=\"rgb\"),c=Ip(arguments),s=c[0],n=c[1],e=c[2],s/=255,n/=255,e/=255,o=1-Math.max(s,Math.max(n,e)),r=o<1?1/(1-o):0,i=(1-s-o)*r,a=(1-n-o)*r,u=(1-e-o)*r,[i,a,u,o]},If=function(){var t,e,i,r,n,o,a,s,c;return e=Ip(arguments),r=e[0],a=e[1],c=e[2],o=e[3],t=e.length>4?e[4]:1,1===o?[0,0,0,t]:(s=r>=1?0:Ap(255*(1-r)*(1-o)),n=a>=1?0:Ap(255*(1-a)*(1-o)),i=c>=1?0:Ap(255*(1-c)*(1-o)),[s,n,i,t])},bf.cmyk=function(){return If(Ip(arguments))},Tf.cmyk=function(){return function(t,e,i){i.prototype=t.prototype;var r=new i,n=t.apply(r,e);return Object(n)===n?n:r}(lf,kp.call(arguments).concat([\"cmyk\"]),function(){})},lf.prototype.cmyk=function(){return lp(this._rgb)},bf.gl=function(){var t,e,i,r,n;for(r=function(){var t,i;t=Ip(arguments),i=[];for(e in t)n=t[e],i.push(n);return i}.apply(this,arguments),t=i=0;i<=2;t=++i)r[t]*=255;return r},Tf.gl=function(){return function(t,e,i){i.prototype=t.prototype;var r=new i,n=t.apply(r,e);return Object(n)===n?n:r}(lf,kp.call(arguments).concat([\"gl\"]),function(){})},lf.prototype.gl=function(){var t;return t=this._rgb,[t[0]/255,t[1]/255,t[2]/255,t[3]]},yp=function(t,e,i){var r;return r=Ip(arguments),t=r[0],e=r[1],i=r[2],t=ip(t),e=ip(e),i=ip(i),.2126*t+.7152*e+.0722*i},ip=function(t){return t/=255,t<=.03928?t/12.92:up((t+.055)/1.055,2.4)},xf=[],Vf=function(t,e,i,r){var n,o,a,s;for(null==i&&(i=.5),null==r&&(r=\"rgb\"),\"object\"!==Ep(t)&&(t=Tf(t)),\"object\"!==Ep(e)&&(e=Tf(e)),a=0,o=xf.length;at?o(i,c):o(c,a)},i=yp(this._rgb),this._rgb=(i>t?o(Tf(\"black\"),this):o(this,Tf(\"white\"))).rgba()),this):yp(this._rgb)},Tp=function(t){var e,i,r,n;return n=t/100,n<66?(r=255,i=-155.25485562709179-.44596950469579133*(i=n-2)+104.49216199393888*ep(i),e=n<20?0:-254.76935184120902+.8274096064007395*(e=n-10)+115.67994401066147*ep(e)):(r=351.97690566805693+.114206453784165*(r=n-55)-40.25366309332127*ep(r),i=325.4494125711974+.07943456536662342*(i=n-50)-28.0852963507957*ep(i),e=255),Ef([r,i,e])},xp=function(){var t,e,i,r,n,o,a,s,c;for(a=Ip(arguments),o=a[0],i=a[1],t=a[2],n=1e3,r=4e4,e=.4;r-n>e;)c=.5*(r+n),s=Tp(c),s[2]/s[0]>=t/o?r=c:n=c;return Ap(c)},Tf.temperature=Tf.kelvin=function(){return function(t,e,i){i.prototype=t.prototype;var r=new i,n=t.apply(r,e);return Object(n)===n?n:r}(lf,kp.call(arguments).concat([\"temperature\"]),function(){})},bf.temperature=bf.kelvin=bf.K=Tp,lf.prototype.temperature=function(){return xp(this._rgb)},lf.prototype.kelvin=lf.prototype.temperature,Tf.contrast=function(t,e){var i,r,n,o;return\"string\"!==(n=Ep(t))&&\"number\"!==n||(t=new lf(t)),\"string\"!==(o=Ep(e))&&\"number\"!==o||(e=new lf(e)),i=t.luminance(),r=e.luminance(),i>r?(i+.05)/(r+.05):(r+.05)/(i+.05)},lf.prototype.get=function(t){var e,i,r,n,o,a;return r=this,o=t.split(\".\"),n=o[0],e=o[1],a=r[n](),e?(i=n.indexOf(e),i>-1?a[i]:console.warn(\"unknown channel \"+e+\" in mode \"+n)):a},lf.prototype.set=function(t,e){var i,r,n,o,a,s;if(n=this,a=t.split(\".\"),o=a[0],i=a[1],i)if(s=n[o](),r=o.indexOf(i),r>-1)if(\"string\"===Ep(e))switch(e.charAt(0)){case\"+\":s[r]+=+e;break;case\"-\":s[r]+=+e;break;case\"*\":s[r]*=+e.substr(1);break;case\"/\":s[r]/=+e.substr(1);break;default:s[r]=+e}else s[r]=e;else console.warn(\"unknown channel \"+i+\" in mode \"+o);else s=e;return n._rgb=Tf(s,o).alpha(n.alpha())._rgb,n},lf.prototype.darken=function(t){var e,i;return null==t&&(t=1),i=this,e=i.lab(),e[0]-=df.Kn*t,Tf.lab(e).alpha(i.alpha())},lf.prototype.brighten=function(t){return null==t&&(t=1),this.darken(-t)},lf.prototype.darker=lf.prototype.darken,lf.prototype.brighter=lf.prototype.brighten,lf.prototype.saturate=function(t){var e,i;return null==t&&(t=1),i=this,e=i.lch(),e[1]+=t*df.Kn,e[1]<0&&(e[1]=0),Tf.lch(e).alpha(i.alpha())},lf.prototype.desaturate=function(t){return null==t&&(t=1),this.saturate(-t)},lf.prototype.premultiply=function(){var t,e;return e=this.rgb(),t=this.alpha(),Tf(e[0]*t,e[1]*t,e[2]*t,t)},Af=function(t,e,i){if(!Af[i])throw\"unknown blend mode \"+i;return Af[i](t,e)},Mf=function(t){return function(e,i){var r,n;return r=Tf(i).rgb(),n=Tf(e).rgb(),Tf(t(r,n),\"rgb\")}},kf=function(t){return function(e,i){var r,n,o;for(o=[],r=n=0;n<=3;r=++n)o[r]=t(e[r],i[r]);return o}},ap=function(t,e){return t},op=function(t,e){return t*e/255},Df=function(t,e){return t>e?e:t},Jf=function(t,e){return t>e?t:e},Mp=function(t,e){return 255*(1-(1-t/255)*(1-e/255))},cp=function(t,e){return e<128?2*t*e/255:255*(1-2*(1-t/255)*(1-e/255))},Cf=function(t,e){return 255*(1-(1-e/255)/(t/255))},Nf=function(t,e){return 255===t?255:(t=255*(e/255)/(1-t/255),t>255?255:t)},Af.normal=Mf(kf(ap)),Af.multiply=Mf(kf(op)),Af.screen=Mf(kf(Mp)),Af.overlay=Mf(kf(cp)),Af.darken=Mf(kf(Df)),Af.lighten=Mf(kf(Jf)),Af.dodge=Mf(kf(Nf)),Af.burn=Mf(kf(Cf)),Tf.blend=Af,Tf.analyze=function(t){var e,i,r,n;for(r={min:Number.MAX_VALUE,max:Number.MAX_VALUE*-1,sum:0,values:[],count:0},i=0,e=t.length;ir.max&&(r.max=n),r.count+=1);return r.domain=[r.min,r.max],r.limits=function(t,e){return Tf.limits(r,t,e)},r},Tf.scale=function(t,e){var i,r,n,o,a,s,c,u,l,h,d,f,p,m,g,v,y,b,x,_,w;return l=\"rgb\",h=Tf(\"#ccc\"),m=0,s=!1,a=[0,1],p=[],f=[0,0],i=!1,n=[],d=!1,u=0,c=1,o=!1,r={},_=function(t){var e,i,r,o,a,s,c;if(null==t&&(t=[\"#fff\",\"#000\"]),null!=t&&\"string\"===Ep(t)&&null!=(null!=(o=Tf.brewer)?o[t]:void 0)&&(t=Tf.brewer[t]),\"array\"===Ep(t)){for(t=t.slice(0),e=r=0,a=t.length-1;0<=a?r<=a:r>=a;e=0<=a?++r:--r)i=t[e],\"string\"===Ep(i)&&(t[e]=Tf(i));for(p.length=0,e=c=0,s=t.length-1;0<=s?c<=s:c>=s;e=0<=s?++c:--c)p.push(e/(t.length-1))}return x(),n=t},y=function(t){var e,r;if(null!=i){for(r=i.length-1,e=0;e=i[e];)e++;return e-1}return 0},w=function(t){return t},g=function(t){var e,r,n,o,a;return a=t,i.length>2&&(o=i.length-1,e=y(t),n=i[0]+(i[1]-i[0])*(0+.5*m),r=i[o-1]+(i[o]-i[o-1])*(1-.5*m),a=u+(i[e]+.5*(i[e+1]-i[e])-n)/(r-n)*(c-u)),a},b=function(t,e){var o,a,s,d,m,g,v,b;if(null==e&&(e=!1),isNaN(t))return h;if(e?b=t:i&&i.length>2?(o=y(t),b=o/(i.length-2),b=f[0]+b*(1-f[0]-f[1])):c!==u?(b=(t-u)/(c-u),b=f[0]+b*(1-f[0]-f[1]),b=Math.min(1,Math.max(0,b))):b=1,e||(b=w(b)),d=Math.floor(1e4*b),r[d])a=r[d];else{if(\"array\"===Ep(n))for(s=m=0,v=p.length-1;0<=v?m<=v:m>=v;s=0<=v?++m:--m){if(g=p[s],b<=g){a=n[s];break}if(b>=g&&s===p.length-1){a=n[s];break}if(b>g&&b=l;e=0<=l?++h:--h)p.push(e/(r-1));return a=[u,c],v},v.mode=function(t){return arguments.length?(l=t,x(),v):l},v.range=function(t,e){return _(t,e),v},v.out=function(t){return d=t,v},v.spread=function(t){return arguments.length?(m=t,v):m},v.correctLightness=function(t){return null==t&&(t=!0),o=t,x(),w=o?function(t){var e,i,r,n,o,a,s,c,u;for(e=b(0,!0).lab()[0],i=b(1,!0).lab()[0],s=e>i,r=b(t,!0).lab()[0],o=e+(i-e)*t,n=r-o,c=0,u=1,a=20;Math.abs(n)>.01&&a-- >0;)!function(){return s&&(n*=-1),n<0?(c=t,t+=.5*(u-t)):(u=t,t+=.5*(c-t)),r=b(t,!0).lab()[0],n=r-o}();return t}:function(t){return t},v},v.padding=function(t){return null!=t?(\"number\"===Ep(t)&&(t=[t,t]),f=t,v):f},v.colors=function(){var e,r,n,o,s,c,u,l,h;if(o=0,s=\"hex\",1===arguments.length&&(\"string\"===Ep(arguments[0])?s=arguments[0]:o=arguments[0]),2===arguments.length&&(o=arguments[0],s=arguments[1]),o)return r=a[0],e=a[1]-r,function(){u=[];for(var t=0;0<=o?to;0<=o?t++:t--)u.push(t);return u}.apply(this).map(function(t){return v(r+t/(o-1)*e)[s]()});if(t=[],l=[],i&&i.length>2)for(n=h=1,c=i.length;1<=c?hc;n=1<=c?++h:--h)l.push(.5*(i[n-1]+i[n]));else l=a;return l.map(function(t){return v(t)[s]()})},v},null==Tf.scales&&(Tf.scales={}),Tf.scales.cool=function(){return Tf.scale([Tf.hsl(180,1,.9),Tf.hsl(250,.7,.4)])},Tf.scales.hot=function(){return Tf.scale([\"#000\",\"#f00\",\"#ff0\",\"#fff\"],[0,.25,.75,1]).mode(\"rgb\")},Tf.analyze=function(t,e,i){var r,n,o,a,s,c,u;if(s={min:Number.MAX_VALUE,max:Number.MAX_VALUE*-1,sum:0,values:[],count:0},null==i&&(i=function(){return!0}),r=function(t){null==t||isNaN(t)||(s.values.push(t),s.sum+=t,ts.max&&(s.max=t),s.count+=1)},u=function(t,n){if(i(t,n))return r(null!=e&&\"function\"===Ep(e)?e(t):null!=e&&\"string\"===Ep(e)||\"number\"===Ep(e)?t[e]:t)},\"array\"===Ep(t))for(a=0,o=t.length;a=F;w=1<=F?++O:--O)M.push(C+w/i*(np-C));M.push(np)}else if(\"l\"===e.substr(0,1)){if(C<=0)throw\"Logarithmic scales are only possible for values > 0\";for(T=Math.LOG10E*ep(C),P=Math.LOG10E*ep(np),M.push(C),w=rt=1,B=i-1;1<=B?rt<=B:rt>=B;w=1<=B?++rt:--rt)M.push(up(10,T+w/i*(P-T)));M.push(np)}else if(\"q\"===e.substr(0,1)){for(M.push(C),w=r=1,G=i-1;1<=G?r<=G:r>=G;w=1<=G?++r:--r)D=it.length*w/i,N=Ff(D),N===D?M.push(it[N]):(k=D-N,M.push(it[N]*k+it[N+1]*(1-k)));M.push(np)}else if(\"k\"===e.substr(0,1)){for(I=it.length,g=new Array(I),x=new Array(i),Q=!0,L=0,y=null,y=[],y.push(C),w=n=1,H=i-1;1<=H?n<=H:n>=H;w=1<=H?++n:--n)y.push(C+w/i*(np-C));for(y.push(np);Q;){for(S=o=0,W=i-1;0<=W?o<=W:o>=W;S=0<=W?++o:--o)x[S]=0;for(w=a=0,X=I-1;0<=X?a<=X:a>=X;w=0<=X?++a:--a){for(et=it[w],E=Number.MAX_VALUE,S=s=0,q=i-1;0<=q?s<=q:s>=q;S=0<=q?++s:--s)_=_f(y[S]-et),_=Y;S=0<=Y?++c:--c)R[S]=null;for(w=u=0,Z=I-1;0<=Z?u<=Z:u>=Z;w=0<=Z?++u:--u)b=g[w],null===R[b]?R[b]=it[w]:R[b]+=it[w];for(S=l=0,K=i-1;0<=K?l<=K:l>=K;S=0<=K?++l:--l)R[S]*=1/x[S];for(Q=!1,S=h=0,z=i-1;0<=z?h<=z:h>=z;S=0<=z?++h:--h)if(R[S]!==y[w]){Q=!0;break}y=R,L++,L>200&&(Q=!1)}for(A={},S=d=0,U=i-1;0<=U?d<=U:d>=U;S=0<=U?++d:--d)A[S]=[];for(w=f=0,j=I-1;0<=j?f<=j:f>=j;w=0<=j?++f:--f)b=g[w],A[b].push(it[w]);for(tt=[],S=p=0,$=i-1;0<=$?p<=$:p>=$;S=0<=$?++p:--p)tt.push(A[S][0]),tt.push(A[S][A[S].length-1]);for(tt=tt.sort(function(t,e){return t-e}),M.push(tt[0]),w=m=1,V=tt.length-1;m<=V;w=m+=2)isNaN(tt[w])||M.push(tt[w])}return M},zf=function(t,e,i){var r,n,o,a;return r=Ip(arguments),t=r[0],e=r[1],i=r[2],t/=360,t<1/3?(n=(1-e)/3,a=(1+e*Rf(gf*t)/Rf(pf-gf*t))/3,o=1-(n+a)):t<2/3?(t-=1/3,a=(1-e)/3,o=(1+e*Rf(gf*t)/Rf(pf-gf*t))/3,n=1-(a+o)):(t-=2/3,o=(1-e)/3,n=(1+e*Rf(gf*t)/Rf(pf-gf*t))/3,a=1-(o+n)),a=tp(i*a*3),o=tp(i*o*3),n=tp(i*n*3),[255*a,255*o,255*n,r.length>3?r[3]:1]},fp=function(){var t,e,i,r,n,o,a,s;return a=Ip(arguments),o=a[0],e=a[1],t=a[2],gf=2*Math.PI,o/=255,e/=255,t/=255,n=Math.min(o,e,t),r=(o+e+t)/3,s=1-n/r,0===s?i=0:(i=(o-e+(o-t))/2,i/=Math.sqrt((o-e)*(o-e)+(o-t)*(e-t)),i=Math.acos(i),t>e&&(i=gf-i),i/=gf),[360*i,s,r]},Tf.hsi=function(){return function(t,e,i){i.prototype=t.prototype;var r=new i,n=t.apply(r,e);return Object(n)===n?n:r}(lf,kp.call(arguments).concat([\"hsi\"]),function(){})},bf.hsi=zf,lf.prototype.hsi=function(){return fp(this._rgb)},Gf=function(t,e,i,r){var n,o,a,s,c,u,l,h,d,f,p,m,g;return\"hsl\"===r?(m=t.hsl(),g=e.hsl()):\"hsv\"===r?(m=t.hsv(),g=e.hsv()):\"hsi\"===r?(m=t.hsi(),g=e.hsi()):\"lch\"!==r&&\"hcl\"!==r||(r=\"hcl\",m=t.hcl(),g=e.hcl()),\"h\"===r.substr(0,1)&&(a=m[0],f=m[1],u=m[2],s=g[0],p=g[1],l=g[2]),isNaN(a)||isNaN(s)?isNaN(a)?isNaN(s)?o=Number.NaN:(o=s,1!==u&&0!==u||\"hsv\"===r||(d=p)):(o=a,1!==l&&0!==l||\"hsv\"===r||(d=f)):(n=s>a&&s-a>180?s-(a+360):s180?s+360-a:s-a,o=a+i*n),null==d&&(d=f+i*(p-f)),c=u+i*(l-u),h=Tf[r](o,d,c)},xf=xf.concat(function(){var t,e,i,r;for(i=[\"hsv\",\"hsl\",\"hsi\",\"hcl\",\"lch\"],r=[],e=0,t=i.length;e>16&255)/255,e[i+1]=(t>>8&255)/255,e[i+2]=(255&t)/255,e},Bp.prototype.atomColor=function(){return 16777215},Bp.prototype.atomColorToArray=function(t,e,i){return this.colorToArray(this.atomColor(t),e,i)},Bp.prototype.bondColor=function(t,e){return this.atomProxy.index=e?t.atomIndex1:t.atomIndex2,this.atomColor(this.atomProxy)},Bp.prototype.bondColorToArray=function(t,e,i,r){return this.colorToArray(this.bondColor(t,e),i,r)},Bp.prototype.volumeColor=function(){return 16777215},Bp.prototype.volumeColorToArray=function(t,e,i){return this.colorToArray(this.volumeColor(t),e,i)},Bp.prototype.positionColor=function(){return 16777215},Bp.prototype.positionColorToArray=function(t,e,i){return this.colorToArray(this.positionColor(t),e,i)},Mr.prototype={active:!0,params:null,execute:function(t){var e,i;return this.active&&this._listener&&(i=this.params?this.params.concat(t):t,e=this._listener.apply(this.context,i),this._isOnce&&this.detach()),e},detach:function(){return this.isBound()?this._signal.remove(this._listener,this.context):null},isBound:function(){return!!this._signal&&!!this._listener},isOnce:function(){return this._isOnce},getListener:function(){return this._listener},getSignal:function(){return this._signal},_destroy:function(){delete this._signal,delete this._listener,delete this.context},toString:function(){return\"[SignalBinding isOnce:\"+this._isOnce+\", isBound:\"+this.isBound()+\", active:\"+this.active+\"]\"}},Cr.prototype={VERSION:\"1.0.0\",memorize:!1,_shouldPropagate:!0,active:!0,_registerListener:function(t,e,i,r){var n,o=this._indexOfListener(t,i);if(o!==-1){if(n=this._bindings[o],n.isOnce()!==e)throw new Error(\"You cannot add\"+(e?\"\":\"Once\")+\"() then add\"+(e?\"Once\":\"\")+\"() the same listener without removing the relationship first.\")}else n=new Mr(this,t,e,i,r),this._addBinding(n);return this.memorize&&this._prevParams&&n.execute(this._prevParams),n},_addBinding:function(t){var e=this._bindings.length;do--e;while(this._bindings[e]&&t._priority<=this._bindings[e]._priority);this._bindings.splice(e+1,0,t)},_indexOfListener:function(t,e){for(var i,r=this,n=this._bindings.length;n--;)if(i=r._bindings[n],i._listener===t&&i.context===e)return n;return-1},has:function(t,e){return this._indexOfListener(t,e)!==-1},add:function(t,e,i){return Pr(t,\"add\"),this._registerListener(t,!1,e,i)},addOnce:function(t,e,i){return Pr(t,\"addOnce\"),this._registerListener(t,!0,e,i)},remove:function(t,e){Pr(t,\"remove\");var i=this._indexOfListener(t,e);return i!==-1&&(this._bindings[i]._destroy(),this._bindings.splice(i,1)),t},removeAll:function(){for(var t=this,e=this._bindings.length;e--;)t._bindings[e]._destroy();this._bindings.length=0},getNumListeners:function(){return this._bindings.length},halt:function(){this._shouldPropagate=!1},dispatch:function(t){if(this.active){var e,i=Array.prototype.slice.call(arguments),r=this._bindings.length;if(this.memorize&&(this._prevParams=i),r){e=this._bindings.slice(),this._shouldPropagate=!0;do r--;while(e[r]&&this._shouldPropagate&&e[r].execute(i)!==!1)}}},forget:function(){this._prevParams=null},dispose:function(){this.removeAll(),delete this._bindings,delete this._prevParams},toString:function(){return\"[Signal active:\"+this.active+\" numListeners:\"+this.getNumListeners()+\"]\"}};var zp={PROTEIN:1,NUCLEIC:2,RNA:3,DNA:4,POLYMER:5,WATER:6,HELIX:7,SHEET:8,BACKBONE:9,SIDECHAIN:10,ALL:11,HETERO:12,ION:13,SACCHARIDE:14};Tr.prototype={constructor:Tr,type:\"selection\",setString:function(t,e){if(void 0===t&&(t=this.string||\"\"),t!==this.string){try{this.parse(t)}catch(t){this.selection={error:t.message}}this.string=t,this.test=this.makeAtomTest(),this.residueTest=this.makeResidueTest(),this.chainTest=this.makeChainTest(),this.modelTest=this.makeModelTest(),this.atomOnlyTest=this.makeAtomTest(!0),this.residueOnlyTest=this.makeResidueTest(!0),this.chainOnlyTest=this.makeChainTest(!0),this.modelOnlyTest=this.makeModelTest(!0),e||this.signals.stringChanged.dispatch(this.string)}},parse:function(t){if(this.selection={operator:void 0,rules:[]},t){var e,i,r=this,n=this.selection,o=[];t=t.replace(/\\(/g,\" ( \").replace(/\\)/g,\" ) \").trim(),\"(\"===t.charAt(0)&&\")\"===t.substr(-1)&&(t=t.slice(1,-1).trim());var a,s,c,u,l,h,d,f,p,m,g=t.split(/\\s+/),v=[\"*\",\"\",\"ALL\"],y=function(t){e={operator:t,rules:[]},void 0===n?(n=e,r.selection=e):(n.rules.push(e),o.push(n),n=e)},b=function(t){i=n,n=o.pop(),void 0===n&&(y(t),x(i))},x=function(t){n.rules.push(t)};for(c=0;c0)if(\"NOT\"===a.toUpperCase())u=1;else if(1===u)u=2;else{if(2!==u)throw new Error(\"something went wrong with 'not'\");u=!1,b()}if(\"AND\"!==a.toUpperCase())if(\"OR\"!==a.toUpperCase())if(\"NOT\"!==a.toUpperCase())if(s={},\"HETERO\"!==a.toUpperCase())if(\"WATER\"!==a.toUpperCase())if(\"PROTEIN\"!==a.toUpperCase())if(\"NUCLEIC\"!==a.toUpperCase())if(\"RNA\"!==a.toUpperCase())if(\"DNA\"!==a.toUpperCase())if(\"POLYMER\"!==a.toUpperCase())if(\"ION\"!==a.toUpperCase())if(\"SACCHARIDE\"!==a.toUpperCase()&&\"SUGAR\"!==a.toUpperCase())if(\"HYDROGEN\"!==a.toUpperCase())if(\"SMALL\"!==a.toUpperCase())if(\"NUCLEOPHILIC\"!==a.toUpperCase())if(\"HYDROPHOBIC\"!==a.toUpperCase())if(\"AROMATIC\"!==a.toUpperCase())if(\"AMIDE\"!==a.toUpperCase())if(\"ACIDIC\"!==a.toUpperCase())if(\"BASIC\"!==a.toUpperCase())if(\"CHARGED\"!==a.toUpperCase())if(\"POLAR\"!==a.toUpperCase())if(\"NONPOLAR\"!==a.toUpperCase())if(\"HELIX\"!==a.toUpperCase())if(\"SHEET\"!==a.toUpperCase())if(\"TURN\"!==a.toUpperCase())if(\"BACKBONE\"!==a.toUpperCase())if(\"SIDECHAIN\"!==a.toUpperCase())if(\"SIDECHAINATTACHED\"!==a.toUpperCase())if(v.indexOf(a.toUpperCase())===-1)if(\"@\"!==a.charAt(0))if(\"#\"!==a.charAt(0))if(\"[\"!==a[0]||\"]\"!==a[a.length-1])if(a.length>=1&&a.length<=4&&\"^\"!==a[0]&&\":\"!==a[0]&&\".\"!==a[0]&&\"%\"!==a[0]&&\"/\"!==a[0]&&isNaN(parseInt(a)))s.resname=a.toUpperCase(),x(s);else{if(s={operator:\"AND\",rules:[]},d=a.split(\"/\"),d.length>1&&d[1]){if(isNaN(parseInt(d[1])))throw new Error(\"model must be an integer\");s.rules.push({model:parseInt(d[1])})}if(p=d[0].split(\"%\"),p.length>1&&s.rules.push({altloc:p[1]}),l=p[0].split(\".\"),l.length>1&&l[1]){if(l[1].length>4)throw new Error(\"atomname must be one to four characters\");s.rules.push({atomname:l[1].substring(0,4).toUpperCase()})}if(h=l[0].split(\":\"),h.length>1&&h[1]&&s.rules.push({chainname:h[1]}),m=h[0].split(\"^\"),m.length>1&&s.rules.push({inscode:m[1]}),m[0]){var _,w;if(\"-\"===m[0][0]&&(m[0]=m[0].substr(1),_=!0),m[0].includes(\"--\")&&(m[0]=m[0].replace(\"--\",\"-\"),w=!0),f=m[0].split(\"-\"),1===f.length){if(f=parseInt(f[0]),isNaN(f))throw new Error(\"resi must be an integer\");_&&(f*=-1),s.rules.push({resno:f})}else{if(2!==f.length)throw new Error(\"resi range must contain one '-'\");_&&(f[0]*=-1),w&&(f[1]*=-1),s.rules.push({resno:[parseInt(f[0]),parseInt(f[1])]})}}if(1===s.rules.length)x(s.rules[0]);else{if(!(s.rules.length>1))throw new Error(\"empty selection chunk\");x(s)}}else s.resname=a.substr(1,a.length-2).toUpperCase(),x(s);else s.element=a.substr(1).toUpperCase(),x(s);else{for(var S=a.substr(1).split(\",\"),A=0,M=S.length;A0?e:null},makeAtomTest:function(t){var e,i=[\"h\",\"g\",\"i\"],r=[\"e\",\"b\"];e=t?this._filter(function(t){return void 0!==t.keyword&&t.keyword!==zp.BACKBONE&&t.keyword!==zp.SIDECHAIN||(void 0!==t.model||(void 0!==t.chainname||(void 0!==t.resname||(void 0!==t.resno||void 0!==t.sstruc))))}):this.selection;var n=function(t,e){if(void 0===e.atomname&&void 0===e.element&&void 0===e.altloc&&void 0===e.atomindex&&void 0===e.keyword&&void 0===e.inscode&&void 0===e.resname&&void 0===e.sstruc&&void 0===e.resno&&void 0===e.chainname&&void 0===e.model)return-1;if(void 0!==e.keyword){if(e.keyword===zp.BACKBONE&&!t.isBackbone())return!1;if(e.keyword===zp.SIDECHAIN&&!t.isSidechain())return!1;if(e.keyword===zp.HETERO&&!t.isHetero())return!1;if(e.keyword===zp.PROTEIN&&!t.isProtein())return!1;if(e.keyword===zp.NUCLEIC&&!t.isNucleic())return!1;if(e.keyword===zp.RNA&&!t.isRna())return!1;if(e.keyword===zp.DNA&&!t.isDna())return!1;if(e.keyword===zp.POLYMER&&!t.isPolymer())return!1;if(e.keyword===zp.WATER&&!t.isWater())return!1;if(e.keyword===zp.HELIX&&i.indexOf(t.sstruc)===-1)return!1;if(e.keyword===zp.SHEET&&r.indexOf(t.sstruc)===-1)return!1;if(e.keyword===zp.ION&&!t.isIon())return!1;if(e.keyword===zp.SACCHARIDE&&!t.isSaccharide())return!1}if(void 0!==e.atomname&&e.atomname!==t.atomname)return!1;if(void 0!==e.element&&e.element!==t.element)return!1;if(void 0!==e.altloc&&e.altloc!==t.altloc)return!1;if(void 0!==e.atomindex&&Ji(e.atomindex,t.index)<0)return!1;if(void 0!==e.resname&&e.resname!==t.resname)return!1;if(void 0!==e.sstruc&&e.sstruc!==t.sstruc)return!1;if(void 0!==e.resno)if(Array.isArray(e.resno)&&2===e.resno.length){if(e.resno[0]>t.resno||e.resno[1]t.resno||e.resno[1]r);return s.lines},lineCount:function(){console.warn(\"lineCount - deprecated\");for(var t=this.data,e=t.length,i=this.isBinary()?this.newline.charCodeAt(0):this.newline,r=0,n=0;nthis.data.length))return this.__pointer+=this.chunkSize,this.chunk(t)},nextChunkOfLines:function(){var t=this.nextChunk();if(void 0!==t){var e=this.__pointer>this.data.length,i=this.chunkToLines(t,this.__partialLine,e);return this.__partialLine=i.partialLine,i.lines}},eachChunk:function(t){for(var e=this,i=this.chunkSize,r=this.data.length,n=this.chunkCount(),o=0;o=0),o[8]){case\"b\":i=parseInt(i,10).toString(2);break;case\"c\":i=String.fromCharCode(parseInt(i,10));break;case\"d\":case\"i\":i=parseInt(i,10);break;case\"j\":i=JSON.stringify(i,null,o[6]?parseInt(o[6]):0);break;case\"e\":i=o[7]?parseFloat(i).toExponential(o[7]):parseFloat(i).toExponential();break;case\"f\":i=o[7]?parseFloat(i).toFixed(o[7]):parseFloat(i);break;case\"g\":i=o[7]?parseFloat(i).toPrecision(o[7]):parseFloat(i);break;case\"o\":i=i.toString(8);break;case\"s\":i=String(i),i=o[7]?i.substring(0,o[7]):i;break;case\"t\":i=String(!!i),i=o[7]?i.substring(0,o[7]):i;break;case\"T\":i=Br(i),i=o[7]?i.substring(0,o[7]):i;break;case\"u\":i=parseInt(i,10)>>>0;break;case\"v\":i=i.valueOf(),i=o[7]?i.substring(0,o[7]):i;break;case\"x\":i=parseInt(i,10).toString(16);break;case\"X\":i=parseInt(i,10).toString(16).toUpperCase()}fm.json.test(o[8])?d[d.length]=i:(!fm.number.test(o[8])||f&&!o[3]?p=\"\":(p=f?\"+\":\"-\",i=i.toString().replace(fm.sign,\"\")),s=o[4]?\"0\"===o[4]?\"0\":o[4].charAt(1):\" \",c=o[6]-(p+i).length,a=o[6]&&c>0?zr(s,c):\"\",d[d.length]=o[5]?p+i+a:\"0\"===s?p+a+i:a+p+i)}return d.join(\"\")},Fr.cache={},Fr.parse=function(t){for(var e=t,i=[],r=[],n=0;e;){if(null!==(i=fm.text.exec(e)))r[r.length]=i[0];else if(null!==(i=fm.modulo.exec(e)))r[r.length]=\"%\";else{if(null===(i=fm.placeholder.exec(e)))throw new SyntaxError(\"[sprintf] unexpected placeholder\");if(i[2]){n|=1;var o=[],a=i[2],s=[];if(null===(s=fm.key.exec(a)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");for(o[o.length]=s[1];\"\"!==(a=a.substring(s[0].length));)if(null!==(s=fm.key_access.exec(a)))o[o.length]=s[1];else{if(null===(s=fm.index_access.exec(a)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");o[o.length]=s[1]}i[2]=o}else n|=2;if(3===n)throw new Error(\"[sprintf] mixing positional and named placeholders is not (yet) supported\");r[r.length]=i}e=e.substring(i[0].length)}return r};var pm={0:[\"\",\"0\",\"00\",\"000\",\"0000\",\"00000\",\"000000\",\"0000000\"],\" \":[\"\",\" \",\" \",\" \",\" \",\" \",\" \",\" \"],_:[\"\",\"_\",\"__\",\"___\",\"____\",\"_____\",\"______\",\"_______\"]},mm=function(){this.count=0,this.signals={countChanged:new Cr}};mm.prototype.clear=function(){this.change(-this.count)},mm.prototype.change=function(t){this.count+=t,this.signals.countChanged.dispatch(t,this.count),this.count<0&&qp.warn(\"Counter.count below zero\",this.count)},mm.prototype.increment=function(){this.change(1)},mm.prototype.decrement=function(){this.change(-1)},mm.prototype.listen=function(t){this.change(t.count),t.signals.countChanged.add(this.change,this)},mm.prototype.unlisten=function(t){var e=t.signals.countChanged;e.has(this.change,this)&&e.remove(this.change,this)},mm.prototype.onZeroOnce=function(t,e){if(0===this.count)t.call(e,0,0);else{var i=function(){0===this.count&&(this.signals.countChanged.remove(i,this),t.apply(e,arguments))};this.signals.countChanged.add(i,this)}},mm.prototype.dispose=function(){this.clear(),this.signals.countChanged.dispose()};var gm=function(t){this.name=t||\"\",this.nextGid=1,this.objectList=[],this.rangeList=[]};gm.prototype.getBaseObject=function(t){return\"StructureView\"===t.type&&(t=t.getStructure()),t},gm.prototype.addObject=function(t){t=this.getBaseObject(t);var e=this.allocateGidRange(t);return e&&(this.objectList.push(t),this.rangeList.push(e)),this},gm.prototype.removeObject=function(t){t=this.getBaseObject(t);var e=this.objectList.indexOf(t);return e!==-1&&(this.objectList.splice(e,1),this.rangeList.splice(e,1),0===this.objectList.length&&(this.nextGid=1)),this},gm.prototype.updateObject=function(t,e){t=this.getBaseObject(t);var i=this.objectList.indexOf(t);if(i!==-1){var r=this.rangeList[i];if(r[1]===this.nextGid){var n=this.getGidCount(t);this.nextGid+=n-(r[1]-r[0]),r[1]=this.nextGid}else this.rangeList[i]=this.allocateGidRange(t)}else e||qp.warn(\"GidPool.updateObject: object not found.\");return this},gm.prototype.getGidCount=function(t){t=this.getBaseObject(t);var e=0;return\"Structure\"===t.type?e=t.atomStore.count+t.bondStore.count+t.backboneBondStore.count+t.rungBondStore.count:\"Volume\"===t.type?e=t.__data.length:qp.warn(\"GidPool.getGidCount: unknown object type\"),e},gm.prototype.allocateGidRange=function(t){t=this.getBaseObject(t);var e=this.getGidCount(t);if(e>Math.pow(10,7))return qp.warn(\"GidPool.allocateGidRange: gidCount too large\"),null;var i=this.nextGid;return this.nextGid+=e,this.nextGid>Math.pow(2,24)&&qp.error(\"GidPool.allocateGidRange: GidPool overflown\"),[i,this.nextGid]},gm.prototype.getNextGid=function(){return this.nextGid++},gm.prototype.getGid=function(t,e){t=this.getBaseObject(t),e=e||0;var i=0,r=this.objectList.indexOf(t);if(r!==-1){var n=this.rangeList[r],o=n[0];i=o+e}else qp.warn(\"GidPool.getGid: object not found.\");return i},gm.prototype.getByGid=function(t){var e;return this.objectList.forEach(function(i,r){var n=this.rangeList[r];if(!(t=n[1])){var o=t-n[0];\"Structure\"===i.type?othis.prevFpsTime+1e3&&(this.lastFps=this.frames,this.prevFpsTime=t,this.frames=0),t}},em.add(\"shader/chunk/dull_interior_fragment.glsl\",\"#ifdef DULL_INTERIOR\\nif( gl_FrontFacing == false ){\\nnormal = vec3( 0.0, 0.0, 0.4 );\\n}\\n#endif\"),em.add(\"shader/chunk/fog_fragment.glsl\",\"#ifdef USE_FOG\\nfloat depth = length( vViewPosition );\\n#ifdef FOG_EXP2\\nfloat fogFactor = whiteCompliment( exp2( - fogDensity * fogDensity * depth * depth * LOG2 ) );\\n#else\\nfloat fogFactor = smoothstep( fogNear, fogFar, depth );\\n#endif\\ngl_FragColor.rgb = mix( gl_FragColor.rgb, fogColor, fogFactor );\\n#endif\"),em.add(\"shader/chunk/nearclip_vertex.glsl\",\"#ifdef NEAR_CLIP\\nif( vViewPosition.z < nearClip - 5.0 )\\ngl_Position.z = 2.0 * gl_Position.w;\\n#endif\"),em.add(\"shader/chunk/nearclip_fragment.glsl\",\"#ifdef NEAR_CLIP\\nif( vViewPosition.z < nearClip )\\ndiscard;\\n#endif\"),em.add(\"shader/chunk/radiusclip_vertex.glsl\",\"#ifdef RADIUS_CLIP\\nif( distance( vViewPosition, vClipCenter ) > clipRadius + 5.0 )\\ngl_Position.z = 2.0 * gl_Position.w;\\n#endif\"),em.add(\"shader/chunk/radiusclip_fragment.glsl\",\"#ifdef RADIUS_CLIP\\nif( distance( vViewPosition, vClipCenter ) > clipRadius )\\ndiscard;\\n#endif\"),em.add(\"shader/chunk/opaque_back_fragment.glsl\",\"#ifdef OPAQUE_BACK\\n#ifdef FLIP_SIDED\\nif( gl_FrontFacing == true ){\\ngl_FragColor.a = 1.0;\\n}\\n#else\\nif( gl_FrontFacing == false ){\\ngl_FragColor.a = 1.0;\\n}\\n#endif\\n#endif\");var vm=/^(?!\\/\\/)\\s*#include\\s+(\\S+)/gim,ym={};if(\"undefined\"!=typeof WebGLRenderingContext&&WebGLRenderingContext){var bm=WebGLRenderingContext.prototype,xm=bm.getShaderParameter;bm.getShaderParameter=function(){return!t.Debug||xm.apply(this,arguments)};var _m=bm.getShaderInfoLog;bm.getShaderInfoLog=function(){return t.Debug?_m.apply(this,arguments):\"\"};var wm=bm.getProgramParameter;bm.getProgramParameter=function(e,i){return!t.Debug&&i===bm.LINK_STATUS||wm.apply(this,arguments)};var Sm=bm.getProgramInfoLog;bm.getProgramInfoLog=function(){return t.Debug?Sm.apply(this,arguments):\"\"}}var Am=[[[0,0]],[[4,4],[-4,-4]],[[-2,-6],[6,-2],[-6,2],[2,6]],[[1,-3],[-1,3],[5,1],[-3,-5],[-5,5],[-7,-1],[3,7],[7,-7]],[[1,1],[-1,-3],[-3,2],[4,-1],[-5,-2],[2,5],[5,3],[3,-5],[-2,6],[0,-7],[-4,-6],[-6,4],[-8,0],[7,-4],[6,7],[-7,-8]],[[-4,-7],[-7,-5],[-3,-5],[-5,-4],[-1,-4],[-2,-2],[-6,-1],[-4,0],[-7,1],[-1,2],[-6,3],[-3,3],[-7,6],[-3,6],[-5,7],[-1,7],[5,-7],[1,-6],[6,-5],[4,-4],[2,-3],[7,-2],[1,-1],[4,-1],[2,1],[6,2],[0,4],[4,4],[2,5],[7,5],[5,6],[3,7]]];Am.forEach(function(t){t.forEach(function(t){t[0]*=.0625,t[1]*=.0625})}),Gr.prototype.constructor=Gr;var Mm=2*Math.PI,Pm=(new Float32Array(4),new Float32Array(4),new g),Cm=new p,Tm=new p,Em=new p,Im=new p,Lm=new Float32Array(4),Rm=new Uint8Array(4);on.prototype.constructor=on;var Om=function(t,e){this.signals={moved:new Cr,scrolled:new Cr,dragged:new Cr,dropped:new Cr,clicked:new Cr,hovered:new Cr};var i=Object.assign({},e);this.hoverTimeout=Hi(i.hoverTimeout,50),this.domElement=t,this.position=new h,this.prevPosition=new h,this.down=new h,this.canvasPosition=new h,this.moving=!1,this.hovering=!0,this.scrolled=!1,this.lastMoved=1/0,this.which=void 0,this.pressed=void 0,this.altKey=void 0,this.ctrlKey=void 0,this.metaKey=void 0,this.shiftKey=void 0,this.listen=this.listen.bind(this),this.onMousewheel=this.onMousewheel.bind(this),this.onMousemove=this.onMousemove.bind(this),this.onMousedown=this.onMousedown.bind(this),this.onMouseup=this.onMouseup.bind(this),this.listen(),t.addEventListener(\"mousewheel\",this.onMousewheel),t.addEventListener(\"wheel\",this.onMousewheel),t.addEventListener(\"MozMousePixelScroll\",this.onMousewheel),t.addEventListener(\"mousemove\",this.onMousemove),t.addEventListener(\"mousedown\",this.onMousedown),t.addEventListener(\"mouseup\",this.onMouseup),t.addEventListener(\"contextmenu\",this.onContextmenu)};Om.prototype.setParameters=function(t){var e=Object.assign({},t);this.hoverTimeout=Hi(e.hoverTimeout,this.hoverTimeout)},Om.prototype.listen=function(){performance.now()-this.lastMoved>this.hoverTimeout&&(this.moving=!1),(this.scrolled||!this.moving&&!this.hovering)&&(this.scrolled=!1,this.hoverTimeout!==-1&&(this.hovering=!0,this.signals.hovered.dispatch())),requestAnimationFrame(this.listen)},Om.prototype.onMousewheel=function(t){var e=this;t.preventDefault();var i=0;i=t.wheelDelta?t.wheelDelta/40:t.detail?-t.detail/3:-t.deltaY/(t.deltaMode?.33:30),this.signals.scrolled.dispatch(i),setTimeout(function(){e.scrolled=!0},this.hoverTimeout)},Om.prototype.onMousemove=function(t){t.preventDefault(),this.setKeys(t),this.moving=!0,this.hovering=!1,this.lastMoved=performance.now(),this.prevPosition.copy(this.position),this.position.set(t.layerX,t.layerY),this.setCanvasPosition(t);var e=this.prevPosition.x-this.position.x,i=this.prevPosition.y-this.position.y;this.signals.moved.dispatch(e,i),this.pressed&&this.signals.dragged.dispatch(e,i)},Om.prototype.onMousedown=function(t){t.preventDefault(),this.setKeys(t),this.moving=!1,this.hovering=!1,this.down.set(t.layerX,t.layerY),this.which=t.which,this.pressed=!0,this.setCanvasPosition(t)},Om.prototype.onMouseup=function(t){t.preventDefault(),this.setKeys(t),this.signals.clicked.dispatch(),this.which=void 0,this.pressed=void 0},Om.prototype.onContextmenu=function(t){t.preventDefault()},Om.prototype.distance=function(){return this.position.distanceTo(this.down)},Om.prototype.setCanvasPosition=function(t){var e=this.domElement.getBoundingClientRect(),i=t.clientX-e.left,r=t.clientY-e.top;this.canvasPosition.set(i,e.height-r)},Om.prototype.setKeys=function(t){this.altKey=t.altKey,this.ctrlKey=t.ctrlKey,this.metaKey=t.metaKey,this.shiftKey=t.shiftKey},Om.prototype.dispose=function(){var t=this.domElement;t.removeEventListener(\"mousewheel\",this.onMousewheel),t.removeEventListener(\"wheel\",this.onMousewheel),t.removeEventListener(\"MozMousePixelScroll\",this.onMousewheel),t.removeEventListener(\"mousemove\",this.onMousemove),t.removeEventListener(\"mousedown\",this.onMousedown),t.removeEventListener(\"mouseup\",this.onMouseup),t.removeEventListener(\"contextmenu\",this.onContextmenu)};var Dm=new p,Nm=new p,km=new p,Fm=new g,Bm=function(t,e){var i=e||{};this.rotateSpeed=Hi(i.rotateSpeed,2),this.zoomSpeed=Hi(i.zoomSpeed,1.2),this.panSpeed=Hi(i.panSpeed,1),this.viewer=t.viewer,this.viewerControls=t.viewerControls};Bm.prototype.zoom=function(t){this.viewerControls.zoom(this.zoomSpeed*t*.02)},Bm.prototype.pan=function(t,e){var i,r=this.viewer.camera;if(\"OrthographicCamera\"===r.type)i=1/r.zoom;else{var n=mr(r.fov),o=-2*r.position.z*Math.tan(n/2);i=o/this.viewer.height}Fm.set(t,e,0),Fm.multiplyScalar(this.panSpeed*i),km.getInverse(this.viewer.rotationGroup.matrix),Fm.applyMatrix4(km),this.viewerControls.translate(Fm)},Bm.prototype.rotate=function(t,e){Dm.makeRotationX(this.rotateSpeed*e*.01),Nm.makeRotationY(this.rotateSpeed*-t*.01),Dm.multiply(Nm),this.viewerControls.applyMatrix(Dm)};var zm=new g,Um=new h,jm=function(t){this.stage=t,this.viewer=t.viewer,this.gidPool=t.gidPool,this.mouseObserver=t.mouseObserver};jm.prototype.pick=function(t,e){var i,r,n,o=this.mouseObserver,a=this.viewer.pick(t,e),s=a.instance,c=this.gidPool.getByGid(a.gid);c&&\"AtomProxy\"===c.type?i=c:c&&\"BondProxy\"===c.type?r=c:c&&\"Volume\"===c.volume.type&&(n=c);var u,l;return(i||r||n)&&(i?(zm.copy(i),u=i.structure):r?(zm.copy(r.atom1).add(r.atom2).multiplyScalar(.5),u=r.structure):n&&(zm.copy(n),u=n.volume),s&&zm.applyProjection(s.matrix),u&&(l=this.stage.getComponentsByObject(u).list[0])),Um.copy(o.canvasPosition),{atom:i,bond:r,volume:n,instance:s,position:zm,component:l,canvasPosition:Um,altKey:o.altKey,ctrlKey:o.ctrlKey,metaKey:o.metaKey,shiftKey:o.shiftKey}};var $m=new m,Vm=new g,Gm=new g,Hm=new g,Wm=new p,Xm=new g,qm=new p,Ym=function(t){this.stage=t,this.viewer=t.viewer,this.signals={changed:new Cr}},Zm={position:{},rotation:{}};Zm.position.get=function(){return this.viewer.translationGroup.position},Zm.rotation.get=function(){return this.viewer.rotationGroup.quaternion},Ym.prototype.changed=function(){this.viewer.requestRender(),this.signals.changed.dispatch()},Ym.prototype.getOrientation=function(t){var e=t||new p;e.copy(this.viewer.rotationGroup.matrix);var i=-this.viewer.camera.position.z;return e.scale(Hm.set(i,i,i)),e.setPosition(this.viewer.translationGroup.position),e},Ym.prototype.orient=function(t){cr(t).decompose(Vm,$m,Gm),this.viewer.rotationGroup.setRotationFromQuaternion($m),this.viewer.translationGroup.position.copy(Vm),this.viewer.camera.position.z=-Gm.z,this.viewer.updateZoom(),this.changed()},Ym.prototype.translate=function(t){this.viewer.translationGroup.position.add(sr(t)),this.changed()},Ym.prototype.center=function(t){this.viewer.translationGroup.position.copy(sr(t)).negate(),this.changed()},Ym.prototype.zoom=function(t){this.distance(this.viewer.camera.position.z*(1-t))},Ym.prototype.distance=function(t){this.viewer.camera.position.z=t,this.viewer.updateZoom(),this.changed()},Ym.prototype.spin=function(t,e){Wm.getInverse(this.viewer.rotationGroup.matrix),Xm.copy(sr(t)).applyMatrix4(Wm),this.viewer.rotationGroup.rotateOnAxis(Xm,e),this.changed()},Ym.prototype.rotate=function(t){this.viewer.rotationGroup.setRotationFromQuaternion(ur(t)),this.changed()},Ym.prototype.align=function(t){qm.getInverse(cr(t)),this.viewer.rotationGroup.setRotationFromMatrix(qm),this.changed()},Ym.prototype.applyMatrix=function(t){this.viewer.rotationGroup.applyMatrix(cr(t)),this.changed()},Object.defineProperties(Ym.prototype,Zm);var Km=function(t,e){for(var i=[],r=arguments.length-2;r-- >0;)i[r]=arguments[r+2];this.duration=Hi(t,1e3),this.controls=e,this.startTime=performance.now(),this.elapsedTime=0,(n=this)._init.apply(n,i);var n};Km.prototype._init=function(){},Km.prototype._tick=function(){},Km.prototype.tick=function(t){return this.elapsedTime=t.currentTime-this.startTime,this.alpha=Ar(0,1,this.elapsedTime/this.duration),this._tick(t),1===this.alpha};var Qm=function(t){function e(e){for(var i=[],r=arguments.length-1;r-- >0;)i[r]=arguments[r+1];t.apply(this,[Hi(e,1/0)].concat(i))}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._init=function(t,e){Array.isArray(t)?this.axis=(new g).fromArray(t):this.axis=Hi(t,new g(0,1,0)),this.angle=Hi(e,.01)},e.prototype._tick=function(t){this.axis&&this.angle&&this.controls.spin(this.axis,this.angle*t.lastDuration/16)},e}(Km),Jm=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._init=function(t,e){this.moveFrom=sr(Hi(t,new g)),this.moveTo=sr(Hi(e,new g))},e.prototype._tick=function(){this.controls.position.lerpVectors(this.moveFrom,this.moveTo,this.alpha).negate(),this.controls.changed()},e}(Km),tg=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._init=function(t,e){this.zoomFrom=t,this.zoomTo=e},e.prototype._tick=function(){this.controls.distance(wr(this.zoomFrom,this.zoomTo,this.alpha))},e}(Km),eg=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._init=function(t,e){this.rotateFrom=ur(t),this.rotateTo=ur(e),this._currentRotation=new m},e.prototype._tick=function(){this._currentRotation.copy(this.rotateFrom).slerp(this.rotateTo,this.alpha),this.controls.rotate(this._currentRotation)},e}(Km),ig=function(t){this.stage=t,this.viewer=t.viewer,this.controls=t.viewerControls,this.animationList=[],this.finishedList=[]};ig.prototype.add=function(t){return this.animationList.push(t),t},ig.prototype.remove=function(t){var e=this.animationList,i=e.indexOf(t);i>-1&&e.splice(i,1)},ig.prototype.run=function(t){for(var e=this,i=this.finishedList,r=this.animationList,n=r.length,o=0;o>>5]|=1<>>5]|=1<>>5]^=1<>>5]^=1<>>r,this},an.prototype.set_all=function(t){return this.length<=0?this:(this.set_range(0,this.length-1,t),this)},an.prototype.set_range=function(t,e,i){var r=this;i=i?4294967295:0;for(var n=(t>>>5)+1,o=(e>>>5)-1,a=0|n;a+7>>5]|=1<>>5]|=1<>>5]&=~(1<>>5]&=~(1<>>5]&=~(1<>>5]&=~(1<>>5]&1<0;)0===t.words[t.count-1]&&t.count--;this.words=this.words.slice(0,this.count)},an.prototype.resize=function(t){if(this.length=t,!(this.count<<5>t)&&(this.count=t+32>>>5,this.words.length<<5<=t)){var e=new Uint32Array(this.count<<1);e.set(this.words),this.words=e}},an.prototype.hammingWeight=function(t){return t-=t>>>1&1431655765,t=(858993459&t)+(t>>>2&858993459),16843009*(t+(t>>>4)&252645135)>>>24},an.prototype.size=function(){for(var t=this,e=0,i=this.count,r=0;r=t&&e0?p>e&&(e=p):p>i&&(i=p),un(s.copy(t),h,u);var m=c.subVectors(s,u).normalize().dot(h),g=s.distanceTo(u);m>0?g>r&&(r=g):g>n&&(n=g),un(s.copy(t),d,u);var v=c.subVectors(s,u).normalize().dot(d),y=s.distanceTo(u);v>0?y>o&&(o=y):y>a&&(a=y)}),{d1a:e,d2a:r,d3a:o,d1b:-i,d2b:-n,d3b:-a}},Zn.prototype={constructor:Zn,type:\"Store\",init:function(t){var e=this;this.length=t,this.count=0;for(var i=0,r=this.__fields.length;ia?s.set(e[n].subarray(0,a)):s.set(e[n]),e[n]=s}},growIfFull:function(){if(this.count>=this.length){var t=Math.round(1.5*this.length);this.resize(Math.max(256,t))}},copyFrom:function(t,e,i,r){for(var n=this,o=0,a=this.__fields.length;o0;)s-=1;a<=s&&(a===o?o=s:s===o&&(o=a),e(a,s),a+=1,s-=1)}while(a<=s);i(r,s),i(a,n)}}qp.time(\"Store.sort\");var r=this,n=new this.constructor(1);i(0,this.count-1),qp.timeEnd(\"Store.sort\")},clear:function(){this.count=0},dispose:function(){var t=this;delete this.length,delete this.count;for(var e=0,i=this.__fields.length;e0&&(h[i]=M.angleTo(P)),t=Math.cos(x.angleTo(_)),p[i]=180/Math.PI*Math.acos(t),r=x.length(),n=_.length(),d[i]=Math.sqrt(n*r)/Math.max(2,2*(1-t)),f[i]=Math.abs(y.dot(M)),w.copy(x).multiplyScalar(d[i]/r),S.copy(_).multiplyScalar(d[i]/n),w.subVectors(L,w),S.subVectors(R,S),w.toArray(u,e+3),S.toArray(u,e+6),C.subVectors(I,T),C.toArray(m,e),P.copy(M),T.copy(w);for(w.fromArray(u,3),S.fromArray(u,6),M.subVectors(w,S).normalize(),I.index=o.getAtomIndexByType(0,E),T.copy(I),A.copy(I),un(A,M,w),A.toArray(u,0),C.subVectors(T,w),C.toArray(m,0),w.fromArray(u,3*s-6),S.fromArray(u,3*s-9),M.subVectors(w,S).normalize(),I.index=o.getAtomIndexByType(s-1,E),T.copy(I),A.copy(I),un(A,M,w),A.toArray(u,3*s-3),i=s-3;ie?B=!0:l.bending[z]>t&&(B=!0)),B){if(z-y<4){y=z,B=!1;continue}N.index=O.traceAtomIndex,E=l.axis.subarray(3*y+3,3*z),I=l.center.subarray(3*y,3*z+3),d=cn(E).normalize(),f=cn(I),L.fromArray(I),un(L,d,f),R.fromArray(I,I.length-3),un(R,d,f),d.subVectors(R,L),d.toArray(x,b),f.toArray(_,b),L.toArray(w,b),R.toArray(S,b),p.atomColorToArray(N,A,b),m.atomColorToArray(N,M,b),P.push(v.atomRadius(N)),C.push(u+y),T.push(u+z+1-y),b+=3,y=z,B=!1}return{axis:new Float32Array(x),center:new Float32Array(_),begin:new Float32Array(w),end:new Float32Array(S),color:new Float32Array(A),pickingColor:new Float32Array(M),size:new Float32Array(P),residueOffset:C,residueCount:T}}},no.prototype={push:function(t){this.content.push(t),this.bubbleUp(this.content.length-1)},pop:function(){var t=this.content[0],e=this.content.pop();return this.content.length>0&&(this.content[0]=e,this.sinkDown(0)),t},peek:function(){return this.content[0]},remove:function(t){for(var e=this,i=this.content.length,r=0;r0;){var r=Math.floor((t+1)/2)-1,n=e.content[r];if(!(e.scoreFunction(i)\":\"3/4-Z\",\"?\":\"X-Y\",\"@\":\"Y-X\",A:\"Z+1/3\",B:\"Z+2/3\",C:\"X+2/3\",D:\"Y+1/3\",E:\"-Y+2/3\",F:\"X-Y+1/3\",G:\"Y-X+2/3\",H:\"-X+1/3\",I:\"X+1/3\",J:\"Y+2/3\",K:\"-Y+1/3\",L:\"X-Y+2/3\",M:\"Y-X+1/3\",N:\"-X+2/3\",O:\"2/3+X\",P:\"1/3+Y\",Q:\"1/3+Z\",R:\"2/3-Y\",S:\"1/3+X-Y\",T:\"2/3+Y-X\",U:\"1/3-X\",V:\"2/3-X\",W:\"1/3-Y\",X:\"1/3-Z\",Y:\"2/3+Y\",Z:\"1/3+Y-X\",\"[\":\"2/3+X-Y\",\"]\":\"1/3+X\",\"^\":\"2/3+Z\",_:\"2/3-Z\",\"`\":\"5/6+Z\",a:\"1/6+Z\",b:\"5/6-Z\",c:\"1/6-Z\",d:\"Z+5/6\",e:\"Z+1/6\",f:\"Z+1/4\",g:\"+Y\"},nv={\"P 1\":\" !#\",\"P -1\":\" !#$%&\",\"P 1 2 1\":\" !#$!&\",\"P 1 21 1\":\" !#$'&\",\"C 1 2 1\":\" !#$!&()#*)&\",\"P 1 m 1\":\" !# %#\",\"P 1 c 1\":\" !# %+\",\"C 1 m 1\":\" !# %#()#(,#\",\"C 1 c 1\":\" !# %+()#(,+\",\"P 1 2/m 1\":\" !# %#$!&$%&\",\"P 1 21/m 1\":\" !#$)&$%& ,#\",\"C 1 2/m 1\":\" !# %#$!&$%&()#(,#*)&*,&\",\"P 1 2/c 1\":\" !#$!-$%& %+\",\"P 1 21/c 1\":\" !#$%&$)- ,+\",\"C 1 2/c 1\":\" !#$!-$%& %+()#*)-*,&(,+\",\"P 2 2 2\":\" !#$%#$!& %&\",\"P 2 2 21\":\" !#$%+$!- %&\",\"P 21 21 2\":\" !#$%#*)&(,&\",\"P 21 21 21\":\" !#*%+$)-(,&\",\"C 2 2 21\":\" !#$%+$!- %&()#*,+*)-(,&\",\"C 2 2 2\":\" !#$%#$!& %&()#*,#*)&(,&\",\"F 2 2 2\":\" !#$%#$!& %& )+$,+$)- ,-(!+*%+*!-(%-()#*,#*)&(,&\",\"I 2 2 2\":\" !#$%# %&$!&.'/01/.120'2\",\"I 21 21 21\":\" !#*%+$)-(,&()+$,#*!& %-\",\"P m m 2\":\" !#$%# %#$!#\",\"P m c 21\":\" !#$%+ %+$!#\",\"P c c 2\":\" !#$%# %+$!+\",\"P m a 2\":\" !#$%#(%#*!#\",\"P c a 21\":\" !#$%+(%#*!+\",\"P n c 2\":\" !#$%# ,+$)+\",\"P m n 21\":\" !#*%+(%+$!#\",\"P b a 2\":\" !#$%#(,#*)#\",\"P n a 21\":\" !#$%+(,#*)+\",\"P n n 2\":\" !#$%#(,+*)+\",\"C m m 2\":\" !#$%# %#$!#()#*,#(,#*)#\",\"C m c 21\":\" !#$%+ %+$!#()#*,+(,+*)#\",\"C c c 2\":\" !#$%# %+$!+()#*,#(,+*)+\",\"A m m 2\":\" !#$%# %#$!# )+$,+ ,+$)+\",\"A b m 2\":\" !#$%# ,#$)# )+$,+ %+$!+\",\"A m a 2\":\" !#$%#(%#*!# )+$,+(,+*)+\",\"A b a 2\":\" !#$%#(,#*)# )+$,+(%+*!+\",\"F m m 2\":\" !#$%# %#$!# )+$,+ ,+$)+(!+*%+(%+*!+()#*,#(,#*)#\",\"F d d 2\":\" !#$%#345675 )+$,+3896:9(!+*%+;49<79()#*,#;85<:5\",\"I m m 2\":\" !#$%# %#$!#()+*,+(,+*)+\",\"I b a 2\":\" !#$%#(,#*)#()+*,+ %+$!+\",\"I m a 2\":\" !#$%#(%#*!#()+*,+ ,+$)+\",\"P 2/m 2/m 2/m\":\" !#$%#$!& %&$%& !& %#$!#\",\"P 2/n 2/n 2/n\":\" !#$%#$!& %&*,-()-(,+*)+\",\"P 2/c 2/c 2/m\":\" !#$%#$!- %-$%& !& %+$!+\",\"P 2/b 2/a 2/n\":\" !#$%#$!& %&*,&()&(,#*)#\",\"P 21/m 2/m 2/a\":\" !#*%#$!&(%&$%&(!& %#*!#\",\"P 2/n 21/n 2/a\":\" !#*%#*)- ,-$%&(!&(,+$)+\",\"P 2/m 2/n 21/a\":\" !#*%+*!- %&$%&(!-(%+$!#\",\"P 21/c 2/c 2/a\":\" !#*%#$!-(%-$%&(!& %+*!+\",\"P 21/b 21/a 2/m\":\" !#$%#*)&(,&$%& !&(,#*)#\",\"P 21/c 21/c 2/n\":\" !#*,#$)-(%-$%&()& ,+*!+\",\"P 2/b 21/c 21/m\":\" !#$%+$)- ,&$%& !- ,+$)#\",\"P 21/n 21/n 2/m\":\" !#$%#*)-(,-$%& !&(,+*)+\",\"P 21/m 21/m 2/n\":\" !#$%#*'&.,&*,&.'& %#$!#\",\"P 21/b 2/c 21/n\":\" !#*,+$!-(,&$%&()- %+*)#\",\"P 21/b 21/c 21/a\":\" !#*%+$)-(,&$%&(!- ,+*)#\",\"P 21/n 21/m 21/a\":\" !#0%/$'&.12$%&.!2 1#0'/\",\"C 2/m 2/c 21/m\":\" !#$%+$!- %&$%& !- %+$!#()#*,+*)-(,&*,&()-(,+*)#\",\"C 2/m 2/c 21/a\":\" !#$,+$)- %&$%& )- ,+$!#()#*%+*!-(,&*,&(!-(%+*)#\",\"C 2/m 2/m 2/m\":\" !#$%#$!& %&$%& !& %#$!#()#*,#*)&(,&*,&()&(,#*)#\",\"C 2/c 2/c 2/m\":\" !#$%#$!- %-$%& !& %+$!+()#*,#*)-(,-*,&()&(,+*)+\",\"C 2/m 2/m 2/a\":\" !#$,#$)& %&$%& )& ,#$!#()#*%#*!&(,&*,&(!&(%#*)#\",\"C 2/c 2/c 2/a\":\" !#*,#$!&(,&$,-(!- ,+*!+()#$%#*)& %&*%- )-(%+$)+\",\"F 2/m 2/m 2/m\":\" !#$%#$!& %&$%& !& %#$!# )+$,+$)- ,-$,- )- ,+$)+(!+*%+*!-(%-*%-(!-(%+*!+()#*,#*)&(,&*,&()&(,#*)#\",\"F 2/d 2/d 2/d\":\" !#$%#$!& %&64=37=345675 )+$,+$)- ,-68>3:>3896:9(!+*%+*!-(%-<4>;7>;49<79()#*,#*)&(,&<8=;:=;85<:5\",\"I 2/m 2/m 2/m\":\" !#$%#$!& %&$%& !& %#$!#()+*,+*)-(,-*,-()-(,+*)+\",\"I 2/b 2/a 2/m\":\" !#$%#*)&(,&$%& !&(,#*)#()+*,+$!- %-*,-()- %+$!+\",\"I 21/b 21/c 21/a\":\" !#*%+$)-(,&$%&(!- ,+*)#()+$,#*!& %-*,- )&(%#$!+\",\"I 21/m 21/m 21/a\":\" !#$,#$)& %&$%& )& ,#$!#()+*%+*!-(,-*,-(!-(%+*)+\",\"P 4\":\" !#$%#% #!$#\",\"P 41\":\" !#$%+% 5!$9\",\"P 42\":\" !#$%#% +!$+\",\"P 43\":\" !#$%+% 9!$5\",\"I 4\":\" !#$%#% #!$#()+*,+,(+)*+\",\"I 41\":\" !#*,+%(5)$9()+$%#, 9!*5\",\"P -4\":\" !#$%#!$&% &\",\"I -4\":\" !#$%#!$&% &()+*,+)*-,(-\",\"P 4/m\":\" !#$%#% #!$#$%& !&!$&% &\",\"P 42/m\":\" !#$%#% +!$+$%& !&!$-% -\",\"P 4/n\":\" !#$%#,(#)*#*,&()&!$&% &\",\"P 42/n\":\" !#$%#,(+)*+*,-()-!$&% &\",\"I 4/m\":\" !#$%#% #!$#$%& !&!$&% &()+*,+,(+)*+*,-()-)*-,(-\",\"I 41/a\":\" !#*,+%(5)$9$,=(!>!$&,(-()+$%#, 9!*5*%> )=)*-% &\",\"P 4 2 2\":\" !#$%#% #!$#$!& %&! &%$&\",\"P 4 21 2\":\" !#$%#,(#)*#*)&(,&! &%$&\",\"P 41 2 2\":\" !#$%+% 5!$9$!& %-! >%$=\",\"P 41 21 2\":\" !#$%+,(5)*9*)=(,>! &%$-\",\"P 42 2 2\":\" !#$%#% +!$+$!& %&! -%$-\",\"P 42 21 2\":\" !#$%#,(+)*+*)-(,-! &%$&\",\"P 43 2 2\":\" !#$%+% 9!$5$!& %-! =%$>\",\"P 43 21 2\":\" !#$%+,(9)*5*)>(,=! &%$-\",\"I 4 2 2\":\" !#$%#% #!$#$!& %&! &%$&()+*,+,(+)*+*)-(,-)(-,*-\",\"I 41 2 2\":\" !#*,+%(5)$9*!> ,=)(-%$&()+$%#, 9!*5$)=(%>! &,*-\",\"P 4 m m\":\" !#$%#% #!$# %#$!#%$#! #\",\"P 4 b m\":\" !#$%#% #!$#(,#*)#,*#)(#\",\"P 42 c m\":\" !#$%#% +!$+ %+$!+%$#! #\",\"P 42 n m\":\" !#$%#,(+)*+(,+*)+%$#! #\",\"P 4 c c\":\" !#$%#% #!$# %+$!+%$+! +\",\"P 4 n c\":\" !#$%#% #!$#(,+*)+,*+)(+\",\"P 42 m c\":\" !#$%#% +!$+ %#$!#%$+! +\",\"P 42 b c\":\" !#$%#% +!$+(,#*)#,*+)(+\",\"I 4 m m\":\" !#$%#% #!$# %#$!#%$#! #()+*,+,(+)*+(,+*)+,*+)(+\",\"I 4 c m\":\" !#$%#% #!$# %+$!+%$+! +()+*,+,(+)*+(,#*)#,*#)(#\",\"I 41 m d\":\" !#*,+%(5)$9 %#*)+%*5) 9()+$%#, 9!*5(,+$!#,$9!(5\",\"I 41 c d\":\" !#*,+%(5)$9 %+*)#%*9) 5()+$%#, 9!*5(,#$!+,$5!(9\",\"P -4 2 m\":\" !#$%#% &!$&$!& %&%$#! #\",\"P -4 2 c\":\" !#$%#% &!$&$!- %-%$+! +\",\n\"P -4 21 m\":\" !#$%#% &!$&*)&(,&,*#)(#\",\"P -4 21 c\":\" !#$%#% &!$&*)-(,-,*+)(+\",\"P -4 m 2\":\" !#$%#!$&% & %#$!#! &%$&\",\"P -4 c 2\":\" !#$%#% &!$& %+$!+! -%$-\",\"P -4 b 2\":\" !#$%#% &!$&(,#*)#)(&,*&\",\"P -4 n 2\":\" !#$%#% &!$&(,+*)+)(-,*-\",\"I -4 m 2\":\" !#$%#% &!$& %#$!#! &%$&()+*,+,(-)*-(,+*)+)(-,*-\",\"I -4 c 2\":\" !#$%#% &!$& %+$!+! -%$-()+*,+,(-)*-(,#*)#)(&,*&\",\"I -4 2 m\":\" !#$%#% &!$&$!& %&%$#! #()+*,+,(-)*-*)-(,-,*+)(+\",\"I -4 2 d\":\" !#$%#% &!$&*!>(%>,$9) 9()+*,+,(-)*-$)= ,=%*5!(5\",\"P 4/m 2/m 2/m\":\" !#$%#% #!$#$!& %&! &%$&$%& !&!$&% & %#$!#%$#! #\",\"P 4/m 2/c 2/c\":\" !#$%#% #!$#$!- %-! -%$-$%& !&!$&% & %+$!+%$+! +\",\"P 4/n 2/b 2/m\":\" !#$%#% #!$#$!& %&! &%$&*,&()&)*&,(&(,#*)#,*#)(#\",\"P 4/n 2/n 2/c\":\" !#$%#% #!$#$!& %&! &%$&*,-()-)*-,(-(,+*)+,*+)(+\",\"P 4/m 21/b 2/m\":\" !#$%#% #!$#*)&(,&)(&,*&$%& !&!$&% &(,#*)#,*#)(#\",\"P 4/m 21/n 2/c\":\" !#$%#% #!$#*)-(,-)(-,*-$%& !&!$&% &(,+*)+,*+)(+\",\"P 4/n 21/m 2/m\":\" !#$%#,(#)*#*)&(,&! &%$&*,&()&!$&% & %#$!#,*#)(#\",\"P 4/n 2/c 2/c\":\" !#$%#,(#)*#*)-(,-! -%$-*,&()&!$&% & %+$!+,*+)(+\",\"P 42/m 2/m 2/c\":\" !#$%#% +!$+$!& %&! -%$-$%& !&!$-% - %#$!#%$+! +\",\"P 42/m 2/c 2/m\":\" !#$%#% +!$+$!- %-! &%$&$%& !&!$-% - %+$!+%$#! #\",\"P 42/n 2/b 2/c\":\" !#$%#,(+)*+$!- %-)(&,*&*,-()-!$&% &(,#*)#%$+! +\",\"P 42/n 2/n 2/m\":\" !#$%#,(+)*+$!& %&)(-,*-*,-()-!$&% &(,+*)+%$#! #\",\"P 42/m 21/b 2/c\":\" !#$%#% +!$+*)&(,&)(-,*-$%& !&!$-% -(,#*)#,*+)(+\",\"P 42/m 21/n 2/m\":\" !#$%#,./'*/*'-.,-! &%$&$%& !&'*-,.-.,/*'/%$#! #\",\"P 42/n 21/m 2/c\":\" !#$%#,(+)*+*)-(,-! &%$&*,-()-!$&% & %#$!#,*+)(+\",\"P 42/n 21/c 2/m\":\" !#$%#,(+)*+*)&(,&! -%$-*,-()-!$&% & %+$!+,*#)(#\",\"I 4/m 2/m 2/m\":\" !#$%#% #!$#$!& %&! &%$&$%& !&!$&% & %#$!#%$#! #()+*,+,(+)*+*)-(,-)(-,*-*,-()-)*-,(-(,+*)+,*+)(+\",\"I 4/m 2/c 2/m\":\" !#$%#% #!$#$!- %-! -%$-$%& !&!$&% & %+$!+%$+! +()+*,+,(+)*+*)&(,&)(&,*&*,-()-)*-,(-(,#*)#,*#)(#\",\"I 41/a 2/m 2/d\":\" !#*,+%(5)$9*!> ,=)(-%$&$,=(!>!$&,(-(,+$!#,$9!(5()+$%#, 9!*5$)=(%>! &,*-*%> )=)*-% & %#*)+%*5) 9\",\"I 41/a 2/c 2/d\":\" !#*,+%(5)$9*!= ,>)(&%$-$,=(!>!$&,(-(,#$!+,$5!(9()+$%#, 9!*5$)>(%=! -,*&*%> )=)*-% & %+*)#%*9) 5\",\"P 3\":\" !#%?#@$#\",\"P 31\":\" !#%?A@$B\",\"P 32\":\" !#%?B@$A\",\"H 3\":\" !#%?#@$#CDAEFAGHAIJBKLBMNB\",\"R 3\":\" !## !!# \",\"P -3\":\" !#%?#@$#$%&!@&? &\",\"H -3\":\" !#%?#@$#$%&!@&? &OPQRSQTUQVWXYZX[]X]Y^W[^ZV^UR_PT_SO_\",\"R -3\":\" !## !!# $%&&$%%&$\",\"P 3 1 2\":\" !#%?#@$#%$&@!& ?&\",\"P 3 2 1\":\" !#%?#@$#! &?%&$@&\",\"P 31 1 2\":\" !#%?Q@$^%$_@!X ?&\",\"P 31 2 1\":\" !#%?A@$B! &?%_$@X\",\"P 32 1 2\":\" !#%?^@$Q%$X@!_ ?&\",\"P 32 2 1\":\" !#%?B@$A! &?%X$@_\",\"H 3 2\":\" !#%?#@$#! &?%&$@&OPQRSQTUQY]X[WXVZX]Y^W[^ZV^PO_SR_UT_\",\"R 3 2\":\" !## !!# %$&$&%&%$\",\"P 3 m 1\":\" !#%?#@$#%$#@!# ?#\",\"P 3 1 m\":\" !#%?#@$#! #?%#$@#\",\"P 3 c 1\":\" !#%?#@$#%$+@!+ ?+\",\"P 3 1 c\":\" !#%?#@$#! +?%+$@+\",\"H 3 m\":\" !#%?#@$#%$#@!# ?#OPQRSQTUQRUQTPQOSQ]Y^W[^ZV^WV^ZY^][^\",\"R 3 m\":\" !## !!# ! # #!#! \",\"H 3 c\":\" !#%?#@$#%$+@!+ ?+OPQRSQTUQRU`TP`OS`]Y^W[^ZV^WVaZYa][a\",\"R 3 c\":\" !## !!# '././'/'.\",\"P -3 1 2/m\":\" !#%?#@$#%$&@!& ?&$%&!@&? &! #?%#$@#\",\"P -3 1 2/c\":\" !#%?#@$#%$-@!- ?-$%&!@&? &! +?%+$@+\",\"P -3 2/m 1\":\" !#%?#@$#! &?%&$@&$%&!@&? &%$#@!# ?#\",\"P -3 2/c 1\":\" !#%?#@$#! -?%-$@-$%&!@&? &%$+@!+ ?+\",\"H -3 2/m\":\" !#%?#@$#! &?%&$@&$%&!@&? &%$#@!# ?#OPQRSQTUQY]X[WXVZXVWXYZX[]XRUQTPQOSQ]Y^W[^ZV^PO_SR_UT_UR_PT_SO_WV^ZY^][^\",\"R -3 2/m\":\" !## !!# %$&$&%&%$$%&&$%%&$! # #!#! \",\"H -3 2/c\":\" !#%?#@$#! -?%-$@-$%&!@&? &%$+@!+ ?+OPQRSQTUQY]b[WbVZbVWXYZX[]XRU`TP`OS`]Y^W[^ZV^POcSRcUTcUR_PT_SO_WVaZYa][a\",\"R -3 2/c\":\" !## !!# 102021210$%&&$%%&$'././'/'.\",\"P 6\":\" !#%?#@$#$%#!@#? #\",\"P 61\":\" !#%?A@$B$%/!@d? e\",\"P 65\":\" !#%?B@$A$%/!@e? d\",\"P 62\":\" !#%?^@$Q$%#!@^? Q\",\"P 64\":\" !#%?Q@$^$%#!@Q? ^\",\"P 63\":\" !#%?#@$#$%+!@+? +\",\"P -6\":\" !#%?#@$# !&%?&@$&\",\"P 6/m\":\" !#%?#@$#$%#!@#? #$%&!@&? & !&%?&@$&\",\"P 63/m\":\" !#%?#@$#$%+!@+? +$%&!@&? & !-%?-@$-\",\"P 6 2 2\":\" !#%?#@$#$%#!@#? #! &?%&$@&%$&@!& ?&\",\"P 61 2 2\":\" !#%?Q@$^$%+!@`? a! X?%&$@_%$b@!- ?c\",\"P 65 2 2\":\" !#%?^@$Q$%+!@a? `! _?%&$@X%$c@!- ?b\",\"P 62 2 2\":\" !#%?^@$Q$%#!@^? Q! _?%&$@X%$_@!& ?X\",\"P 64 2 2\":\" !#%?Q@$^$%#!@Q? ^! X?%&$@_%$X@!& ?_\",\"P 63 2 2\":\" !#%?#@$#$%+!@+? +! &?%&$@&%$-@!- ?-\",\"P 6 m m\":\" !#%?#@$#$%#!@#? #%$#@!# ?#! #?%#$@#\",\"P 6 c c\":\" !#%?#@$#$%#!@#? #%$+@!+ ?+! +?%+$@+\",\"P 63 c m\":\" !#%?#@$#$%+!@+? +%$+@!+ ?+! #?%#$@#\",\"P 63 m c\":\" !#%?#@$#$%+!@+? +%$#@!# ?#! +?%+$@+\",\"P -6 m 2\":\" !#%?#@$# !&%?&@$&%$#@!# ?#%$&@!& ?&\",\"P -6 c 2\":\" !#%?#@$# !-%?-@$-%$+@!+ ?+%$&@!& ?&\",\"P -6 2 m\":\" !#%?#@$# !&%?&@$&! &?%&$@&! #?%#$@#\",\"P -6 2 c\":\" !#%?#@$# !-%?-@$-! &?%&$@&! +?%+$@+\",\"P 6/m 2/m 2/m\":\" !#%?#@$#$%#!@#? #! &?%&$@&%$&@!& ?&$%&!@&? & !&@$&%?&%$#@!# ?#! #?%#$@#\",\"P 6/m 2/c 2/c\":\" !#%?#@$#$%#!@#? #! -?%-$@-%$-@!- ?-$%&!@&? & !&@$&%?&%$+@!+ ?+! +?%+$@+\",\"P 63/m 2/c 2/m\":\" !#%?#@$#$%+!@+? +! -?%-$@-%$&@!& ?&$%&!@&? & !-@$-%?-%$+@!+ ?+! #?%#$@#\",\"P 63/m 2/m 2/c\":\" !#%?#@$#$%+!@+? +! &?%&$@&%$-@!- ?-$%&!@&? & !-@$-%?-%$#@!# ?#! +?%+$@+\",\"P 2 3\":\" !#$%#$!& %&# !#$%&$!& %!# %#$!&$%& \",\"F 2 3\":\" !#$%#$!& %&# !#$%&$!& %!# %#$!&$%& )+$,+$)- ,-#()#*,&*)&(,!+(%+*!-*%-((!+*%+*!-(%-+ )+$,-$)- ,)#(,#*)&*,&(()#*,#*)&(,&+(!+*%-*!-(%)+ ,+$)-$,- \",\"I 2 3\":\" !#$%#$!& %&# !#$%&$!& %!# %#$!&$%& ()+*,+*)-(,-+()+*,-*)-(,)+(,+*)-*,-(\",\"P 21 3\":\" !#*%+$)-(,&# !+*%-$)&(,!# %+*)-$,&(\",\"I 21 3\":\" !#*%+$)-(,&# !+*%-$)&(,!# %+*)-$,&(()+$,#*!& %-+()#$,&*!- %)+(,#$!&*%- \",\"P 2/m -3\":\" !#$%#$!& %&# !#$%&$!& %!# %#$!&$%& $%& !& %#$!#&$%& !# %#$!%&$!& %# !#$\",\"P 2/n -3\":\" !#$%#$!& %&# !#$%&$!& %!# %#$!&$%& *,-()-(,+*)+-*,-()+(,+*),-*)-(,+()+*\",\"F 2/m -3\":\" !#$%#$!& %&# !#$%&$!& %!# %#$!&$%& $%& !& %#$!#&$%& !# %#$!%&$!& %# !#$ )+$,+$)- ,-#()#*,&*)&(,!+(%+*!-*%-($,- )- ,+$)+&*,&()#(,#*)%-*!-(%+(!+*(!+*%+*!-(%-+ )+$,-$)- ,)#(,#*)&*,&(*%-(!-(%+*!+-$,- )+ ,+$),&*)&(,#()#*()#*,#*)&(,&+(!+*%-*!-(%)+ ,+$)-$,- *,&()&(,#*)#-*%-(!+(%+*!,-$)- ,+ )+$\",\"F 2/d -3\":\" !#$%#$!& %&# !#$%&$!& %!# %#$!&$%& 64=37=345675=64=375345674=67=3453756 )+$,+$)- ,-#()#*,&*)&(,!+(%+*!-*%-(68>3:>3896:9=<8=;:5;85<:4><7>;49;79<(!+*%+*!-(%-+ )+$,-$)- ,)#(,#*)&*,&(<4>;7>;49<79>68>3:93896:8=<:=;85;:5<()#*,#*)&(,&+(!+*%-*!-(%)+ ,+$)-$,- <8=;:=;8f<:f><4>;79;49<78>6:>3893:96\",\"I 2/m -3\":\" !#$%#$!& %&# !#$%&$!& %!# %#$!&$%& $%& !& %#$!#&$%& !# %#$!%&$!& %# !#$()+*,+*)-(,-+()+*,-*)-(,)+(,+*)-*,-(*,-()-(,+*)+-*,-()+(,+*),-*)-(,+()+*\",\"P 21/a -3\":\" !#*%+$)-(,&# !+*%-$)&(,!# %+*)-$,&($%&(!- ,+*)#&$%-(!+ ,#*)%&$!-(,+ )#*\",\"I 21/a -3\":\" !#*%+$)-(,&# !+*%-$)&(,!# %+*)-$,&($%&(!- ,+*)#&$%-(!+ ,#*)%&$!-(,+ )#*()+$,#*g& %-+()#$,&*!- %)+(,#$!&*%- *,- )&(%#$!+-*,& )#(%+$!,-*)& %#(!+$\",\"P 4 3 2\":\" !#$%#$!& %&# !#$%&$!& %!# %#$!&$%& ! &%$&!$#% # #%$#!$&% &!#!$#% &! &%$\",\"P 42 3 2\":\" !#$%#$!& %&# !#$%&$!& %!# %#$!&$%& )(-,*-)*+,(+(+,*+)*-,(-)+)*+,(-)(-,*\",\"F 4 3 2\":\" !#$%#$!& %&# !#$%&$!& %!# %#$!&$%& ! &%$&!$#% # #%$#!$&% &!#!$#% &! &%$ )+$,+$)- ,-#()#*,&*)&(,!+(%+*!-*%-(!(-%*-!*+%(+ +,$+)$-, -)#)*#,(&)(&,*(!+*%+*!-(%-+ )+$,-$)- ,)#(,#*)&*,&() -,$-)$+, +(#,*#)*&,(&)+!*+%(-!(-%*()#*,#*)&(,&+(!+*%-*!-(%)+ ,+$)-$,- )(&,*&)*#,(#(+%*+!*-%(-!+)$+, -) -,$\",\"F 41 3 2\":\" !#$,+*)&(%-# !+$,&*)-(%!# ,+$)&*%-(:3>46=7<98;5;58<976=43>:97<58;>:3=46 )+$%#*!-(,&#()+*%&$!- ,!+(,#*)-$%& :;=4<>765839;94<5:6>83=79:6543>7;=8<(!+*,#$)- %&+ )#$%-*!&(,)#(%+*!&$,- 73=86>:<54;935469:<=8;>7576983=:;>4<()#*%+$!& ,-+(!#*,-$)& %)+ %#$!-*,&(7;>8<=:69435398657<>4;=:5:<94;=73>86\",\"I 4 3 2\":\" !#$%#$!& %&# !#$%&$!& %!# %#$!&$%& ! &%$&!$#% # #%$#!$&% &!#!$#% &! &%$()+*,+*)-(,-+()+*,-*)-(,)+(,+*)-*,-()(-,*-)*+,(+(+,*+)*-,(-)+)*+,(-)(-,*\",\"P 43 3 2\":\" !#*%+$)-(,&# !+*%-$)&(,!# %+*)-$,&(7;>46=:<5839398<5:6=4;>75:<983>7;=46\",\"P 41 3 2\":\" !#*%+$)-(,&# !+*%-$)&(,!# %+*)-$,&(:3=8<>7694;5;54697<>83=:97654;=:3>8<\",\"I 41 3 2\":\" !#*%+$)-(,&# !+*%-$)&(,!# %+*)-$,&(:3=8<>7694;5;54697<>83=:97654;=:3>8<()+$,#*!& %-+()#$,&*!- %)+(,#$!&*%- 7;>46=:<5839398<5:6=4;>75:<983>7;=46\",\"P -4 3 m\":\" !#$%#$!& %&# !#$%&$!& %!# %#$!&$%& ! #%$#!$&% & #!$#%$&! &%#! #%$&!$&% \",\"F -4 3 m\":\" !#$%#$!& %&# !#$%&$!& %!# %#$!&$%& ! #%$#!$&% & #!$#%$&! &%#! #%$&!$&% )+$,+$)- ,-#()#*,&*)&(,!+(%+*!-*%-(!(+%*+!*-%(- +)$+,$-) -,#)(#,*&)*&,((!+*%+*!-(%-+ )+$,-$)- ,)#(,#*)&*,&() +,$+)$-, -(#)*#,*&)(&,+!(+%*-!*-%(()#*,#*)&(,&+(!+*%-*!-(%)+ ,+$)-$,- )(#,*#)*&,(&(+!*+%*-!(-%+) +,$-)$-, \",\"I -4 3 m\":\" !#$%#$!& %&# !#$%&$!& %!# %#$!&$%& ! #%$#!$&% & #!$#%$&! &%#! #%$&!$&% ()+*,+*)-(,-+()+*,-*)-(,)+(,+*)-*,-()(+,*+)*-,(-(+)*+,*-)(-,+)(+,*-)*-,(\",\"P -4 3 n\":\" !#$%#$!& %&# !#$%&$!& %!# %#$!&$%& )(+,*+)*-,(-(+)*+,*-)(-,+)(+,*-)*-,(\",\"F -4 3 c\":\" !#$%#$!& %&# !#$%&$!& %!# %#$!&$%& )(+,*+)*-,(-(+)*+,*-)(-,+)(+,*-)*-,( )+$,+$)- ,-#()#*,&*)&(,!+(%+*!-*%-() #,$#)$&, &(#!*#%*&!(&%+! +%$-!$-% (!+*%+*!-(%-+ )+$,-$)- ,)#(,#*)&*,&(!(#%*#!*&%(& +!$+%$-! -%#) #,$&)$&, ()#*,#*)&(,&+(!+*%-*!-(%)+ ,+$)-$,- ! +%$+!$-% - #)$#,$&) &,#!(#%*&!*&%(\",\"I -4 3 d\":\" !#*%+$)-(,&# !+*%-$)&(,!# %+*)-$,&(7354<9:6>8;=357<946>:;=857394<>:6=8;()+$,#*!& %-+()#$,&*!- %)+(,#$!&*%- :;98657<=43>;9:658<=73>49:;586=7<>43\",\"P 4/m -3 2/m\":\" !#$%#$!& %&# !#$%&$!& %!# %#$!&$%& ! &%$&!$#% # #%$#!$&% &!#!$#% &! &%$$%& !& %#$!#&$%& !# %#$!%&$!& %# !#$%$#! #% &!$&$&! &% #!$#%&% &!$#%$#! \",\"P 4/n -3 2/n\":\" !#$%#$!& %&# !#$%&$!& %!# %#$!&$%& ! &%$&!$#% # #%$#!$&% &!#!$#% &! &%$*,-()-(,+*)+-*,-()+(,+*),-*)-(,+()+*,*+)(+,(-)*-*-)(-,(+)*+,-,(-)*+,*+)(\",\"P 42/m -3 2/n\":\" !#$%#$!& %&# !#$%&$!& %!# %#$!&$%& )(-,*-)*+,(+(+,*+)*-,(-)+)*+,(-)(-,*$%& !& %#$!#&$%& !# %#$!%&$!& %# !#$,*+)(+,(-)*-*-)(-,(+)*+,-,(-)*+,*+)(\",\"P 42/n -3 2/m\":\" !#$%#$!& %&# !#$%&$!& %!# %#$!&$%& )(-,*-)*+,(+(+,*+)*-,(-)+)*+,(-)(-,**,-()-(,+*)+-*,-()+(,+*),-*)-(,+()+*%$#! #% &!$&$&! &% #!$#%&% &!$#%$#! \",\"F 4/m -3 2/m\":\" !#$%#$!& %&# !#$%&$!& %!# %#$!&$%& ! &%$&!$#% # #%$#!$&% &!#!$#% &! &%$$%& !& %#$!#&$%& !# %#$!%&$!& %# !#$%$#! #% &!$&$&! &% #!$#%&% &!$#%$#! )+$,+$)- ,-#()#*,&*)&(,!+(%+*!-*%-(!(-%*-!*+%(+ +,$+)$-, -)#)*#,(&)(&,*$,- )- ,+$)+&*,&()#(,#*)%-*!-(%+(!+*%*+!(+%(-!*-$-) -, +)$+,&,(&)*#,*#)((!+*%+*!-(%-+ )+$,-$)- ,)#(,#*)&*,&() -,$-)$+, +(#,*#)*&,(&)+!*+%(-!(-%**%-(!-(%+*!+-$,- )+ ,+$),&*)&(,#()#*,$+) +, -)$-*&)(&,(#)*#,-%(-!*+%*+!(()#*,#*)&(,&+(!+*%-*!-(%)+ ,+$)-$,- )(&,*&)*#,(#(+%*+!*-%(-!+)$+, -) -,$*,&()&(,#*)#-*%-(!+(%+*!,-$)- ,+ )+$,*#)(#,(&)*&*-!(-%(+!*+%-, -)$+,$+) \",\"F 4/m -3 2/c\":\" !#$%#$!& %&# !#$%&$!& %!# %#$!&$%& )(-,*-)*+,(+(+,*+)*-,(-)+)*+,(-)(-,*$%& !& %#$!#&$%& !# %#$!%&$!& %# !#$,*+)(+,(-)*-*-)(-,(+)*+,-,(-)*+,*+)( )+$,+$)- ,-#()#*,&*)&(,!+(%+*!-*%-() &,$&)$#, #(#%*#!*&%(&!+!$+% -! -%$$,- )- ,+$)+&*,&()#(,#*)%-*!-(%+(!+*,$#) #, &)$&*&!(&%(#!*#%-% -!$+%$+! (!+*%+*!-(%-+ )+$,-$)- ,)#(,#*)&*,&(!(&%*&!*#%(# +%$+!$-% -!#)$#, &) &,$*%-(!-(%+*!+-$,- )+ ,+$),&*)&(,#()#*%*#!(#%(&!*&$-! -% +!$+%&, &)$#,$#) ()#*,#*)&(,&+(!+*%-*!-(%)+ ,+$)-$,- ! -%$-!$+% + #,$#)$&, &)#!*#%(&!(&%**,&()&(,#*)#-*%-(!+(%+*!,-$)- ,+ )+$%$+! +% -!$-$&) &, #)$#,&%(&!*#%*#!(\",\"F 41/d -3 2/m\":\" !#$,+*)&(%-# !+$,&*)-(%!# ,+$)&*%-(:3>46=7<98;5;58<976=43>:97<58;>:3=4664=3:>;85<79=64>3:5;89<74=6:>385;79<,$+! #%(-)*&*&)(-% #!$+,-%(&)*+,$#! )+$%#*!-(,&#()+*%&$!- ,!+(,#*)-$%& :;=4<>765839;94<5:6>83=79:6543>7;=8<68>37=;49<:5=<8>;753496:4><:=;893756,*#!(+% &)$-*-!(&, +)$#%-, &!$+%*#)((!+*,#$)- %&+ )#$%-*!&(,)#(%+*!&$,- 73=86>:<54;935469:<=8;>7576983=:;>4<<4>;:=389675>68=379;45<:8=<7>;453:96%$#) +,(&!*-$&! -,(#)*+%&% -)$#,*+!(()#*%+$!& ,-+(!#*,-$)& %)+ %#$!-*,&(7;>8<=:69435398657<>4;=:5:<94;=73>86<8=;7>3456:9><4=;:9385678>67=349;:5<%*+)(#, -!$&$-) &%(+!*#,&,(-!*#%$+) \",\"F 41/d -3 2/c\":\" !#$,+*)&(%-# !+$,&*)-(%!# ,+$)&*%-(:3>46=7<98;5;58<976=43>:97<58;>:3=46<8>;7=3496:5><8=;793456:8><7=;493:56%*#)(+, &!$-$-! &,(+)*#%&, -!$#%*+)( )+$%#*!-(,&#()+*%&$!- ,!+(,#*)-$%& :;=4<>765839;94<5:6>83=79:6543>7;=8<<4=;:>385679>64=3:9;85<78=67>345;:9<%$+) #,(-!*&$&) -%(#!*+,&%(-)*#,$+! (!+*,#$)- %&+ )#$%-*!&(,)#(%+*!&$,- 73=86>:<54;935469:<=8;>7576983=:;>4<68=37>;45<:9=<4>;:5389674>6:=389;75<,*+!(#% -)$&*-)(&% +!$#,-,(&!*+%$#) ()#*%+$!& ,-+(!#*,-$)& %)+ %#$!-*,&(7;>8<=:69435398657<>4;=:5:<94;=73>8664>3:=;89<75=68>375;49<:4=<:>;853796,$#! +%(&)*-*&!(-, #)$+%-% &)$+,*#!(\",\"I 4/m -3 2/m\":\" !#$%#$!& %&# !#$%&$!& %!# %#$!&$%& ! &%$&!$#% # #%$#!$&% &!#!$#% &! &%$$%& !& %#$!#&$%& !# %#$!%&$!& %# !#$%$#! #% &!$&$&! &% #!$#%&% &!$#%$#! ()+*,+*)-(,-+()+*,-*)-(,)+(,+*)-*,-()(-,*-)*+,(+(+,*+)*-,(-)+)*+,(-)(-,**,-()-(,+*)+-*,-()+(,+*),-*)-(,+()+*,*+)(+,(-)*-*-)(-,(+)*+,-,(-)*+,*+)(\",\"I 41/a -3 2/d\":\" !#*%+$)-(,&# !+*%-$)&(,!# %+*)-$,&(:3=8<>7694;5;54697<>83=:97654;=:3>8<$%&(!- ,+*)#&$%-(!+ ,#*)%&$!-(,+ )#*4<97358;=:6>6>:;=8357<94=8;>:694<573()+$,#*!& %-+()#$,&*!- %)+(,#$!&*%- 7;>46=:<5839398<5:6=4;>75:<983>7;=46*,- )&(%#$!+-*,& )#(%+$!,-*)& %#(!+$865:;943>7<=<=73>4;9:658>43=7<5869:;\",\"P 1 1 2\":\" !#$%#\",\"P 1 1 21\":\" !#$%+\",\"B 1 1 2\":\" !#$%#(g+*%+\",\"A 1 2 1\":\" !#$!& )+$)-\",\"C 1 21 1\":\" !#$)&()#*!&\",\"I 1 2 1\":\" !#$!&.'/0'2\",\"I 1 21 1\":\" !#$)&.'/0!-\",\"P 1 1 m\":\" !# !&\",\"P 1 1 b\":\" !# )&\",\"B 1 1 m\":\" !# !&(!+(!-\",\"B 1 1 b\":\" !# )&(!+()-\",\"P 1 1 2/m\":\" !# !&$%#$%&\",\"P 1 1 21/m\":\" !#$%+$%& !-\",\"B 1 1 2/m\":\" !# !&$%#$%&(!+(!-*%+*%-\",\"P 1 1 2/b\":\" !#$,#$%& )&\",\"P 1 1 21/b\":\" !#$%&$,+ )-\",\"B 1 1 2/b\":\" !#$,#$%& )&(!+*,+*%-()-\",\"P 21 2 2\":\" !#$!&(%&*%#\",\"P 2 21 2\":\" !# ,&$)&$%#\",\"P 21 21 2 (a)\":\" !#*,#.%&$'&\",\"P 21 2 21\":\" !#$!&(%-*%+\",\"P 2 21 21\":\" !# %&$)-$,+\",\"C 2 2 21a)\":\" !#*%+(,&$)-()#$,+ %&*!-\",\"C 2 2 2a\":\" !#*,#.%&$'&()#$%# ,&*!&\",\"F 2 2 2a\":\" !#*,#.%&$'& '/*%/.12$!2.!/$,/ %20'2.'#$%# 1&0!&\",\"I 2 2 2a\":\" !#*,#.%&$'&()+$%+*!- ,-\",\"P 21/m 21/m 2/n a\":\" !#*,#$)&(%&$%&.'& ,#*!#\",\"P 42 21 2a\":\" !#*,#%.+'$+$'&.%&! -,*-\",\"I 2 3a\":\" !#*,#.%&$'&!# ,- '&$%/$# !-*!/$%&.%()+$%+ ,-*!-)+(%&(!-*,#*+()&$)#*,- ,\"},ov=function(t){this.name=t||\"\",this.partList=[]},av={type:{}};av.type.get=function(){return\"Assembly\"},ov.prototype.addPart=function(t,e){var i=new sv(t,e);return this.partList.push(i),i},ov.prototype.getCount=function(t,e){var i=0;return this.partList.forEach(function(r){i+=r[e](t)}),i},ov.prototype.getAtomCount=function(t){return this.getCount(t,\"getAtomCount\")},ov.prototype.getResidueCount=function(t){return this.getCount(t,\"getResidueCount\")},ov.prototype.getInstanceCount=function(){var t=0;return this.partList.forEach(function(e){t+=e.matrixList.length}),t},ov.prototype.isIdentity=function(t){if(1!==this.partList.length)return!1;var e=this.partList[0];if(1!==e.matrixList.length)return!1;var i=new p;if(!i.equals(e.matrixList[0]))return!1;var r=[];return t.eachChain(function(t){r.push(t.chainname)}),r=rr(r),e.chainList.length===r.length},ov.prototype.getBoundingBox=function(t){var e=new lt;return this.partList.forEach(function(i){var r=i.getBoundingBox(t);e.expandByPoint(r.min),e.expandByPoint(r.max)}),e},ov.prototype.getSelection=function(){var t=[];return this.partList.forEach(function(e){t=t.concat(e.chainList)}),co(t)},Object.defineProperties(ov.prototype,av);var sv=function(t,e){this.matrixList=t||[],this.chainList=e||[]},cv={type:{}};cv.type.get=function(){return\"AssemblyPart\"},sv.prototype.getCount=function(t,e){var i=0,r=this.chainList;return t.eachChain(function(t){(0===r.length||r.includes(t.chainname))&&(i+=t[e])}),this.matrixList.length*i},sv.prototype.getAtomCount=function(t){return this.getCount(t,\"atomCount\")},sv.prototype.getResidueCount=function(t){return this.getCount(t,\"residueCount\")},sv.prototype.getBoundingBox=function(t){var e=new lt,i=new lt,r=this.getSelection(),n=t.getBoundingBox(r);return this.matrixList.forEach(function(t){i.copy(n).applyMatrix4(t),e.expandByPoint(i.min),e.expandByPoint(i.max)}),e},sv.prototype.getSelection=function(){return co(this.chainList)},sv.prototype.getView=function(t){var e=this.getSelection();return e?t.getView(e):t},sv.prototype.getInstanceList=function(){for(var t=this,e=[],i=0,r=this.matrixList.length;i=t.residueCount)){a.index=o+l,s.index=o+l+h,c.index=a.traceAtomIndex,u.index=s.traceAtomIndex;var d=c.distanceTo(u);if(Math.abs(d-i[h-2])>r)return!1}return!0},i=function(t,i){var r=[5.45,5.18,6.37],n=2.1;return e(t,i,r,n)},r=function(t,i){var r=[6.1,10.4,13],n=1.42;return e(t,i,r,n)},n=function(t){for(var e=t.residueStore,n=t.residueIndexStart,o=0,a=t.residueCount;o1&&a.bending[u]=2?t(h,e[h],a):i[h]=2;else if(1===i[h]&&c&&c!=h){var d=[h];r[h]=1,n.push(d);for(var f=o.length-1;f>=0;--f){var p=o[f];if(p===h)break;d.push(p),r[p]=1}}}i[a]=2,o.pop()}for(var e=this.getBondGraph(),i=new Int8Array(this.atomCount),r=new Int8Array(this.atomCount),n=[],o=[],a=0;a1){for(e=0;e1){for(e=0;e0){var e=this.residueStore.atomOffset[this.residueIndex];return t.includes(this.index-e)}return!1},isPolymer:function(){if(this.structure.entityList.length>0)return this.entity.isPolymer();var t=this.residueType.moleculeType;return t===vg||t===yg||t===bg},isSidechain:function(){return this.isPolymer()&&!this.isBackbone()},isCg:function(){var t=this.residueType.backboneType;return t===Mg||t===Pg||t===Cg},isHetero:function(){return 1===this.residueType.hetero},isProtein:function(){return this.residueType.moleculeType===vg},isNucleic:function(){var t=this.residueType.moleculeType;return t===yg||t===bg},isRna:function(){return this.residueType.moleculeType===yg},isDna:function(){return this.residueType.moleculeType===bg},isWater:function(){return this.residueType.moleculeType===mg},isIon:function(){return this.residueType.moleculeType===gg},isSaccharide:function(){return this.residueType.moleculeType===xg},isRing:function(){var t=this.residueType.getRings().flags;return 1===t[this.index-this.residueAtomOffset]},distanceTo:function(t){var e=this.atomStore,i=t.atomStore,r=this.index,n=t.index,o=e.x[r]-i.x[n],a=e.y[r]-i.y[n],s=e.z[r]-i.z[n],c=o*o+a*a+s*s;return Math.sqrt(c)},connectedTo:function(t){var e=this.atomStore,i=t.atomStore,r=this.index,n=t.index;if(e.altloc&&i.altloc){var o=e.altloc[r],a=i.altloc[n];if(0!==o&&0!==a&&32!==o&&32!==a&&o!==a)return!1}var s=e.x[r]-i.x[n],c=e.y[r]-i.y[n],u=e.z[r]-i.z[n],l=s*s+c*c+u*u;if(l<64&&this.isCg())return!0;if(isNaN(l))return!1;var h=this.covalent+t.covalent,d=h+.3,f=h-.5;return lf*f},positionFromArray:function(t,e){return void 0===e&&(e=0),this.x=t[e+0],this.y=t[e+1],this.z=t[e+2],this},positionToArray:function(t,e){void 0===t&&(t=[]),void 0===e&&(e=0);var i=this.index,r=this.atomStore;return t[e+0]=r.x[i],t[e+1]=r.y[i],t[e+2]=r.z[i],t},positionToVector3:function(t){return void 0===t&&(t=new g),t.x=this.x,t.y=this.y,t.z=this.z,t},positionFromVector3:function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this},getResidueBonds:function(t){var e,i,r,n,o=this.residueAtomOffset,a=this.index-this.residueAtomOffset,s=this.residueType.getBonds(),c=s.atomIndices1,u=s.atomIndices2;for(t||(n=[]),e=c.indexOf(a);e!==-1;){if(r=u[e]+o,t)return r;n.push(r),e=c.indexOf(a,e+1)}for(i=u.indexOf(a);i!==-1;){if(r=c[i]+o,t)return r;n.push(r),i=u.indexOf(a,i+1)}return n},qualifiedName:function(t){var e=\"\";return this.resname&&!t&&(e+=\"[\"+this.resname+\"]\"),void 0!==this.resno&&(e+=this.resno),this.inscode&&(e+=\"^\"+this.inscode),this.chainname&&(e+=\":\"+this.chainname),this.atomname&&(e+=\".\"+this.atomname),this.altloc&&(e+=\"%\"+this.altloc),this.structure.modelStore.count>1&&(e+=\"/\"+this.modelIndex),e},clone:function(){return new this.constructor(this.structure,this.index)},toObject:function(){return{index:this.index,residueIndex:this.residueIndex,atomno:this.atomno,resname:this.resname,x:this.x,y:this.y,z:this.z,element:this.element,chainname:this.chainname,resno:this.resno,serial:this.serial,vdw:this.vdw,covalent:this.covalent,hetero:this.hetero,bfactor:this.bfactor,altloc:this.altloc,atomname:this.atomname,modelindex:this.modelindex}}},Po.prototype={constructor:Po,type:\"ResidueProxy\",structure:void 0,chainStore:void 0,residueStore:void 0,atomStore:void 0,index:void 0,get entity(){return this.structure.entityList[this.entityIndex]},get entityIndex(){return this.chainStore.entityIndex[this.chainIndex]},get chain(){return this.structure.getChainProxy(this.chainIndex)},get chainIndex(){return this.residueStore.chainIndex[this.index]},set chainIndex(t){this.residueStore.chainIndex[this.index]=t},get atomOffset(){return this.residueStore.atomOffset[this.index]},set atomOffset(t){this.residueStore.atomOffset[this.index]=t},get atomCount(){return this.residueStore.atomCount[this.index]},set atomCount(t){this.residueStore.atomCount[this.index]=t},get atomEnd(){return this.atomOffset+this.atomCount-1},get modelIndex(){return this.chainStore.modelIndex[this.chainIndex]},get chainname(){return this.chainStore.getChainname(this.chainIndex)},get chainid(){return this.chainStore.getChainid(this.chainIndex)},get resno(){return this.residueStore.resno[this.index]},set resno(t){this.residueStore.resno[this.index]=t},get sstruc(){return this.residueStore.getSstruc(this.index)},set sstruc(t){this.residueStore.setSstruc(this.index,t)},get inscode(){return this.residueStore.getInscode(this.index)},set inscode(t){this.residueStore.getInscode(this.index,t)},get residueType(){return this.residueMap.get(this.residueStore.residueTypeId[this.index])},get resname(){return this.residueType.resname},get hetero(){return this.residueType.hetero},get moleculeType(){return this.residueType.moleculeType},get backboneType(){return this.residueType.backboneType},get backboneStartType(){return this.residueType.backboneStartType},get backboneEndType(){return this.residueType.backboneEndType},get traceAtomIndex(){return this.residueType.traceAtomIndex+this.atomOffset},get direction1AtomIndex(){return this.residueType.direction1AtomIndex+this.atomOffset},get direction2AtomIndex(){return this.residueType.direction2AtomIndex+this.atomOffset},get backboneStartAtomIndex(){return this.residueType.backboneStartAtomIndex+this.atomOffset},get backboneEndAtomIndex(){return this.residueType.backboneEndAtomIndex+this.atomOffset},get rungEndAtomIndex(){return this.residueType.rungEndAtomIndex+this.atomOffset},eachAtom:function(t,e){var i,r=this.atomCount,n=this.atomOffset,o=this.structure._ap,a=n+r;if(e&&e.atomOnlyTest){var s=e.atomOnlyTest;for(i=n;i0)return this.entity.isPolymer();var t=this.residueType.moleculeType;return t===vg||t===yg||t===bg},isHetero:function(){return 1===this.residueType.hetero},isWater:function(){return this.residueType.moleculeType===mg},isIon:function(){return this.residueType.moleculeType===gg},isSaccharide:function(){return this.residueType.moleculeType===xg},getAtomType:function(t){return this.atomMap.get(this.atomStore.atomTypeId[t])},getResname1:function(){return jg[this.resname.toUpperCase()]||\"X\"},getBackboneType:function(t){switch(t){case-1:return this.residueType.backboneStartType;case 1:return this.residueType.backboneEndType;default:return this.residueType.backboneType}},getAtomIndexByName:function(t){var e=this.residueType.getAtomIndexByName(t);return void 0!==e&&(e+=this.atomOffset),e},getAtomByName:function(t){return this.residueType.getAtomByName(t)},hasAtomWithName:function(t){return this.residueType.hasAtomWithName(t)},getAtomnameList:function(){var t=this;console.warn(\"getAtomnameList - might be expensive\");for(var e=this.atomCount,i=this.atomOffset,r=new Array(e),n=0;n=e){if(void 0===t&&(t=this.structure.getResidueProxy()),t.index=i,t.connectedTo(this))return t}else if(i===e-1){void 0===t&&(t=this.structure.getResidueProxy());var r=this.chainStore.residueCount[this.chainIndex];if(t.index=e+r-1,t.connectedTo(this))return t}},getBonds:function(){return this.residueType.getBonds(this)},getRings:function(){return this.residueType.getRings()},qualifiedName:function(t){var e=\"\";return this.resname&&!t&&(e+=\"[\"+this.resname+\"]\"),void 0!==this.resno&&(e+=this.resno),this.inscode&&(e+=\"^\"+this.inscode),this.chain&&(e+=\":\"+this.chainname),e+=\"/\"+this.modelIndex},clone:function(){return new this.constructor(this.structure,this.index)},toObject:function(){return{index:this.index,chainIndex:this.chainIndex,atomOffset:this.atomOffset,atomCount:this.atomCount,resno:this.resno,resname:this.resname,sstruc:this.sstruc}}},Co.prototype={constructor:Co,type:\"Polymer\",structure:void 0,residueStore:void 0,atomStore:void 0,residueIndexStart:void 0,residueIndexEnd:void 0,residueCount:void 0,get chainIndex(){return this.residueStore.chainIndex[this.residueIndexStart]},get modelIndex(){return this.chainStore.modelIndex[this.chainIndex]},get chainname(){return this.chainStore.getChainname(this.chainIndex)},isProtein:function(){return this.__residueProxy.index=this.residueIndexStart,this.__residueProxy.isProtein()},isCg:function(){return this.__residueProxy.index=this.residueIndexStart,this.__residueProxy.isCg()},isNucleic:function(){return this.__residueProxy.index=this.residueIndexStart,this.__residueProxy.isNucleic()},getMoleculeType:function(){return this.__residueProxy.index=this.residueIndexStart,this.__residueProxy.moleculeType},getBackboneType:function(t){return this.__residueProxy.index=this.residueIndexStart,this.__residueProxy.getBackboneType(t)},getAtomIndexByType:function(t,e){this.isCyclic?t===-1?t=this.residueCount-1:t===this.residueCount&&(t=0):(t!==-1||this.isPrevConnected||(t+=1),t!==this.residueCount||this.isNextNextConnected||(t-=1));var i=this.__residueProxy;i.index=this.residueIndexStart+t;var r;switch(e){case\"trace\":r=i.traceAtomIndex;break;case\"direction1\":r=i.direction1AtomIndex;break;case\"direction2\":r=i.direction2AtomIndex;break;default:var n=i.getAtomByName(e);r=n?n.index:void 0}return r},eachAtom:function(t,e){this.eachResidue(function(i){i.eachAtom(t,e)},e)},eachAtomN:function(t,e,i){var r,n=this,o=this.residueCount,a=new Array(t);for(r=0;r=n&&i=t&&e.apply(this,s)}})}},eachDirectionAtomsN:function(t,e){var i=this,r=2*t,n=this.atomOffset,o=this.atomCount,a=n+o;if(!(o=n&&i=n&&r=t&&e.apply(this,s)}},u,l)}},eachResidue:function(t){for(var e=this.structure.getResidueProxy(),i=this.residueCount,r=this.residueIndexStart,n=0;n1&&t(new Co(o,i,u.index)),i=r)):(m!==_g&&u.index-i>1&&t(new Co(o,i,u.index)),i=r)}r-i>1&&this.structure.getResidueProxy(i).backboneStartType&&t(new Co(o,i,r))},qualifiedName:function(){var t=\":\"+this.chainname+\"/\"+this.modelIndex;return t},clone:function(){return new this.constructor(this.structure,this.index)},toObject:function(){return{index:this.index,residueOffset:this.residueOffset,residueCount:this.residueCount,chainname:this.chainname}}},Eo.prototype={constructor:Eo,type:\"ModelProxy\",structure:void 0,modelStore:void 0,index:void 0,get chainOffset(){return this.modelStore.chainOffset[this.index]},set chainOffset(t){this.modelStore.chainOffset[this.index]=t},get chainCount(){return this.modelStore.chainCount[this.index]},set chainCount(t){this.modelStore.chainCount[this.index]=t},get residueOffset(){return this.chainStore.residueOffset[this.chainOffset]},get atomOffset(){return this.residueStore.atomOffset[this.residueOffset]},get chainEnd(){return this.chainOffset+this.chainCount-1},get residueEnd(){return this.chainStore.residueOffset[this.chainEnd]+this.chainStore.residueCount[this.chainEnd]-1},get atomEnd(){return this.residueStore.atomOffset[this.residueEnd]+this.residueStore.atomCount[this.residueEnd]-1},get residueCount(){return 0===this.chainCount?0:this.residueEnd-this.residueOffset+1},get atomCount(){return 0===this.residueCount?0:this.atomEnd-this.atomOffset+1},eachAtom:function(t,e){this.eachChain(function(i){i.eachAtom(t,e)},e)},eachResidue:function(t,e){this.eachChain(function(i){i.eachResidue(t,e)},e)},eachPolymer:function(t,e){if(e&&e.chainOnlyTest){var i=e.chainOnlyTest;this.eachChain(function(r){i(r)&&r.eachPolymer(t,e)})}else this.eachChain(function(i){i.eachPolymer(t,e)})},eachChain:function(t,e){var i,r=this.chainCount,n=this.chainOffset,o=this.structure._cp,a=n+r;if(e&&e.test){var s=e.chainOnlyTest;if(s)for(i=n;i1?(R=i.atomRadius(A),O=R*b/(.5*L),w.calculateShiftDir(B),y?(D=2*x*R,B.multiplyScalar(D),B.negate(),F.subVectors(M,A).multiplyScalar(Math.max(.1,D/1.88)),A.positionToArray(o,E),M.positionToArray(a,E),L>=2&&(k.addVectors(A,B).add(F).toArray(o,E+3),k.addVectors(M,B).sub(F).toArray(a,E+3),L>=3&&(k.subVectors(A,B).add(F).toArray(o,E+6),k.subVectors(M,B).sub(F).toArray(a,E+6)))):(D=(x-b)*R,B.multiplyScalar(D),2===L?(k.addVectors(A,B).toArray(o,E),k.subVectors(A,B).toArray(o,E+3),k.addVectors(M,B).toArray(a,E),k.subVectors(M,B).toArray(a,E+3)):3===L?(A.positionToArray(o,E),k.addVectors(A,B).toArray(o,E+3),k.subVectors(A,B).toArray(o,E+6),M.positionToArray(a,E),k.addVectors(M,B).toArray(a,E+3),k.subVectors(M,B).toArray(a,E+6)):(A.positionToArray(o,E),M.positionToArray(a,E)))):(A.positionToArray(o,E),M.positionToArray(a,E))),s&&(r.bondColorToArray(w,1,s,E),r.bondColorToArray(w,0,c,E),v&&L>1))for(T=1;T1))for(T=1;T1))for(O=h[N]*b/(y?1:.5*L),T=y?1:0;T1))for(O=d[N]*b/(y?1:.5*L),T=y?1:0;Ta&&(a=e),i>s&&(s=i),u>c&&(c=u)},e),i.min.set(r,n,o),i.max.set(a,s,c),t.Debug&&qp.timeEnd(\"getBoundingBox\"),i},getPrincipalAxes:function(e){t.Debug&&qp.time(\"getPrincipalAxes\");var i=0,r=new Cn(3,this.atomCount),n=r.data;return this.eachAtom(function(t){n[i+0]=t.x,n[i+1]=t.y,n[i+2]=t.z,i+=3},e),t.Debug&&qp.timeEnd(\"getPrincipalAxes\"),new iv(r)},atomCenter:function(t){return t?this.getBoundingBox(t).center():this.center.clone()},getSequence:function(t){var e=[],i=this.getResidueProxy();return this.eachAtom(function(t){i.index=t.residueIndex,t.index===i.traceAtomIndex&&e.push(i.getResname1())},t),e},getAtomIndices:function(t){var e;if(t&&t.string)e=[],this.eachAtom(function(t){e.push(t.index)},t);else{var i={what:{index:!0}};e=this.getAtomData(i).index}return e},getChainnameCount:function(t){var e=new Set;return this.eachChain(function(t){t.residueCount&&e.add(t.chainname)},t),e.size},updatePosition:function(t){var e=0;this.eachAtom(function(i){i.positionFromArray(t,e),e+=3})},refreshPosition:function(){this.getBoundingBox(void 0,this.boundingBox),this.boundingBox.center(this.center),this.spatialHash=new qn(this.atomStore,this.boundingBox)},dispose:function(){this.frames&&(this.frames.length=0),this.boxes&&(this.boxes.length=0),this.bondStore.dispose(),this.backboneBondStore.dispose(),this.rungBondStore.dispose(),this.atomStore.dispose(),this.residueStore.dispose(),this.chainStore.dispose(),this.modelStore.dispose(),delete this.bondStore,delete this.atomStore,delete this.residueStore,delete this.chainStore,delete this.modelStore,delete this.frames,delete this.boxes,delete this.cif,delete this.bondSet,delete this.atomSet}},Lo.prototype={constructor:Lo,type:\"Surface\",set:function(t,e,i,r,n,o){this.position=t,this.index=e,this.normal=i,this.color=r,this.atomindex=n,this.size=t.length/3,this.contour=o},fromGeometry:function(e){t.Debug&&qp.time(\"GeometrySurface.fromGeometry\");var i;e instanceof zt?(e.computeVertexNormals(!0),i=(new $t).fromGeometry(e)):i=e instanceof $t?e:e[0],i.boundingBox||i.computeBoundingBox(),this.center.copy(i.boundingBox.center()),this.boundingBox.copy(i.boundingBox);var r,n,o,a;if(i instanceof $t){var s=i.attributes,c=!!s.normal&&s.normal.array;(!c||0===c[0]&&0===c[1]&&0===c[2])&&i.computeVertexNormals(),r=s.position.array,o=s.index?s.index.array:null,a=s.normal.array}this.set(r,o,a,n,void 0),t.Debug&&qp.timeEnd(\"GeometrySurface.setGeometry\")},getPosition:function(){return this.position},getColor:function(t){var e,i,r,n=t||{},o=this.size;if(\"volume\"===n.scheme){var a=new g,s=this.position;for(r=Kp.getScheme(n),i=new Float32Array(3*o),e=0;e65535?Uint32Array:Uint16Array;return new m(o)}return this.index},getAtomindex:function(){return this.atomindex},dispose:function(){}},Ro.prototype.constructor=Ro,Oo.prototype.constructor=Oo,Fo.__deps=[Do,No,ko],Bo.__deps=[zo],zo.__deps=[gn,mn,vn,fn],jo.__deps=[mr,wn,Sn,bn,xn,An,Mn,gn,Pn,Un,$n,Gn,Vn,Hn],$o.__deps=[Bo,zo,Fo,hn,dn,Wn,Xn],Zp.add(\"surf\",function(t,e){var i=t.data.args,r=t.data.params;if(i&&(self.volsurf=new $o(i[0],i[1],i[2],i[3],i[4])),r){var n=self.volsurf.getSurface(r.isolevel,r.smooth,r.box,r.matrix,r.contour),o=[n.position.buffer,n.index.buffer];n.normal&&o.push(n.normal.buffer),n.atomindex&&o.push(n.atomindex.buffer),e({sd:n,p:r},o)}},[$o]),Vo.prototype={constructor:Vo,type:\"Volume\",setData:function(t,e,i,r,n){this.nx=e||1,this.ny=i||1,this.nz=r||1,this.data=t||new Float32Array(1),this.__data=this.data,this.setDataAtomindex(n),delete this.mc,delete this.__isolevel,delete this.__smooth,delete this.__minValue,delete this.__maxValue,delete this.__dataPositionBuffer,delete this.__dataPosition,delete this.__dataBuffer,delete this.__dataMin,delete this.__dataMax,delete this.__dataMean,delete this.__dataRms,this.worker&&this.worker.terminate()},setMatrix:function(t){this.matrix.copy(t);var e=this.boundingBox,i=this.center,r=this.nx-1,n=this.ny-1,o=this.nz-1;e.makeEmpty(),e.expandByPoint(i.set(r,n,o)),e.expandByPoint(i.set(r,n,0)),e.expandByPoint(i.set(r,0,o)),e.expandByPoint(i.set(r,0,0)),e.expandByPoint(i.set(0,n,o)),e.expandByPoint(i.set(0,0,o)),e.expandByPoint(i.set(0,n,0)),e.expandByPoint(i.set(0,0,0)),e.applyMatrix4(this.matrix),e.center(this.center);var a=this.matrix.elements,s=new g(a[0],a[1],a[2]),c=new g(a[4],a[5],a[6]),u=new g(a[8],a[9],a[10]),l=new g,h=this.normalMatrix.elements;l.crossVectors(c,u),h[0]=l.x,h[1]=l.y,h[2]=l.z,l.crossVectors(u,s),h[3]=l.x,h[4]=l.y,h[5]=l.z,l.crossVectors(s,c),h[6]=l.x,h[7]=l.y,h[8]=l.z,this.inverseMatrix.getInverse(this.matrix)},setDataAtomindex:function(t){this.dataAtomindex=t,this.__dataAtomindex=this.dataAtomindex,delete this.__dataAtomindexBuffer},getBox:function(t,e,i){return i||(i=new lt),i.set(t,t),i.expandByScalar(e),i.applyMatrix4(this.inverseMatrix),i.min.round(),i.max.round(),i},__getBox:function(t,e){if(t&&e){this.__box||(this.__box=new lt);var i=this.getBox(t,e,this.__box);return[i.min.toArray(),i.max.toArray()]}},makeSurface:function(t,e,i){var r=new Lo(\"\",\"\",t);return r.info.isolevel=e,r.info.smooth=i,r},getSurface:function(t,e,i,r){t=isNaN(t)?this.getValueForSigma(2):t,e=e||0,void 0===this.volsurf&&(this.volsurf=new $o(this.__data,this.nx,this.ny,this.nz,this.__dataAtomindex));var n=this.__getBox(i,r),o=this.volsurf.getSurface(t,e,n,this.matrix.elements);return this.makeSurface(o,t,e)},getSurfaceWorker:function(t,e,i,r,n){if(t=isNaN(t)?this.getValueForSigma(2):t,e=e||0,window.Worker){void 0===this.workerPool&&(this.workerPool=new Oo(\"surf\",2));var o={},a=this.workerPool.getNextWorker();0===a.postCount&&(o.args=[this.__data,this.nx,this.ny,this.nz,this.__dataAtomindex]),o.params={isolevel:t,smooth:e,box:this.__getBox(i,r),matrix:this.matrix.elements},a.post(o,void 0,function(t){var e=t.data.sd,i=t.data.p;n(this.makeSurface(e,i.isolevel,i.smooth))}.bind(this),function(o){console.warn(\"Volume.getSurfaceWorker error - trying without worker\",o);var a=this.getSurface(t,e,i,r);n(a)}.bind(this))}else{var s=this.getSurface(t,e,i,r);n(s)}},getValueForSigma:function(t){return t=void 0!==t?t:2,this.getDataMean()+t*this.getDataRms()},getSigmaForValue:function(t){return t=void 0!==t?t:0,(t-this.getDataMean())/this.getDataRms()},filterData:function(t,e,i){isNaN(t)&&this.header&&(t=this.header.DMEAN+2*this.header.ARMS),t=void 0===t||isNaN(t)?-(1/0):t,e=void 0!==e?e:1/0,i=i||!1,this.dataPosition||this.makeDataPosition();var r=this.__dataPosition,n=this.__data;if(t!==this.__minValue||e!=this.__maxValue||i!==this.__outside){if(t===-(1/0)&&e===1/0)this.dataPosition=r,this.data=n;else{var o=n.length;this.__dataBuffer||(this.__dataPositionBuffer=new ArrayBuffer(3*o*4),this.__dataBuffer=new ArrayBuffer(4*o));for(var a=new Float32Array(this.__dataPositionBuffer),s=new Float32Array(this.__dataBuffer),c=0,u=0;u=t&&h<=e||i&&(he)){var d=3*c;a[d+0]=r[l+0],a[d+1]=r[l+1],a[d+2]=r[l+2],s[c]=h,c+=1}}this.dataPosition=new Float32Array(this.__dataPositionBuffer,0,3*c),this.data=new Float32Array(this.__dataBuffer,0,c)}this.__minValue=t,this.__maxValue=e,this.__outside=i}},makeDataPosition:function(){for(var t=this.nz,e=this.ny,i=this.nx,r=new Float32Array(i*e*t*3),n=0,o=0;o0&&this.centerPbc){var n=[e[0],e[4],e[8]],o=this.getCircularMean(this.backboneIndices,i,n);Ho(i,o,n)}this.removePbc&&Wo(i,e)}this.indices.length>0&&this.superpose&&this.doSuperpose(i),this.frameCache[t]=i,this.boxCache[t]=e,this.frameCacheSize+=1},fv.prototype.setNumframes=function(t){t!==this.numframes&&(this.numframes=t,this.signals.gotNumframes.dispatch(t))},fv.prototype.dispose=function(){this.frameCache=[],this._disposed=!0,this.player&&this.player.stop()},fv.prototype.setPlayer=function(t){this.player=t,this.signals.playerChanged.dispatch(t)},fv.prototype.getPath=function(t,e){qp.error(\"Trajectory.getPath not implemented\",t,e)},em.add(\"shader/Mesh.vert\",\"#define STANDARD\\nuniform float nearClip;\\nuniform vec3 clipCenter;\\n#if defined( NEAR_CLIP ) || defined( RADIUS_CLIP ) || ( !defined( PICKING ) && !defined( NOLIGHT ) )\\nvarying vec3 vViewPosition;\\n#endif\\n#if defined( RADIUS_CLIP )\\nvarying vec3 vClipCenter;\\n#endif\\n#if defined( PICKING )\\nattribute vec3 pickingColor;\\nvarying vec3 vPickingColor;\\n#elif defined( NOLIGHT )\\nvarying vec3 vColor;\\n#else\\n#include color_pars_vertex\\n#ifndef FLAT_SHADED\\nvarying vec3 vNormal;\\n#endif\\n#endif\\n#include common\\nvoid main(){\\n#if defined( PICKING )\\nvPickingColor = pickingColor;\\n#elif defined( NOLIGHT )\\nvColor = color;\\n#else\\n#include color_vertex\\n#include beginnormal_vertex\\n#include defaultnormal_vertex\\n#ifndef FLAT_SHADED\\nvNormal = normalize( transformedNormal );\\n#endif\\n#endif\\n#include begin_vertex\\n#include project_vertex\\n#if defined( NEAR_CLIP ) || defined( RADIUS_CLIP ) || ( !defined( PICKING ) && !defined( NOLIGHT ) )\\nvViewPosition = -mvPosition.xyz;\\n#endif\\n#if defined( RADIUS_CLIP )\\nvClipCenter = -( modelViewMatrix * vec4( clipCenter, 1.0 ) ).xyz;\\n#endif\\n#include nearclip_vertex\\n}\"),em.add(\"shader/Mesh.frag\",\"#define STANDARD\\nuniform vec3 diffuse;\\nuniform vec3 emissive;\\nuniform float roughness;\\nuniform float metalness;\\nuniform float opacity;\\nuniform float nearClip;\\nuniform float clipRadius;\\n#if defined( NEAR_CLIP ) || defined( RADIUS_CLIP ) || ( !defined( PICKING ) && !defined( NOLIGHT ) )\\nvarying vec3 vViewPosition;\\n#endif\\n#if defined( RADIUS_CLIP )\\nvarying vec3 vClipCenter;\\n#endif\\n#if defined( PICKING )\\nuniform float objectId;\\nvarying vec3 vPickingColor;\\n#elif defined( NOLIGHT )\\nvarying vec3 vColor;\\n#else\\n#ifndef FLAT_SHADED\\nvarying vec3 vNormal;\\n#endif\\n#include common\\n#include color_pars_fragment\\n#include fog_pars_fragment\\n#include bsdfs\\n#include lights_pars\\n#include lights_physical_pars_fragment\\n#endif\\nvoid main(){\\n#include nearclip_fragment\\n#include radiusclip_fragment\\n#if defined( PICKING )\\ngl_FragColor = vec4( vPickingColor, objectId );\\n#elif defined( NOLIGHT )\\ngl_FragColor = vec4( vColor, opacity );\\n#else\\nvec4 diffuseColor = vec4( diffuse, opacity );\\nReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\\nvec3 totalEmissiveLight = emissive;\\n#include color_fragment\\n#include roughnessmap_fragment\\n#include metalnessmap_fragment\\n#include normal_flip\\n#include normal_fragment\\n#include dull_interior_fragment\\n#include lights_physical_fragment\\n#include lights_template\\nvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveLight;\\ngl_FragColor = vec4( outgoingLight, diffuseColor.a );\\n#include premultiplied_alpha_fragment\\n#include tonemapping_fragment\\n#include encodings_fragment\\n#include fog_fragment\\n#include opaque_back_fragment\\n#endif\\n}\");var pv={f:1,v2:2,v3:3,c:3},mv=function(t,e){var i=t||{},r=e||{};this.opaqueBack=Hi(r.opaqueBack,!1),this.dullInterior=Hi(r.dullInterior,!1),this.side=Hi(r.side,\"double\"),this.opacity=Hi(r.opacity,1),this.clipNear=Hi(r.clipNear,0),this.clipRadius=Hi(r.clipRadius,0),this.clipCenter=Hi(r.clipCenter,new g),this.flatShaded=Hi(r.flatShaded,!1),this.background=Hi(r.background,!1),this.linewidth=Hi(r.linewidth,1),this.wireframe=Hi(r.wireframe,!1),this.wireframeLinewidth=Hi(r.wireframeLinewidth,1),this.roughness=Hi(r.roughness,.4),this.metalness=Hi(r.metalness,0),this.diffuse=Hi(r.diffuse,16777215),this.forceTransparent=Hi(r.forceTransparent,!1),this.geometry=new $t,this.indexVersion=0,this.wireframeIndexVersion=-1,this.uniforms=Hl.merge([Hd.common,{fogColor:{value:null},fogNear:{value:0},fogFar:{value:0},opacity:{value:this.opacity},nearClip:{value:0},clipRadius:{value:this.clipRadius},clipCenter:{value:this.clipCenter}},{emissive:{value:new ct(0)},roughness:{value:this.roughness},metalness:{value:this.metalness}},Hd.ambient,Hd.lights]),this.uniforms.diffuse.value.set(this.diffuse);var n=new Di(0).onUpdate(function(t){this.value=Wp?t.id:t.id/255});this.pickingUniforms={nearClip:{value:0},objectId:n},this.group=new Ae,this.wireframeGroup=new Ae,this.pickingGroup=new Ae;var o=i.position||i.position1,a=o?o.length/3:0;this._positionDataSize=a,this.addAttributes({position:{type:\"v3\",value:i.position},color:{type:\"c\",value:i.color},vertexId:{type:\"f\",value:Yr(a)}}),i.index&&this.initIndex(i.index),i.pickingColor&&this.addAttributes({pickingColor:{type:\"c\",value:i.pickingColor}}),this.makeWireframeGeometry()},gv={parameters:{},transparent:{},size:{},attributeSize:{},pickable:{},dynamic:{},vertexShader:{},fragmentShader:{}};gv.parameters.get=function(){return{opaqueBack:{updateShader:!0},dullInterior:{updateShader:!0},side:{updateShader:!0,property:!0},opacity:{uniform:!0},clipNear:{updateShader:!0,property:!0},clipRadius:{updateShader:!0,property:!0,uniform:!0},clipCenter:{uniform:!0},flatShaded:{updateShader:!0},background:{updateShader:!0},linewidth:{property:!0},wireframe:{updateVisibility:!0},roughness:{uniform:!0},metalness:{uniform:!0},diffuse:{uniform:!0}}},gv.transparent.get=function(){return this.opacity<1||this.forceTransparent},gv.size.get=function(){return this._positionDataSize},gv.attributeSize.get=function(){return this.size},gv.pickable.get=function(){return!!this.geometry.attributes.pickingColor},gv.dynamic.get=function(){return!0},gv.vertexShader.get=function(){},gv.fragmentShader.get=function(){},mv.prototype.initIndex=function(t){this.geometry.setIndex(new Rt(t,1)),this.geometry.getIndex().setDynamic(this.dynamic)},mv.prototype.makeMaterial=function(){var t=Xo(this.side);this.material=new st({uniforms:this.uniforms,vertexShader:\"\",fragmentShader:\"\",depthTest:!0,transparent:this.transparent,depthWrite:!0,lights:!0,fog:!0,side:t,linewidth:this.linewidth}),this.material.vertexColors=Uc,this.material.extensions.derivatives=this.flatShaded,this.material.extensions.fragDepth=this.impostor,this.material.clipNear=this.clipNear,this.wireframeMaterial=new st({uniforms:this.uniforms,vertexShader:\"\",fragmentShader:\"\",depthTest:!0,transparent:this.transparent,depthWrite:!0,lights:!1,fog:!0,side:t,linewidth:this.linewidth}),this.wireframeMaterial.vertexColors=Uc,this.wireframeMaterial.clipNear=this.clipNear,this.pickingMaterial=new st({uniforms:this.pickingUniforms,vertexShader:\"\",fragmentShader:\"\",depthTest:!0,transparent:!1,depthWrite:!0,lights:!1,fog:!1,side:t,linewidth:this.linewidth}),this.pickingMaterial.vertexColors=Uc,this.pickingMaterial.extensions.fragDepth=this.impostor,this.pickingMaterial.clipNear=this.clipNear,this.updateShader()},mv.prototype.makeWireframeGeometry=function(){this.makeWireframeIndex();var t=this.geometry,e=this.wireframeIndex,i=new $t;i.attributes=t.attributes,e&&(i.setIndex(new Rt(e,1).setDynamic(this.dynamic)),i.setDrawRange(0,this.wireframeIndexCount)),this.wireframeGeometry=i},mv.prototype.makeWireframeIndex=function(){function t(t,i){if(t>i){var r=t;t=i,i=r}var n=e[t];return void 0===n?(e[t]=[i],!0):!n.includes(i)&&(n.push(i),!0)}var e=[],i=this.geometry.index;if(this.wireframe){if(i){var r=i.array,n=r.length;this.geometry.drawRange.count!==1/0&&(n=this.geometry.drawRange.count);var o;if(this.wireframeIndex&&this.wireframeIndex.length>2*n)o=this.wireframeIndex;else{var a=this.geometry.attributes.position.count,s=a>65535?Uint32Array:Uint16Array;o=new s(2*n)}var c=0;e.length=0;for(var u=0;uthis.wireframeGeometry.index.array.length)this.wireframeGeometry.setIndex(new Rt(this.wireframeIndex,1).setDynamic(this.dynamic));else{var t=this.wireframeGeometry.getIndex();t.set(this.wireframeIndex),t.needsUpdate=this.wireframeIndexCount>0,t.updateRange.count=this.wireframeIndexCount}this.wireframeGeometry.setDrawRange(0,this.wireframeIndexCount)},mv.prototype.getRenderOrder=function(){var t=0;return\"text\"===this.type?t=1:this.transparent&&(t=\"surface\"===this.type?3:2),t},mv.prototype.getMesh=function(){var t;return this.material||this.makeMaterial(),this.line?t=new _e(this.geometry,this.material):this.point?(t=new Se(this.geometry,this.material),this.sortParticles&&(t.sortParticles=!0)):t=new ie(this.geometry,this.material),t.frustumCulled=!1,t.renderOrder=this.getRenderOrder(),t},mv.prototype.getWireframeMesh=function(){var t;return this.material||this.makeMaterial(),this.wireframeGeometry||this.makeWireframeGeometry(),t=new _e(this.wireframeGeometry,this.wireframeMaterial),t.frustumCulled=!1,t.renderOrder=this.getRenderOrder(),t},mv.prototype.getPickingMesh=function(){var t;return this.material||this.makeMaterial(),t=new ie(this.geometry,this.pickingMaterial),t.frustumCulled=!1,t.renderOrder=this.getRenderOrder(),t},mv.prototype.getShader=function(t,e){return Vr(t,this.getDefines(e))},mv.prototype.getVertexShader=function(t){return this.getShader(this.vertexShader,t)},mv.prototype.getFragmentShader=function(t){return this.getShader(this.fragmentShader,t)},mv.prototype.getDefines=function(t){var e={};return this.clipNear&&(e.NEAR_CLIP=1),this.clipRadius&&(e.RADIUS_CLIP=1),\"picking\"===t?e.PICKING=1:((\"background\"===t||this.background)&&(e.NOLIGHT=1),this.flatShaded&&(e.FLAT_SHADED=1),this.opaqueBack&&(e.OPAQUE_BACK=1),this.dullInterior&&(e.DULL_INTERIOR=1)),e},mv.prototype.getParameters=function(){var t=this,e={};for(var i in t.parameters)e[i]=t[i];return e},mv.prototype.addUniforms=function(t){this.uniforms=Hl.merge([this.uniforms,t]),this.pickingUniforms=Hl.merge([this.pickingUniforms,t])},mv.prototype.addAttributes=function(t){var e=this;for(var i in t){var r,n=t[i],o=e.attributeSize*pv[n.type];n.value?(o!==n.value.length&&qp.error(\"attribute value has wrong length\",i),r=n.value):r=ar(\"float32\",o),e.geometry.addAttribute(i,new Rt(r,pv[n.type]).setDynamic(e.dynamic))}},mv.prototype.updateRenderOrder=function(){function t(t){t.renderOrder=e}var e=this.getRenderOrder();this.group.children.forEach(t),this.pickingGroup&&this.pickingGroup.children.forEach(t)},mv.prototype.updateShader=function(){var t=this.material,e=this.wireframeMaterial,i=this.pickingMaterial;t.vertexShader=this.getVertexShader(),t.fragmentShader=this.getFragmentShader(),t.needsUpdate=!0,e.vertexShader=this.getShader(\"Line.vert\"),e.fragmentShader=this.getShader(\"Line.frag\"),e.needsUpdate=!0,i.vertexShader=this.getVertexShader(\"picking\"),i.fragmentShader=this.getFragmentShader(\"picking\"),i.needsUpdate=!0},mv.prototype.setParameters=function(t){var e=this;if(t){var i=t,r=this.parameters,n={},o={},a=!1,s=!1;for(var c in i)void 0!==i[c]&&void 0!==r[c]&&(e[c]=i[c],r[c].property&&(r[c].property!==!0?n[r[c].property]=i[c]:n[c]=i[c]),r[c].uniform&&(r[c].uniform!==!0?o[r[c].uniform]=i[c]:o[c]=i[c]),r[c].updateShader&&(a=!0),r[c].updateVisibility&&(s=!0),e.dynamic&&\"wireframe\"===c&&i[c]===!0&&e.updateWireframeIndex(),\"flatShaded\"===c&&(e.material.extensions.derivatives=e.flatShaded),\"forceTransparent\"===c&&(n.transparent=e.transparent));this.setProperties(n),this.setUniforms(o),a&&this.updateShader(),s&&this.setVisibility(this.visible)}},mv.prototype.setAttributes=function(t){var e=this,i=this.geometry,r=i.attributes;for(var n in t){var o=t[n],a=o.length;if(\"index\"===n){var s=i.getIndex();i.setDrawRange(0,1/0),a>s.array.length?i.setIndex(new Rt(o,1).setDynamic(e.dynamic)):(s.set(o),s.needsUpdate=a>0,s.updateRange.count=a,i.setDrawRange(0,a)),e.indexVersion++,e.wireframe&&e.updateWireframeIndex()}else{var c=r[n];a>c.array.length?i.addAttribute(n,new Rt(o,c.itemSize).setDynamic(e.dynamic)):(r[n].set(o),r[n].needsUpdate=a>0,r[n].updateRange.count=a)}}},mv.prototype.setUniforms=function(t){var e=this;if(t){var i=this.material.uniforms,r=this.wireframeMaterial.uniforms,n=this.pickingMaterial.uniforms;for(var o in t)\"opacity\"===o&&e.setProperties({transparent:e.transparent}),void 0!==i[o]&&(i[o].value.isVector3?i[o].value.copy(t[o]):i[o].value.set?i[o].value.set(t[o]):i[o].value=t[o]),void 0!==r[o]&&(r[o].value.isVector3?r[o].value.copy(t[o]):r[o].value.set?r[o].value.set(t[o]):r[o].value=t[o]),void 0!==n[o]&&(n[o].value.isVector3?n[o].value.copy(t[o]):n[o].value.set?n[o].value.set(t[o]):n[o].value=t[o])}},mv.prototype.setProperties=function(t){var e=this;if(t){var i=this.material,r=this.wireframeMaterial,n=this.pickingMaterial;for(var o in t){var a=t[o];\"transparent\"===o?e.updateRenderOrder():\"side\"===o&&(a=Xo(a)),void 0!==i[o]&&(i[o]=a),void 0!==r[o]&&(r[o]=a),void 0!==n[o]&&(n[o]=a)}i.needsUpdate=!0,r.needsUpdate=!0,n.needsUpdate=!0}},mv.prototype.setVisibility=function(t){this.visible=t,this.wireframe?(this.group.visible=!1,this.wireframeGroup.visible=t,this.pickable&&(this.pickingGroup.visible=!1)):(this.group.visible=t,this.wireframeGroup.visible=!1,this.pickable&&(this.pickingGroup.visible=t))},mv.prototype.dispose=function(){this.material&&this.material.dispose(),this.wireframeMaterial&&this.wireframeMaterial.dispose(),this.pickingMaterial&&this.pickingMaterial.dispose(),this.geometry.dispose(),this.wireframeGeometry&&this.wireframeGeometry.dispose()},Object.defineProperties(mv.prototype,gv);var vv=function(t){function e(e,i){t.call(this,e,i);var r=e||{};this.addAttributes({normal:{type:\"v3\",value:r.normal}}),void 0===r.normal&&this.geometry.computeVertexNormals()}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var i={vertexShader:{},fragmentShader:{}};return i.vertexShader.get=function(){return\"Mesh.vert\"},i.fragmentShader.get=function(){return\"Mesh.frag\"},Object.defineProperties(e.prototype,i),e}(mv),yv=new p,bv=new dt,xv=function(t){function e(e,i,r){var n,o,a,s,c,u=i||{},l=e.position.length/3;r.vertices&&r.faces?(a=qo(r),s=Zo(r),c=Yo(r),n=r.vertices.length,o=r.faces.length):(a=r.attributes.position.array,s=r.attributes.normal.array,c=r.index.array,n=a.length/3,o=c.length/3);var h=l*n,d=new Float32Array(3*h),f=new Float32Array(3*h),p=new Float32Array(3*h),m=new Float32Array(3*h),g=h>65535?Uint32Array:Uint16Array,v=new g(l*o*3);t.call(this,{position:d,color:p,index:v,normal:f,pickingColor:m},u),this.geoPosition=a,this.geoNormal=s,this.geoIndex=c,this.positionCount=l,this.geoPositionCount=n,this.geoFacesCount=o,this.transformedGeoPosition=new Float32Array(3*n),this.transformedGeoNormal=new Float32Array(3*n),this.meshPosition=d,this.meshColor=p,this.meshIndex=v,this.meshNormal=f,this.meshPickingColor=m,this.meshIndex=v,this.makeIndex()}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var i={updateNormals:{}};return e.prototype.applyPositionTransform=function(){},e.prototype.setAttributes=function(t,e){var i,r,n,o,a,s,c,u,l,h,d,f=this,p=this.geometry.attributes,m=this.updateNormals;t.position&&(i=t.position,o=this.geoPosition,u=this.meshPosition,s=this.transformedGeoPosition,p.position.needsUpdate=!0,(m||e)&&(a=this.geoNormal,d=this.meshNormal,c=this.transformedGeoNormal,p.normal.needsUpdate=!0)),t.color&&(r=t.color,l=this.meshColor,p.color.needsUpdate=!0),t.pickingColor&&(n=t.pickingColor,h=this.meshPickingColor,p.pickingColor.needsUpdate=!0);for(var g=this.positionCount,v=this.geoPositionCount,y=0;y 0.0 ){\\ncameraPos = rayDirection * posT + rayOrigin;\\ninterior = true;\\nflag2 = true;\\nreturn false;\\n}else{\\ncameraNormal = normalize( cameraPos - cameraSpherePos );\\n}\\n#else\\nif( calcDepth( cameraPos ) <= 0.0 ){\\ncameraPos = rayDirection * posT + rayOrigin;\\ninterior = true;\\nreturn false;\\n}else{\\ncameraNormal = normalize( cameraPos - cameraSpherePos );\\n}\\n#endif\\nreturn true;\\n}\\nreturn false;\\n}\\nvoid main(void){\\nbool flag = Impostor( cameraPos, cameraNormal );\\n#ifdef NEAR_CLIP\\nif( calcClip( cameraPos ) > 0.0 )\\ndiscard;\\n#endif\\ngl_FragDepthEXT = calcDepth( cameraPos );\\nif( !flag ){\\n#ifdef NEAR_CLIP\\nif( flag2 ){\\ngl_FragDepthEXT = max( 0.0, calcDepth( vec3( - ( nearClip - 0.5 ) ) ) + ( 0.0000001 / vRadius ) );\\n}else if( gl_FragDepthEXT >= 0.0 ){\\ngl_FragDepthEXT = 0.0 + ( 0.0000001 / vRadius );\\n}\\n#else\\nif( gl_FragDepthEXT >= 0.0 ){\\ngl_FragDepthEXT = 0.0 + ( 0.0000001 / vRadius );\\n}\\n#endif\\n}\\nif (gl_FragDepthEXT < 0.0)\\ndiscard;\\nif (gl_FragDepthEXT > 1.0)\\ndiscard;\\n#ifdef PICKING\\ngl_FragColor = vec4( vPickingColor, objectId );\\n#else\\nvec3 vNormal = cameraNormal;\\nvec3 vViewPosition = -cameraPos;\\nvec4 diffuseColor = vec4( diffuse, opacity );\\nReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\\nvec3 totalEmissiveLight = emissive;\\n#include color_fragment\\n#include roughnessmap_fragment\\n#include metalnessmap_fragment\\n#include normal_flip\\n#include normal_fragment\\nif( interior ){\\nnormal = vec3( 0.0, 0.0, 0.4 );\\n}\\n#include lights_physical_fragment\\n#include lights_template\\nvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveLight;\\ngl_FragColor = vec4( outgoingLight, diffuseColor.a );\\n#include premultiplied_alpha_fragment\\n#include tonemapping_fragment\\n#include encodings_fragment\\n#include fog_fragment\\n#endif\\n}\");var Sv=function(t){function e(e,i){t.call(this,e,i);var r=this.attributeSize>65535?Uint32Array:Uint16Array;this.index=new r(this.indexSize),this.makeIndex(),this.initIndex(this.index,1),this.addAttributes({mapping:{type:this.mappingType,value:null}})}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var i={attributeSize:{},indexSize:{},mapping:{},mappingIndices:{},mappingIndicesSize:{},mappingType:{},mappingSize:{},mappingItemSize:{}};return i.attributeSize.get=function(){return this.size*this.mappingSize},i.indexSize.get=function(){return this.size*this.mappingIndicesSize},i.mapping.get=function(){},i.mappingIndices.get=function(){},i.mappingIndicesSize.get=function(){},i.mappingType.get=function(){},i.mappingSize.get=function(){},i.mappingItemSize.get=function(){},e.prototype.addAttributes=function(e){var i={};for(var r in e){var n=e[r];i[r]={type:n.type,value:null}}t.prototype.addAttributes.call(this,i)},e.prototype.setAttributes=function(t){t&&!t.position&&t.position1&&t.position2&&(t.position=Wr(t.position1,t.position2));var e,i,r,n,o,a,s,c=this.size,u=this.mappingSize,l=this.geometry.attributes;for(var h in t)if(\"index\"!==h){i=t[h],e=l[h],r=e.itemSize,n=e.array;for(var d=0;d radius2)\\ndiscard;\\n#ifdef CAP\\nnew_point = front_point;\\n_normal = axis;\\n#else\\nnew_point = ray_target + ( (-a1 - sqrt(d)) / a2 ) * ray_direction;\\ndNV = dot(-axis, ray_direction);\\nnear = dot(axis, end_cyl) / dNV;\\nnew_point2 = ray_direction * near + ray_origin;\\nif (dot(new_point2 - end_cyl, new_point2-base) < radius2)\\ndiscard;\\ninterior = true;\\n#endif\\n}\\nif( end_cap_test > 0.0 )\\n{\\nfloat dNV = dot(axis, ray_direction);\\nif (dNV < 0.0)\\ndiscard;\\nfloat near = dot(axis, end_cyl) / dNV;\\nvec3 end_point = ray_direction * near + ray_origin;\\nif( dot(end_point - end_cyl, end_point-base) > radius2 )\\ndiscard;\\n#ifdef CAP\\nnew_point = end_point;\\n_normal = axis;\\n#else\\nnew_point = ray_target + ( (-a1 - sqrt(d)) / a2 ) * ray_direction;\\ndNV = dot(-axis, ray_direction);\\nnear = dot(-axis, (base)) / dNV;\\nnew_point2 = ray_direction * near + ray_origin;\\nif (dot(new_point2 - base, new_point2-base) < radius2)\\ndiscard;\\ninterior = true;\\n#endif\\n}\\ngl_FragDepthEXT = calcDepth( new_point );\\n#ifdef NEAR_CLIP\\nif( calcClip( new_point ) > 0.0 ){\\ndist = (-a1 - sqrt(d)) / a2;\\nnew_point = ray_target + dist * ray_direction;\\nif( calcClip( new_point ) > 0.0 )\\ndiscard;\\ninterior = true;\\ngl_FragDepthEXT = calcDepth( new_point );\\nif( gl_FragDepthEXT >= 0.0 ){\\ngl_FragDepthEXT = max( 0.0, calcDepth( vec3( - ( nearClip - 0.5 ) ) ) + ( 0.0000001 / vRadius ) );\\n}\\n}else if( gl_FragDepthEXT <= 0.0 ){\\ndist = (-a1 - sqrt(d)) / a2;\\nnew_point = ray_target + dist * ray_direction;\\ninterior = true;\\ngl_FragDepthEXT = calcDepth( new_point );\\nif( gl_FragDepthEXT >= 0.0 ){\\ngl_FragDepthEXT = 0.0 + ( 0.0000001 / vRadius );\\n}\\n}\\n#else\\nif( gl_FragDepthEXT <= 0.0 ){\\ndist = (-a1 - sqrt(d)) / a2;\\nnew_point = ray_target + dist * ray_direction;\\ninterior = true;\\ngl_FragDepthEXT = calcDepth( new_point );\\nif( gl_FragDepthEXT >= 0.0 ){\\ngl_FragDepthEXT = 0.0 + ( 0.0000001 / vRadius );\\n}\\n}\\n#endif\\nif (gl_FragDepthEXT < 0.0)\\ndiscard;\\nif (gl_FragDepthEXT > 1.0)\\ndiscard;\\n#ifdef PICKING\\nif( distSq3( new_point, end_cyl ) < distSq3( new_point, base ) ){\\nif( b < 0.0 ){\\ngl_FragColor = vec4( vPickingColor, objectId );\\n}else{\\ngl_FragColor = vec4( vPickingColor2, objectId );\\n}\\n}else{\\nif( b > 0.0 ){\\ngl_FragColor = vec4( vPickingColor, objectId );\\n}else{\\ngl_FragColor = vec4( vPickingColor2, objectId );\\n}\\n}\\n#else\\nvec3 vViewPosition = -new_point;\\nvec3 vNormal = _normal;\\nvec3 vColor;\\nif( distSq3( new_point, end_cyl ) < distSq3( new_point, base ) ){\\nif( b < 0.0 ){\\nvColor = vColor1;\\n}else{\\nvColor = vColor2;\\n}\\n}else{\\nif( b > 0.0 ){\\nvColor = vColor1;\\n}else{\\nvColor = vColor2;\\n}\\n}\\nvec4 diffuseColor = vec4( diffuse, opacity );\\nReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\\nvec3 totalEmissiveLight = emissive;\\n#include color_fragment\\n#include roughnessmap_fragment\\n#include metalnessmap_fragment\\nvec3 normal = normalize( vNormal );\\nif( interior ){\\nnormal = vec3( 0.0, 0.0, 0.4 );\\n}\\n#include lights_physical_fragment\\n#include lights_template\\nvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveLight;\\ngl_FragColor = vec4( outgoingLight, diffuseColor.a );\\n#include premultiplied_alpha_fragment\\n#include tonemapping_fragment\\n#include encodings_fragment\\n#include fog_fragment\\n#endif\\n}\");var Bv=new Float32Array([-1,1,-1,-1,-1,-1,1,1,-1,1,1,1,1,-1,-1,1,-1,1]),zv=new Uint16Array([0,1,2,1,4,2,2,4,3,4,5,3]),Uv=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var i={mapping:{},mappingIndices:{},mappingIndicesSize:{},mappingType:{},mappingSize:{},mappingItemSize:{}};return i.mapping.get=function(){return Bv},i.mappingIndices.get=function(){return zv},i.mappingIndicesSize.get=function(){return 12},i.mappingType.get=function(){return\"v3\"},i.mappingSize.get=function(){return 6},i.mappingItemSize.get=function(){return 3},Object.defineProperties(e.prototype,i),e}(Sv),jv=function(t){function e(e,i){t.call(this,e,i);var r=i||{};this.openEnded=Hi(r.openEnded,!1);var n=new Di(new p).onUpdate(function(t){this.value.getInverse(t.modelViewMatrix)});this.addUniforms({modelViewMatrixInverse:n,ortho:{value:0}}),this.addAttributes({position1:{type:\"v3\",value:null},position2:{type:\"v3\",value:null},color2:{type:\"c\",value:null},radius:{type:\"f\",value:null}}),e.pickingColor2&&this.addAttributes({pickingColor2:{type:\"c\",value:null}}),this.setAttributes(e),this.makeMapping()}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var i={parameters:{},impostor:{},vertexShader:{},fragmentShader:{}};return i.parameters.get=function(){return Object.assign.call(this,{openEnded:{updateShader:!0}},t.prototype.parameters)},e.prototype.getDefines=function(e){var i=t.prototype.getDefines.call(this,e);return this.openEnded||(i.CAP=1),i},i.impostor.get=function(){return!0},i.vertexShader.get=function(){return\"CylinderImpostor.vert\"},i.fragmentShader.get=function(){return\"CylinderImpostor.frag\"},Object.defineProperties(e.prototype,i),e}(Uv),$v=new g,Vv=new g,Gv=new g,Hv=new g(0,1,0),Wv=function(t){function e(e,i){var r=i||{},n=Hi(r.radialSegments,60),o=Hi(r.openEnded,!1),a=(new p).makeRotationX(-Math.PI/2),s=new $i(1,1,n,1,o);s.applyMatrix(a);var c=e.position1.length,u=e.radius.length,l=new Float32Array(c);t.call(this,{position:l,color:e.color,pickingColor:e.pickingColor},r,s),this._position=l,this._from=new Float32Array(c),this._to=new Float32Array(c),this._radius=new Float32Array(u),this.setAttributes(e,!0)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var i={updateNormals:{}};return e.prototype.applyPositionTransform=function(t,e,i){Vv.fromArray(this._from,i),Gv.fromArray(this._to,i),t.lookAt(Vv,Gv,Hv);var r=this._radius[e];$v.set(r,r,Vv.distanceTo(Gv)),t.scale($v)},e.prototype.setAttributes=function(e,i){var r={};e.position1&&e.position2&&(Wr(e.position1,e.position2,this._position),this._from.set(e.position1),this._to.set(e.position2),r.position=this._position),e.color&&(r.color=e.color),e.pickingColor&&(r.pickingColor=e.pickingColor),e.radius&&this._radius.set(e.radius),t.prototype.setAttributes.call(this,r,i)},i.updateNormals.get=function(){return!0},Object.defineProperties(e.prototype,i),e}(xv),Xv=function(t,e){var i=t||{},r=e||{};this.aspectRatio=Hi(r.aspectRatio,1.5),this.wireframe=Hi(r.wireframe,!1);var n=Hi(r.radialSegments,50),o=Hi(r.openEnded,!1),a=Hi(r.disableImpostor,!1);this.splitPosition=new Float32Array(i.position1.length),this.cylinderRadius=new Float32Array(i.radius.length);var s=this.makeAttributes(i);this.cylinderBuffer=new Jo(s.cylinder,{radialSegments:n,openEnded:o,disableImpostor:a}),this.coneBuffer=new ta(s.cone,{radialSegments:n,openEnded:o,disableImpostor:a}),this.geometry=[this.cylinderBuffer.geometry,this.coneBuffer.geometry],this.group=new Ae,this.wireframeGroup=new Ae,this.pickingGroup=new Ae};Xv.prototype.makeAttributes=function(t){var e,i,r=this.splitPosition,n=this.cylinderRadius,o=this.aspectRatio,a={},s={};if(t.radius){for(e=0,i=n.length;e0?(this.tasks.change(1-this.queue.length()),this.queue.kill()):this.tasks.increment(),void this.queue.push(t||!1)):(this.tasks.increment(),void this.make())},make:function(e,i){t.Debug&&qp.time(\"Representation.make \"+this.type);var r=function(){e?(this.update(e),this.viewer.requestRender(),this.tasks.decrement(),i&&i()):(this.clear(),this.create(),this.manualAttach||this.disposed||(t.Debug&&qp.time(\"Representation.attach \"+this.type),this.attach(function(){t.Debug&&qp.timeEnd(\"Representation.attach \"+this.type),this.tasks.decrement(),i&&i()}.bind(this)))),t.Debug&&qp.timeEnd(\"Representation.make \"+this.type)}.bind(this);this.prepare?this.prepare(r):r()},attach:function(t){this.setVisibility(this.visible),t()},setVisibility:function(t,e){if(this.visible=t,this.visible){var i=this.lazyProps,r=i.bufferParams,n=i.what;if(i.build)return i.build=!1,void this.build();(Object.keys(r).length||Object.keys(n).length)&&(i.bufferParams={},i.what={},this.updateParameters(r,n))}return this.bufferList.forEach(function(e){e.setVisibility(t)}),e||this.viewer.requestRender(),this},setParameters:function(t,e,i){var r=this,n=t||{},o=this.parameters;e=e||{},i=i||!1;var a={};for(var s in n)void 0!==n[s]&&void 0!==o[s]&&(o[s].int&&(n[s]=parseInt(n[s])),o[s].float&&(n[s]=parseFloat(n[s])),n[s]!==r[s]&&(r[s]=n[s],o[s].buffer&&(o[s].buffer===!0?a[s]=n[s]:a[o[s].buffer]=n[s]),o[s].update&&(e[o[s].update]=!0),!o[s].rebuild||\"impostor\"===o[s].rebuild&&Xp&&!r.disableImpostor||(i=!0)));return i?this.build():this.updateParameters(a,e),this},updateParameters:function(t,e){return this.lazy&&!this.visible?(Object.assign(this.lazyProps.bufferParams,t),void Object.assign(this.lazyProps.what,e)):(this.bufferList.forEach(function(e){e.setParameters(t)}),Object.keys(e).length&&this.update(e),void this.viewer.requestRender())},getParameters:function(){var t={lazy:this.lazy,visible:this.visible,quality:this.quality};return Object.keys(this.parameters).forEach(function(e){null!==this.parameters[e]&&(t[e]=this[e])},this),t},clear:function(){this.bufferList.forEach(function(t){this.viewer.remove(t),t.dispose()},this),this.bufferList.length=0,this.viewer.requestRender()},dispose:function(){this.disposed=!0,this.queue.kill(),this.tasks.dispose(),this.clear()}},ra.prototype=Object.assign(Object.create(ia.prototype),{constructor:ra,type:\"buffer\",parameters:Object.assign({},ia.prototype.parameters,{colorScheme:null,colorScale:null,colorValue:null,colorDomain:null,colorMode:null}),create:function(){this.bufferList.push.apply(this.bufferList,this.buffer)},attach:function(t){this.bufferList.forEach(function(t){this.viewer.add(t),t.setParameters(this.getBufferParams())},this),this.setVisibility(this.visible),t()}});var qv=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var i={type:{}};return i.type.get=function(){return\"surface\"},Object.defineProperties(e.prototype,i),e}(vv),Yv=function(t){this.size=t.size,this.side=t.side,this.wireframe=t.wireframe,this.visible=t.visible,this.geometry=t.geometry,this.pickable=t.pickable,this.background=t.background,this.group=new Ae,this.wireframeGroup=new Ae,this.pickingGroup=new Ae,this.frontMeshes=[],this.backMeshes=[];var e=t,i=new t.constructor;e.makeMaterial(),i.makeMaterial(),i.geometry=t.geometry,i.wireframeGeometry=t.wireframeGeometry,i.setParameters(t.getParameters()),i.updateShader(),e.setParameters({side:\"front\"}),i.setParameters({side:\"back\",opacity:i.opacity}),this.buffer=t,this.frontBuffer=e,this.backBuffer=i};Yv.prototype.getMesh=function(t){var e,i;return t?(i=this.backBuffer.getPickingMesh(),e=this.frontBuffer.getPickingMesh()):(i=this.backBuffer.getMesh(),e=this.frontBuffer.getMesh()),this.frontMeshes.push(e),this.backMeshes.push(i),this.setParameters({side:this.side}),(new Ae).add(i,e)},Yv.prototype.getWireframeMesh=function(){return this.buffer.getWireframeMesh()},Yv.prototype.getPickingMesh=function(){return this.getMesh(!0)},Yv.prototype.setAttributes=function(t){this.buffer.setAttributes(t)},Yv.prototype.setParameters=function(t){t=Object.assign({},t),\"front\"===t.side?(this.frontMeshes.forEach(na),this.backMeshes.forEach(oa)):\"back\"===t.side?(this.frontMeshes.forEach(oa),this.backMeshes.forEach(na)):\"double\"===t.side&&(this.frontMeshes.forEach(na),this.backMeshes.forEach(na)),void 0!==t.side&&(this.side=t.side),delete t.side,this.frontBuffer.setParameters(t),void 0!==t.wireframe&&(this.wireframe=t.wireframe,this.setVisibility(this.visible)),delete t.wireframe,this.backBuffer.setParameters(t)},Yv.prototype.dispose=function(){this.frontBuffer.dispose(),this.backBuffer.dispose()},Yv.prototype.setVisibility=mv.prototype.setVisibility,aa.prototype=Object.assign(Object.create(ia.prototype),{constructor:aa,type:\"surface\",parameters:Object.assign({isolevelType:{type:\"select\",options:{value:\"value\",sigma:\"sigma\"}},isolevel:{type:\"number\",precision:2,max:1e3,min:-1e3},smooth:{type:\"integer\",precision:1,max:10,min:0},background:{type:\"boolean\",rebuild:!0},opaqueBack:{type:\"boolean\",buffer:!0},boxSize:{type:\"integer\",precision:1,max:100,min:0},colorVolume:{type:\"hidden\"},useWorker:{type:\"boolean\",rebuild:!0}},ia.prototype.parameters),init:function(t){var e=t||{};e.colorScheme=Hi(e.colorScheme,\"uniform\"),e.colorValue=Hi(e.colorValue,14540253),this.isolevelType=Hi(e.isolevelType,\"sigma\"),this.isolevel=Hi(e.isolevel,2),this.smooth=Hi(e.smooth,0),this.background=Hi(e.background,!1),this.opaqueBack=Hi(e.opaqueBack,!0),this.boxSize=Hi(e.boxSize,0),this.colorVolume=Hi(e.colorVolume,void 0),this.useWorker=Hi(e.useWorker,!0),ia.prototype.init.call(this,e)},attach:function(t){this.bufferList.forEach(function(t){this.viewer.add(t)},this),this.setVisibility(this.visible),t()},prepare:function(t){if(this.volume){var e;if(e=\"sigma\"===this.isolevelType?this.volume.getValueForSigma(this.isolevel):this.isolevel,!this.surface||this.__isolevel!==e||this.__smooth!==this.smooth||this.__boxSize!==this.boxSize||this.boxSize>0&&!this.__boxCenter.equals(this.boxCenter)){this.__isolevel=e,this.__smooth=this.smooth,this.__boxSize=this.boxSize,this.__boxCenter.copy(this.boxCenter),this.__box.copy(this.box);var i=function(e){this.surface=e,t()}.bind(this);this.useWorker?this.volume.getSurfaceWorker(e,this.smooth,this.boxCenter,this.boxSize,i):i(this.volume.getSurface(e,this.smooth,this.boxCenter,this.boxSize))}else t()}else t()},getSurfaceData:function(){return{position:this.surface.getPosition(),color:this.surface.getColor(this.getColorParams()),index:this.surface.getIndex(),normal:this.surface.getNormal()}},create:function(){var t=new qv(this.getSurfaceData(),this.getBufferParams({background:this.background,opaqueBack:this.opaqueBack,dullInterior:!1})),e=new Yv(t);this.bufferList.push(e)},update:function(t){if(0!==this.bufferList.length){t=t||{};var e={};t.position&&(e.position=this.surface.getPosition()),t.color&&(e.color=this.surface.getColor(this.getColorParams())),t.index&&(e.index=this.surface.getIndex()),t.normal&&(e.normal=this.surface.getNormal()),this.bufferList.forEach(function(t){t.setAttributes(e)})}},setParameters:function(t,e,i){return t&&void 0!==t.isolevelType&&this.volume&&(\"value\"===this.isolevelType&&\"sigma\"===t.isolevelType?this.isolevel=this.volume.getSigmaForValue(this.isolevel):\"sigma\"===this.isolevelType&&\"value\"===t.isolevelType&&(this.isolevel=this.volume.getValueForSigma(this.isolevel)),this.isolevelType=t.isolevelType),t&&t.boxCenter&&(this.boxCenter.copy(t.boxCenter),delete t.boxCenter),ia.prototype.setParameters.call(this,t,e,i),this.volume&&this.volume.getBox(this.boxCenter,this.boxSize,this.box),t&&void 0!==t.colorVolume&&(e.color=!0),this.surface&&(void 0!==t.isolevel||void 0!==t.smooth||void 0!==t.boxSize||this.boxSize>0&&!this.__box.equals(this.box))&&this.build({position:!0,color:!0,index:!0,normal:!0}),this},getColorParams:function(){var t=ia.prototype.getColorParams.call(this);return t.volume=this.colorVolume,t},dispose:function(){this.viewer.signals.ticked.remove(this.setBox,this),ia.prototype.dispose.call(this)}}),em.add(\"shader/Point.vert\",\"uniform float nearClip;\\nuniform float clipRadius;\\nuniform vec3 clipCenter;\\nuniform float size;\\nuniform float canvasHeight;\\nuniform float pixelRatio;\\nvarying vec3 vViewPosition;\\n#if defined( RADIUS_CLIP )\\nvarying vec3 vClipCenter;\\n#endif\\n#include color_pars_vertex\\n#include common\\nvoid main(){\\n#include color_vertex\\n#include begin_vertex\\n#include project_vertex\\n#ifdef USE_SIZEATTENUATION\\ngl_PointSize = size * pixelRatio * ( ( canvasHeight / 2.0 ) / -mvPosition.z );\\n#else\\ngl_PointSize = size * pixelRatio;\\n#endif\\nvViewPosition = -mvPosition.xyz;\\n#if defined( RADIUS_CLIP )\\nvClipCenter = -( modelViewMatrix * vec4( clipCenter, 1.0 ) ).xyz;\\n#endif\\n#include nearclip_vertex\\n#include radiusclip_vertex\\n}\"),em.add(\"shader/Point.frag\",\"uniform vec3 diffuse;\\nuniform float opacity;\\nuniform float nearClip;\\nuniform float clipRadius;\\nvarying vec3 vViewPosition;\\n#if defined( RADIUS_CLIP )\\nvarying vec3 vClipCenter;\\n#endif\\n#ifdef USE_MAP\\nuniform sampler2D map;\\n#endif\\n#include common\\n#include color_pars_fragment\\n#include fog_pars_fragment\\nvoid main(){\\n#include nearclip_fragment\\n#include radiusclip_fragment\\nvec3 outgoingLight = vec3( 0.0 );\\nvec4 diffuseColor = vec4( diffuse, 1.0 );\\n#ifdef USE_MAP\\ndiffuseColor *= texture2D( map, vec2( gl_PointCoord.x, 1.0 - gl_PointCoord.y ) );\\n#endif\\n#include color_fragment\\n#include alphatest_fragment\\noutgoingLight = diffuseColor.rgb;\\ngl_FragColor = vec4( outgoingLight, diffuseColor.a * opacity );\\n#include premultiplied_alpha_fragment\\n#include tonemapping_fragment\\n#include encodings_fragment\\n#include fog_fragment\\n}\");var Zv=function(t){function e(e,i){var r=i||{};t.call(this,e,r),this.pointSize=Hi(r.pointSize,1),this.sizeAttenuation=Hi(r.sizeAttenuation,!0),this.sortParticles=Hi(r.sortParticles,!1),this.alphaTest=Hi(r.alphaTest,.5),this.useTexture=Hi(r.useTexture,!1),this.forceTransparent=Hi(r.forceTransparent,!1),this.edgeBleach=Hi(r.edgeBleach,0),this.addUniforms({size:{value:this.pointSize},canvasHeight:{value:1},pixelRatio:{value:1},map:{value:null}})}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var i={parameters:{},point:{},vertexShader:{},fragmentShader:{}};return i.parameters.get=function(){return Object.assign.call(this,{pointSize:{uniform:\"size\"},sizeAttenuation:{updateShader:!0},sortParticles:{},alphaTest:{updateShader:!0},useTexture:{updateShader:!0},forceTransparent:{},edgeBleach:{uniform:!0}},t.prototype.parameters)},e.prototype.makeMaterial=function(){t.prototype.makeMaterial.call(this),this.makeTexture(),this.material.uniforms.map.value=this.tex,this.material.blending=$c,this.material.needsUpdate=!0,this.wireframeMaterial.uniforms.map.value=this.tex,this.wireframeMaterial.blending=$c,this.wireframeMaterial.needsUpdate=!0,this.pickingMaterial.uniforms.map.value=this.tex,this.pickingMaterial.blending=$c,this.pickingMaterial.needsUpdate=!0},e.prototype.makeTexture=function(){this.tex&&this.tex.dispose(),this.tex=sa({delta:this.edgeBleach})},e.prototype.getDefines=function(e){var i=t.prototype.getDefines.call(this,e);return this.sizeAttenuation&&(i.USE_SIZEATTENUATION=1),this.useTexture&&(i.USE_MAP=1),this.alphaTest>0&&this.alphaTest<=1&&(i.ALPHATEST=this.alphaTest.toPrecision(2)),i},e.prototype.setUniforms=function(e){e&&void 0!==e.edgeBleach&&(this.makeTexture(),e.map=this.tex),t.prototype.setUniforms.call(this,e)},e.prototype.dispose=function(){t.prototype.dispose.call(this),this.tex&&this.tex.dispose()},i.point.get=function(){return!0},i.vertexShader.get=function(){return\"Point.vert\"},i.fragmentShader.get=function(){return\"Point.frag\"},Object.defineProperties(e.prototype,i),e}(mv);ca.prototype=Object.assign(Object.create(ia.prototype),{constructor:ca,type:\"dot\",parameters:Object.assign({thresholdType:{type:\"select\",rebuild:!0,options:{value:\"value\",sigma:\"sigma\"}},thresholdMin:{type:\"number\",precision:3,max:1/0,min:-(1/0),rebuild:!0},thresholdMax:{type:\"number\",precision:3,max:1/0,min:-(1/0),rebuild:!0},thresholdOut:{type:\"boolean\",rebuild:!0},dotType:{type:\"select\",rebuild:!0,options:{\"\":\"\",sphere:\"sphere\",point:\"point\"}},radiusType:{type:\"select\",options:{\"\":\"\",value:\"value\",\"abs-value\":\"abs-value\",\"value-min\":\"value-min\",deviation:\"deviation\",size:\"size\"}},radius:{type:\"number\",precision:3,max:10,min:.001,property:\"size\"},scale:{type:\"number\",precision:3,max:10,min:.001},sphereDetail:!0,disableImpostor:!0,pointSize:{type:\"number\",precision:1,max:100,min:0,buffer:!0},sizeAttenuation:{type:\"boolean\",buffer:!0},sortParticles:{type:\"boolean\",rebuild:!0},useTexture:{type:\"boolean\",buffer:!0},alphaTest:{type:\"range\",step:.001,max:1,min:0,buffer:!0},forceTransparent:{type:\"boolean\",buffer:!0},edgeBleach:{type:\"range\",step:.001,max:1,min:0,buffer:!0}},ia.prototype.parameters,{colorScheme:{type:\"select\",update:\"color\",options:{\"\":\"\",value:\"value\",uniform:\"uniform\",random:\"random\"}}}),defaultSize:.1,init:function(t){var e=t||{};e.colorScheme=Hi(e.colorScheme,\"uniform\"),e.colorValue=Hi(e.colorValue,14540253),this.thresholdType=Hi(e.thresholdType,\"sigma\"),this.thresholdMin=Hi(e.thresholdMin,2),this.thresholdMax=Hi(e.thresholdMax,1/0),this.thresholdOut=Hi(e.thresholdOut,!1),this.dotType=Hi(e.dotType,\"point\"),this.radius=Hi(e.radius,.1),this.scale=Hi(e.scale,1),this.pointSize=Hi(e.pointSize,1),this.sizeAttenuation=Hi(e.sizeAttenuation,!0),this.sortParticles=Hi(e.sortParticles,!1),this.useTexture=Hi(e.useTexture,!1),this.alphaTest=Hi(e.alphaTest,.5),this.forceTransparent=Hi(e.forceTransparent,!1),this.edgeBleach=Hi(e.edgeBleach,0),ia.prototype.init.call(this,e)},attach:function(t){this.bufferList.forEach(function(t){\nthis.viewer.add(t)},this),this.setVisibility(this.visible),t()},create:function(){var t={};if(this.volume){var e,i,r=this.volume;\"sigma\"===this.thresholdType?(e=r.getValueForSigma(this.thresholdMin),i=r.getValueForSigma(this.thresholdMax)):(e=this.thresholdMin,i=this.thresholdMax),r.filterData(e,i,this.thresholdOut),t.position=r.getDataPosition(),t.color=r.getDataColor(this.getColorParams()),\"sphere\"===this.dotType&&(t.radius=r.getDataSize(this.radius,this.scale),t.pickingColor=r.getPickingDataColor(this.getColorParams()))}else{var n=this.surface;t.position=n.getPosition(),t.color=n.getColor(this.getColorParams()),\"sphere\"===this.dotType&&(t.radius=n.getSize(this.radius,this.scale),t.pickingColor=n.getPickingColor(this.getColorParams()))}\"sphere\"===this.dotType?this.dotBuffer=new Ko(t,this.getBufferParams({sphereDetail:this.sphereDetail,disableImpostor:this.disableImpostor,dullInterior:!1})):this.dotBuffer=new Zv(t,this.getBufferParams({pointSize:this.pointSize,sizeAttenuation:this.sizeAttenuation,sortParticles:this.sortParticles,useTexture:this.useTexture,alphaTest:this.alphaTest,forceTransparent:this.forceTransparent,edgeBleach:this.edgeBleach})),this.bufferList.push(this.dotBuffer)},update:function(t){if(0!==this.bufferList.length){t=t||{};var e={};t.color&&(this.volume?e.color=this.volume.getDataColor(this.getColorParams()):e.color=this.surface.getColor(this.getColorParams())),\"sphere\"===this.dotType&&(t.radius||t.scale)&&(this.volume?e.radius=this.volume.getDataSize(this.radius,this.scale):e.radius=this.surface.getSize(this.radius,this.scale)),this.dotBuffer.setAttributes(e)}},setParameters:function(t,e,i){return e=e||{},t&&void 0!==t.thresholdType&&this.volume instanceof Vo&&(\"value\"===this.thresholdType&&\"sigma\"===t.thresholdType?(this.thresholdMin=this.volume.getSigmaForValue(this.thresholdMin),this.thresholdMax=this.volume.getSigmaForValue(this.thresholdMax)):\"sigma\"===this.thresholdType&&\"value\"===t.thresholdType&&(this.thresholdMin=this.volume.getValueForSigma(this.thresholdMin),this.thresholdMax=this.volume.getValueForSigma(this.thresholdMax)),this.thresholdType=t.thresholdType),t&&void 0!==t.radiusType&&(\"radius\"===t.radiusType?this.radius=this.defaultSize:this.radius=t.radiusType,e.radius=!0,\"sphere\"!==this.dotType||Xp&&!this.disableImpostor||(i=!0)),t&&void 0!==t.radius&&(e.radius=!0,\"sphere\"!==this.dotType||Xp&&!this.disableImpostor||(i=!0)),t&&void 0!==t.scale&&(e.scale=!0,\"sphere\"!==this.dotType||Xp&&!this.disableImpostor||(i=!0)),ia.prototype.setParameters.call(this,t,e,i),this}}),em.add(\"shader/Image.vert\",\"uniform float clipRadius;\\nuniform vec3 clipCenter;\\nvarying vec2 vUv;\\nvarying vec3 vViewPosition;\\n#if defined( RADIUS_CLIP )\\nvarying vec3 vClipCenter;\\n#endif\\nvoid main() {\\n#include begin_vertex\\n#include project_vertex\\nvUv = uv;\\nvViewPosition = -mvPosition.xyz;\\n#if defined( RADIUS_CLIP )\\nvClipCenter = -( modelViewMatrix * vec4( clipCenter, 1.0 ) ).xyz;\\n#endif\\n}\"),em.add(\"shader/Image.frag\",\"uniform sampler2D map;\\nuniform float opacity;\\nuniform vec2 mapSize;\\nuniform float nearClip;\\nuniform float clipRadius;\\nvarying vec2 vUv;\\nvarying vec3 vViewPosition;\\n#if defined( RADIUS_CLIP )\\nvarying vec3 vClipCenter;\\n#endif\\n#include fog_pars_fragment\\n#if defined( CUBIC_INTERPOLATION )\\n#if defined( CATMULROM_FILTER ) || defined( MITCHELL_FILTER )\\n#if defined( CATMULROM_FILTER )\\nconst float B = 0.0;\\nconst float C = 0.5;\\n#elif defined( MITCHELL_FILTER )\\nconst float B = 0.333;\\nconst float C = 0.333;\\n#endif\\nfloat filter( float x ){\\nfloat f = x;\\nif( f < 0.0 )\\n{\\nf = -f;\\n}\\nif( f < 1.0 )\\n{\\nreturn ( ( 12.0 - 9.0 * B - 6.0 * C ) * ( f * f * f ) +\\n( -18.0 + 12.0 * B + 6.0 *C ) * ( f * f ) +\\n( 6.0 - 2.0 * B ) ) / 6.0;\\n}\\nelse if( f >= 1.0 && f < 2.0 )\\n{\\nreturn ( ( -B - 6.0 * C ) * ( f * f * f )\\n+ ( 6.0 * B + 30.0 * C ) * ( f *f ) +\\n( - ( 12.0 * B ) - 48.0 * C ) * f +\\n8.0 * B + 24.0 * C)/ 6.0;\\n}\\nelse\\n{\\nreturn 0.0;\\n}\\n}\\n#elif defined( BSPLINE_FILTER )\\nfloat filter( float x ){\\nfloat f = x;\\nif( f < 0.0 ){\\nf = -f;\\n}\\nif( f >= 0.0 && f <= 1.0 ){\\nreturn ( 2.0 / 3.0 ) + ( 0.5 ) * ( f*f*f ) - ( f*f );\\n}else if( f > 1.0 && f <= 2.0 ){\\nreturn 1.0 / 6.0 * pow( ( 2.0 - f ), 3.0 );\\n}\\nreturn 1.0;\\n}\\n#else\\nfloat filter( float x ){\\nreturn 1.0;\\n}\\n#endif\\nvec4 biCubic( sampler2D tex, vec2 texCoord ){\\nvec2 texelSize = 1.0 / mapSize;\\ntexCoord -= texelSize / 2.0;\\nvec4 nSum = vec4( 0.0 );\\nfloat nDenom = 0.0;\\nvec2 cell = fract( texCoord * mapSize );\\nfor( float m = -1.0; m <= 2.0; ++m ){\\nfor( float n = -1.0; n <= 2.0; ++n ){\\nvec4 vecData = texture2D(\\ntex, texCoord + texelSize * vec2( m, n )\\n);\\nfloat c = filter( m - cell.x ) * filter( -n + cell.y );\\nnSum += vecData * c;\\nnDenom += c;\\n}\\n}\\nreturn nSum / nDenom;\\n}\\n#endif\\nvoid main(){\\n#include nearclip_fragment\\n#include radiusclip_fragment\\n#if defined( CUBIC_INTERPOLATION )\\ngl_FragColor = biCubic( map, vUv );\\n#else\\ngl_FragColor = texture2D( map, vUv );\\n#endif\\ngl_FragColor.a *= opacity;\\nif( gl_FragColor.a < 0.01 )\\ndiscard;\\n#include fog_fragment\\n}\");var Kv=new Uint16Array([0,1,2,1,3,2]),Qv=new Float32Array([0,1,0,0,1,1,1,0]),Jv=function(t){function e(e,i,r,n,o){var a=o||{};t.call(this,{position:e,index:Kv},a),this.forceTransparent=!0,this.filter=Hi(a.filter,\"nearest\"),this.tex=new me(i,r,n),this.tex.flipY=!0,this.addUniforms({map:{value:null},mapSize:{value:new h(r,n)}}),this.geometry.addAttribute(\"uv\",new Rt(Qv,2))}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var i={parameters:{},vertexShader:{},fragmentShader:{}};return i.parameters.get=function(){return Object.assign.call(this,{filter:{updateShader:!0,uniform:!0}},t.prototype.parameters)},e.prototype.getDefines=function(e){var i=t.prototype.getDefines.call(this,e);return this.filter.startsWith(\"cubic\")&&(i.CUBIC_INTERPOLATION=1,this.filter.endsWith(\"bspline\")?i.BSPLINE_FILTER=1:this.filter.endsWith(\"catmulrom\")?i.CATMULROM_FILTER=1:this.filter.endsWith(\"mitchell\")&&(i.MITCHELL_FILTER=1)),i},e.prototype.updateTexture=function(){var t=this.tex;this.filter.startsWith(\"cubic\")?(t.minFilter=ku,t.magFilter=ku):\"linear\"===this.filter?(t.minFilter=zu,t.magFilter=zu):(t.minFilter=ku,t.magFilter=ku),t.needsUpdate=!0},e.prototype.makeMaterial=function(){t.prototype.makeMaterial.call(this),this.updateTexture();var e=this.material;e.uniforms.map.value=this.tex,e.blending=$c,e.needsUpdate=!0;var i=this.wireframeMaterial;i.uniforms.map.value=this.tex,i.blending=$c,i.needsUpdate=!0;var r=this.pickingMaterial;r.uniforms.map.value=this.tex,r.blending=$c,r.needsUpdate=!0},e.prototype.setUniforms=function(e){e&&void 0!==e.filter&&(this.updateTexture(),e.map=this.tex),t.prototype.setUniforms.call(this,e)},i.vertexShader.get=function(){return\"Image.vert\"},i.fragmentShader.get=function(){return\"Image.frag\"},Object.defineProperties(e.prototype,i),e}(mv);ua.prototype=Object.assign(Object.create(ia.prototype),{constructor:ua,type:\"slice\",parameters:Object.assign({filter:{type:\"select\",buffer:!0,options:{nearest:\"nearest\",linear:\"linear\",\"cubic-bspline\":\"cubic-bspline\",\"cubic-catmulrom\":\"cubic-catmulrom\",\"cubic-mitchell\":\"cubic-mitchell\"}},position:{type:\"range\",step:.1,max:100,min:1,rebuild:!0},dimension:{type:\"select\",rebuild:!0,options:{x:\"x\",y:\"y\",z:\"z\"}},thresholdType:{type:\"select\",rebuild:!0,options:{value:\"value\",sigma:\"sigma\"}},thresholdMin:{type:\"number\",precision:3,max:1/0,min:-(1/0),rebuild:!0},thresholdMax:{type:\"number\",precision:3,max:1/0,min:-(1/0),rebuild:!0}},ia.prototype.parameters,{flatShaded:null,side:null,wireframe:null,linewidth:null,colorScheme:null,roughness:null,metalness:null,diffuse:null}),init:function(t){var e=t||{};e.colorScheme=Hi(e.colorScheme,\"value\"),e.colorScale=Hi(e.colorScale,\"Spectral\"),ia.prototype.init.call(this,e),this.colorScheme=\"value\",this.dimension=Hi(e.dimension,\"x\"),this.filter=Hi(e.filter,\"cubic-bspline\"),this.position=Hi(e.position,30),this.thresholdType=Hi(e.thresholdType,\"sigma\"),this.thresholdMin=Hi(e.thresholdMin,-(1/0)),this.thresholdMax=Hi(e.thresholdMax,1/0)},attach:function(t){this.bufferList.forEach(function(t){this.viewer.add(t)},this),this.setVisibility(this.visible),t()},create:function(){function t(t){return Math.round(t/100*(i-1))}function e(t,e,i,n){return 3*(i*r.ny*r.nx+e*r.nx+t)+n}var i=this.position,r=this.volume;r.filterData(-(1/0),1/0,!1);var n,o,a,s,c,u=r.data,l=r.matrix,h=new Float32Array(12),d=0,f=0,p=0,m=r.nx,v=r.ny,y=r.nz,b=new g;\"x\"===this.dimension?(a=t(r.nx),s=r.ny-1,c=r.nz-1,n=r.nz,o=r.ny,d=a,m=d+1,b.set(a,0,0).applyMatrix4(l).toArray(h,0),b.set(a,s,0).applyMatrix4(l).toArray(h,3),b.set(a,0,c).applyMatrix4(l).toArray(h,6),b.set(a,s,c).applyMatrix4(l).toArray(h,9)):\"y\"===this.dimension?(a=r.nx-1,s=t(r.ny),c=r.nz-1,n=r.nz,o=r.nx,f=s,v=f+1,b.set(0,s,0).applyMatrix4(l).toArray(h,0),b.set(a,s,0).applyMatrix4(l).toArray(h,3),b.set(0,s,c).applyMatrix4(l).toArray(h,6),b.set(a,s,c).applyMatrix4(l).toArray(h,9)):\"z\"===this.dimension&&(a=r.nx-1,s=r.ny-1,c=t(r.nz),n=r.nx,o=r.ny,p=c,y=p+1,b.set(0,0,c).applyMatrix4(l).toArray(h,0),b.set(0,s,c).applyMatrix4(l).toArray(h,3),b.set(a,0,c).applyMatrix4(l).toArray(h,6),b.set(a,s,c).applyMatrix4(l).toArray(h,9));var x,_,w=0,S=new Uint8Array(n*o*4);\"sigma\"===this.thresholdType?(x=r.getValueForSigma(this.thresholdMin),_=r.getValueForSigma(this.thresholdMax)):(x=this.thresholdMin,_=this.thresholdMax);var A=this.getColorParams({volume:r});A.domain=[r.getDataMin(),r.getDataMax()];for(var M=Kp.getScheme(A),P=new Float32Array(3),C=f;Cx&&L<_?255:0,w+=4}var R=new Jv(h,S,n,o,this.getBufferParams({filter:this.filter}));this.bufferList.push(R)}}),la.prototype=Object.assign(Object.create(ia.prototype),{constructor:la,type:\"structure\",parameters:Object.assign({radiusType:{type:\"select\",options:sn.types},radius:{type:\"number\",precision:3,max:10,min:.001},scale:{type:\"number\",precision:3,max:10,min:.001},assembly:null,defaultAssembly:{type:\"hidden\"}},ia.prototype.parameters),defaultScale:{vdw:1,covalent:1,bfactor:.01,sstruc:1},defaultSize:1,init:function(t){var e=t||{};e.colorScheme=Hi(e.colorScheme,\"element\"),this.radius=Hi(e.radius,\"vdw\"),this.scale=Hi(e.scale,1),this.assembly=Hi(e.assembly,\"default\"),this.defaultAssembly=Hi(e.defaultAssembly,\"\"),\"auto\"===e.quality&&(e.quality=this.getQuality()),ia.prototype.init.call(this,e)},getAssembly:function(){var t=\"default\"===this.assembly?this.defaultAssembly:this.assembly;return this.structure.biomolDict[t]},getQuality:function(){var t,e=this.structureView,i=this.getAssembly();t=i?i.getAtomCount(e):e.atomCount,Hp&&(t*=4);var r=e.atomStore.count/e.residueStore.count<2;return r&&(t*=10),t<15e3?\"high\":t<8e4?\"medium\":\"low\"},create:function(){if(0!==this.structureView.atomCount){var t=this.getAssembly();if(t)t.partList.forEach(function(t,e){var i=t.getView(this.structureView);if(0!==i.atomCount){var r=this.createData(i,e);r&&(r.sview=i,r.instanceList=t.getInstanceList(),this.dataList.push(r))}},this);else{var e=this.createData(this.structureView,0);e&&(e.sview=this.structureView,this.dataList.push(e))}}},createData:function(){console.error(\"createData not implemented\")},update:function(t){return this.lazy&&!this.visible?void Object.assign(this.lazyProps.what,t):void this.dataList.forEach(function(e){e.bufferList.length>0&&this.updateData(t,e)},this)},updateData:function(){console.error(\"updateData not implemented\")},getColorParams:function(){var t=ia.prototype.getColorParams.call(this);return t.structure=this.structure,t},getAtomParams:function(t,e){return Object.assign({what:t,colorParams:this.getColorParams(),radiusParams:{radius:this.radius,scale:this.scale}},e)},getBondParams:function(t,e){return Object.assign({what:t,colorParams:this.getColorParams(),radiusParams:{radius:this.radius,scale:this.scale}},e)},setSelection:function(t,e){return this.selection.setString(t,e),this},setParameters:function(t,e,i){return e=e||{},t&&void 0!==t.radiusType&&(\"size\"===t.radiusType?this.radius=this.defaultSize:this.radius=t.radiusType,e.radius=!0,Xp&&!this.disableImpostor||(i=!0)),t&&void 0!==t.radius&&(e.radius=!0,Xp&&!this.disableImpostor||(i=!0)),t&&void 0!==t.scale&&(e.radius=!0,Xp&&!this.disableImpostor||(i=!0)),t&&void 0!==t.defaultAssembly&&(i=!0),ia.prototype.setParameters.call(this,t,e,i),this},getParameters:function(){var t=Object.assign(ia.prototype.getParameters.call(this),{sele:this.selection?this.selection.string:void 0,defaultAssembly:this.defaultAssembly});return t},attach:function(t){var e=this.viewer,i=this.bufferList;this.dataList.forEach(function(t){t.bufferList.forEach(function(r){i.push(r),e.add(r,t.instanceList)})}),this.setVisibility(this.visible),t()},clear:function(){this.dataList.length=0,ia.prototype.clear.call(this)},dispose:function(){this.structureView.dispose(),delete this.structure,delete this.structureView,ia.prototype.dispose.call(this)}}),em.add(\"shader/Line.vert\",\"uniform float nearClip;\\nuniform vec3 clipCenter;\\nvarying vec3 vViewPosition;\\n#if defined( RADIUS_CLIP )\\nvarying vec3 vClipCenter;\\n#endif\\n#include color_pars_vertex\\nvoid main(){\\n#include color_vertex\\n#include begin_vertex\\n#include project_vertex\\nvViewPosition = -mvPosition.xyz;\\n#if defined( RADIUS_CLIP )\\nvClipCenter = -( modelViewMatrix * vec4( clipCenter, 1.0 ) ).xyz;\\n#endif\\n#include nearclip_vertex\\n}\"),em.add(\"shader/Line.frag\",\"uniform float opacity;\\nuniform float nearClip;\\nuniform float clipRadius;\\nvarying vec3 vViewPosition;\\n#if defined( RADIUS_CLIP )\\nvarying vec3 vClipCenter;\\n#endif\\n#include common\\n#include color_pars_fragment\\n#include fog_pars_fragment\\nvoid main(){\\n#include nearclip_fragment\\n#include radiusclip_fragment\\ngl_FragColor = vec4( vColor, opacity );\\n#include premultiplied_alpha_fragment\\n#include tonemapping_fragment\\n#include encodings_fragment\\n#include fog_fragment\\n}\");var ty=function(t){function e(e,i){var r=e.position1.length/3,n=4*r;t.call(this,{position:new Float32Array(3*n),color:new Float32Array(3*n)},i),this.setAttributes(e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var i={line:{},vertexShader:{},fragmentShader:{}};return e.prototype.setAttributes=function(t){var e,i,r,n,o,a,s=this.geometry.attributes;t.position1&&t.position2&&(e=t.position1,i=t.position2,o=s.position.array,s.position.needsUpdate=!0),t.color&&t.color2&&(r=t.color,n=t.color2,a=s.color.array,s.color.needsUpdate=!0);for(var c,u,l,h,d,f,p,m,g,v,y,b=this.size,x=0;x5&&i>15e3||i>7e5){var u=Math.min(1.5,Math.max(.1,2e3/(i/n)));s&&(u=Math.min(u,.15)),e.addRepresentation(\"surface\",{sele:\"polymer\",surfaceType:\"sas\",probeRadius:1.4,scaleFactor:u,colorScheme:c,colorScale:\"RdYlBu\",useWorker:!1})}else i>25e4?e.addRepresentation(\"backbone\",{lineOnly:!0,colorScheme:c,colorScale:\"RdYlBu\"}):i>1e5?e.addRepresentation(\"backbone\",{quality:\"low\",disableImpostor:!0,colorScheme:c,colorScale:\"RdYlBu\",scale:2}):i>8e4?e.addRepresentation(\"backbone\",{colorScheme:c,colorScale:\"RdYlBu\",scale:2}):(e.addRepresentation(\"cartoon\",{color:c,colorScale:\"RdYlBu\",scale:.7,aspectRatio:5,quality:\"auto\"}),i<5e4&&e.addRepresentation(\"base\",{color:c,colorScale:\"RdYlBu\",quality:\"auto\"}),e.addRepresentation(\"ball+stick\",{sele:\"hetero and not ( water or ion )\",colorScheme:\"element\",scale:2,aspectRatio:1.5,bondScale:.3,bondSpacing:.75,quality:\"auto\"}));e.structure.frames.length&&e.addTrajectory()}else\"surface\"!==e.type&&\"volume\"!==e.type||e.addRepresentation(\"surface\");this.tasks.onZeroOnce(this.autoView,this)},hy.prototype.loadFile=function(t,e){var i=Object.assign({},this.defaultFileParams,e),r=new ry(this,i);r.name=Zi(t).name,this.addComponent(r);var n=this.tasks;n.increment();var o,a=function(t){return this.removeComponent(r),r=this.addComponentFromObject(t,i),\"script\"===r.type&&r.run(),i.defaultRepresentation&&this.defaultFileRepresentation(r),n.decrement(),r}.bind(this),s=function(t){throw r.setStatus(t),n.decrement(),t},c=Hi(i.ext,Zi(t).ext);return o=\"dcd\"===c?Promise.reject(\"loadFile: ext 'dcd' must be loaded into a structure component\"):kr(t,i),o.then(a,s)},hy.prototype.addComponent=function(t){return t?(this.compList.push(t),void this.signals.componentAdded.dispatch(t)):void qp.warn(\"Stage.addComponent: no component given\")},hy.prototype.addComponentFromObject=function(t,e){var i=rm.get(t.type);if(i){var r=new i(this,t,e);return this.addComponent(r),r}qp.warn(\"no component for object type\",t.type)},hy.prototype.removeComponent=function(t){var e=this.compList.indexOf(t);e!==-1&&(this.compList.splice(e,1),t.dispose(),this.signals.componentRemoved.dispatch(t))},hy.prototype.removeAllComponents=function(t){this.compList.slice().forEach(function(e){t&&e.type!==t||this.removeComponent(e)},this)},hy.prototype.handleResize=function(){this.viewer.handleResize()},hy.prototype.toggleFullscreen=function(t){function e(){return document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement}function i(){if(!e()&&r.lastFullscreenElement){var t=r.lastFullscreenElement;t.style.width=t.dataset.normalWidth,t.style.height=t.dataset.normalHeight,document.removeEventListener(\"fullscreenchange\",i),document.removeEventListener(\"mozfullscreenchange\",i),document.removeEventListener(\"webkitfullscreenchange\",i),document.removeEventListener(\"MSFullscreenChange\",i),r.handleResize(),r.signals.fullscreenChanged.dispatch(!1)}}if(!(document.fullscreenEnabled||document.mozFullScreenEnabled||document.webkitFullscreenEnabled||document.msFullscreenEnabled))return void qp.log(\"fullscreen mode (currently) not possible\");var r=this;t=t||this.viewer.container,this.lastFullscreenElement=t,e()?document.exitFullscreen?document.exitFullscreen():document.msExitFullscreen?document.msExitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.webkitExitFullscreen&&document.webkitExitFullscreen():(t.dataset.normalWidth=t.style.width,t.dataset.normalHeight=t.style.height,t.style.width=screen.width+\"px\",t.style.height=screen.height+\"px\",t.requestFullscreen?t.requestFullscreen():t.msRequestFullscreen?t.msRequestFullscreen():t.mozRequestFullScreen?t.mozRequestFullScreen():t.webkitRequestFullscreen&&t.webkitRequestFullscreen(),document.addEventListener(\"fullscreenchange\",i),document.addEventListener(\"mozfullscreenchange\",i),document.addEventListener(\"webkitfullscreenchange\",i),document.addEventListener(\"MSFullscreenChange\",i),this.handleResize(),this.signals.fullscreenChanged.dispatch(!0),setTimeout(function(){r.handleResize()},100))},hy.prototype.setSpin=function(t,e){Array.isArray(t)&&(t=(new g).fromArray(t)),this.spinAnimation.axis=t,this.spinAnimation.angle=e},hy.prototype.getZoomForBox=function(t){var e=t.size(ly),i=Math.max(e.x,e.y,e.z),r=Math.min(e.x,e.y,e.z),n=i+Math.sqrt(r),o=mr(this.viewer.perspectiveCamera.fov),a=this.viewer.width,s=this.viewer.height,c=a/s,u=s=this.end||t=this.end?e=this.start:\"backward\"===this.direction&&t<=this.start&&(e=this.end),this.traj.setFrame(e),this._stopFlag=!1,this._animate(),this.signals.startedRunning.dispatch()}},dy.prototype.pause=function(){this._running&&(this._stopFlag=!0,this.signals.haltedRunning.dispatch())},dy.prototype.stop=function(){this.traj.setFrame(this.start),this.pause()};var fy=\"ACDEFGHIKLMNPQRSTVWY\",py=\"ARNDCQEGHILKMFPSTWYVBZ?\",my=[[4,0,-2,-1,-2,0,-2,-1,-1,-1,-1,-2,-1,-1,-1,1,0,0,-3,-2],[0,9,-3,-4,-2,-3,-3,-1,-3,-1,-1,-3,-3,-3,-3,-1,-1,-1,-2,-2],[-2,-3,6,2,-3,-1,-1,-3,-1,-4,-3,1,-1,0,-2,0,-1,-3,-4,-3],[-1,-4,2,5,-3,-2,0,-3,1,-3,-2,0,-1,2,0,0,-1,-2,-3,-2],[-2,-2,-3,-3,6,-3,-1,0,-3,0,0,-3,-4,-3,-3,-2,-2,-1,1,3],[0,-3,-1,-2,-3,6,-2,-4,-2,-4,-3,0,-2,-2,-2,0,-2,-3,-2,-3],[-2,-3,-1,0,-1,-2,8,-3,-1,-3,-2,1,-2,0,0,-1,-2,-3,-2,2],[-1,-1,-3,-3,0,-4,-3,4,-3,2,1,-3,-3,-3,-3,-2,-1,3,-3,-1],[-1,-3,-1,1,-3,-2,-1,-3,5,-2,-1,0,-1,1,2,0,-1,-2,-3,-2],[-1,-1,-4,-3,0,-4,-3,2,-2,4,2,-3,-3,-2,-2,-2,-1,1,-2,-1],[-1,-1,-3,-2,0,-3,-2,1,-1,2,5,-2,-2,0,-1,-1,-1,1,-1,-1],[-2,-3,1,0,-3,0,1,-3,0,-3,-2,6,-2,0,0,1,0,-3,-4,-2],[-1,-3,-1,-1,-4,-2,-2,-3,-1,-3,-2,-2,7,-1,-2,-1,-1,-2,-4,-3],[-1,-3,0,2,-3,-2,0,-3,1,-2,0,0,-1,5,1,0,-1,-2,-2,-1],[-1,-3,-2,0,-3,-2,0,-3,2,-2,-1,0,-2,1,5,-1,-1,-3,-3,-2],[1,-1,0,0,-2,0,-1,-2,0,-2,-1,1,-1,0,-1,4,1,-2,-3,-2],[0,-1,-1,-1,-2,-2,-2,-1,-1,-1,-1,0,-1,-1,-1,1,5,0,-2,-2],[0,-1,-3,-2,-1,-3,-3,3,-2,1,1,-3,-2,-2,-3,-2,0,4,-3,-1],[-3,-2,-4,-3,1,-2,-2,-3,-3,-2,-1,-4,-4,-2,-3,-3,-2,-3,11,2],[-2,-2,-3,-2,3,-3,2,-1,-2,-1,-1,-2,-3,-1,-2,-2,-2,-1,2,7]],gy=[[4,-1,-2,-2,0,-1,-1,0,-2,-1,-1,-1,-1,-2,-1,1,0,-3,-2,0,-2,-1,0],[-1,5,0,-2,-3,1,0,-2,0,-3,-2,2,-1,-3,-2,-1,-1,-3,-2,-3,-1,0,-1],[-2,0,6,1,-3,0,0,0,1,-3,-3,0,-2,-3,-2,1,0,-4,-2,-3,3,0,-1],[-2,-2,1,6,-3,0,2,-1,-1,-3,-4,-1,-3,-3,-1,0,-1,-4,-3,-3,4,1,-1],[0,-3,-3,-3,9,-3,-4,-3,-3,-1,-1,-3,-1,-2,-3,-1,-1,-2,-2,-1,-3,-3,-2],[-1,1,0,0,-3,5,2,-2,0,-3,-2,1,0,-3,-1,0,-1,-2,-1,-2,0,3,-1],[-1,0,0,2,-4,2,5,-2,0,-3,-3,1,-2,-3,-1,0,-1,-3,-2,-2,1,4,-1],[0,-2,0,-1,-3,-2,-2,6,-2,-4,-4,-2,-3,-3,-2,0,-2,-2,-3,-3,-1,-2,-1],[-2,0,1,-1,-3,0,0,-2,8,-3,-3,-1,-2,-1,-2,-1,-2,-2,2,-3,0,0,-1],[-1,-3,-3,-3,-1,-3,-3,-4,-3,4,2,-3,1,0,-3,-2,-1,-3,-1,3,-3,-3,-1],[-1,-2,-3,-4,-1,-2,-3,-4,-3,2,4,-2,2,0,-3,-2,-1,-2,-1,1,-4,-3,-1],[-1,2,0,-1,-3,1,1,-2,-1,-3,-2,5,-1,-3,-1,0,-1,-3,-2,-2,0,1,-1],[-1,-1,-2,-3,-1,0,-2,-3,-2,1,2,-1,5,0,-2,-1,-1,-1,-1,1,-3,-1,-1],[-2,-3,-3,-3,-2,-3,-3,-3,-1,0,0,-3,0,6,-4,-2,-2,1,3,-1,-3,-3,-1],[-1,-2,-2,-1,-3,-1,-1,-2,-2,-3,-3,-1,-2,-4,7,-1,-1,-4,-3,-2,-2,-1,-2],[1,-1,1,0,-1,0,0,0,-1,-2,-2,0,-1,-2,-1,4,1,-3,-2,-2,0,0,0],[0,-1,0,-1,-1,-1,-1,-2,-2,-1,-1,-1,-1,-2,-1,1,5,-2,-2,0,-1,-1,0],[-3,-3,-4,-4,-2,-2,-3,-2,-2,-3,-2,-3,-1,1,-4,-3,-2,11,2,-3,-4,-3,-2],[-2,-2,-2,-3,-2,-1,-2,-3,2,-1,-1,-2,-1,3,-3,-2,-2,2,7,-1,-3,-2,-1],[0,-3,-3,-3,-1,-2,-2,-3,-3,3,1,-2,1,-1,-2,-2,0,-3,-1,4,-3,-2,-1],[-2,-1,3,4,-3,0,1,-1,0,-3,-4,0,-3,-3,-2,0,-1,-4,-3,-3,4,1,-1],[-1,0,0,1,-3,3,4,-2,0,-3,-3,1,-1,-3,-1,0,-1,-3,-2,-2,1,4,-1],[0,-1,-1,-1,-2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-2,0,0,-2,-1,-1,-1,-1,-1]],vy=function(){return{blosum62:ma(py,gy),blosum62x:ma(fy,my)}}(),yy=function(t,e,i,r,n){this.seq1=t,this.seq2=e,this.gapPenalty=i||-10,this.gapExtensionPenalty=r||-1,this.substMatrix=n||\"blosum62\",this.substMatrix&&(this.substMatrix=vy[this.substMatrix])};yy.prototype.initMatrices=function(){var t=this;this.n=this.seq1.length,this.m=this.seq2.length,this.score=void 0,this.ali=\"\",this.S=[],this.V=[],this.H=[];var e,i;for(e=0;e<=this.n;++e)for(t.S[e]=[],t.V[e]=[],t.H[e]=[],i=0;i<=this.m;++i)t.S[e][i]=0,t.V[e][i]=0,t.H[e][i]=0;for(e=0;e<=this.n;++e)t.S[e][0]=t.gap(0),t.H[e][0]=-(1/0);for(i=0;i<=this.m;++i)t.S[0][i]=t.gap(0),t.V[0][i]=-(1/0);this.S[0][0]=0},yy.prototype.gap=function(t){return this.gapPenalty+t*this.gapExtensionPenalty},yy.prototype.makeScoreFn=function(){var t,e,i=this.seq1,r=this.seq2,n=this.substMatrix;return n?function(o,a){t=i[o],e=r[a];try{return n[t][e]}catch(t){return-4}}:(qp.warn(\"Alignment: no subst matrix\"),function(n,o){return t=i[n],e=r[o],t===e?5:-3})},yy.prototype.calc=function(){t.Debug&&qp.time(\"Alignment.calc\"),this.initMatrices();var e,i,r,n,o,a,s,c=this.gap(0),u=this.makeScoreFn(),l=this.gapExtensionPenalty,h=this.V,d=this.H,f=this.S,p=this.n,m=this.m;for(a=1;a<=p;++a)for(i=f[a-1],e=h[a-1],r=h[a],n=d[a],o=f[a],s=1;s<=m;++s)r[s]=Math.max(i[s]+c,e[s]+l),n[s]=Math.max(o[s-1]+c,n[s-1]+l),o[s]=Math.max(i[s-1]+u(a-1,s-1),r[s],n[s]);t.Debug&&qp.timeEnd(\"Alignment.calc\"),t.Debug&&qp.log(this.S,this.V,this.H)},yy.prototype.trace=function(){var e=this;t.Debug&&qp.time(\"Alignment.trace\"),this.ali1=\"\",this.ali2=\"\";var i=this.makeScoreFn(),r=this.n,n=this.m,o=\"S\";for(this.S[r][n]>=this.V[r][n]&&this.S[r][n]>=this.V[r][n]?(o=\"S\",this.score=this.S[r][n]):this.V[r][n]>=this.H[r][n]?(o=\"V\",this.score=this.V[r][n]):(o=\"H\",this.score=this.H[r][n]),t.Debug&&qp.log(\"Alignment: SCORE\",this.score),t.Debug&&qp.log(\"Alignment: S, V, H\",this.S[r][n],this.V[r][n],this.H[r][n]);r>0&&n>0;)\"S\"===o?e.S[r][n]===e.S[r-1][n-1]+i(r-1,n-1)?(e.ali1=e.seq1[r-1]+e.ali1,e.ali2=e.seq2[n-1]+e.ali2,--r,--n,o=\"S\"):e.S[r][n]===e.V[r][n]?o=\"V\":e.S[r][n]===e.H[r][n]?o=\"H\":(--r,--n):\"V\"===o?e.V[r][n]===e.V[r-1][n]+e.gapExtensionPenalty?(e.ali1=e.seq1[r-1]+e.ali1,e.ali2=\"-\"+e.ali2,--r,o=\"V\"):e.V[r][n]===e.S[r-1][n]+e.gap(0)?(e.ali1=e.seq1[r-1]+e.ali1,e.ali2=\"-\"+e.ali2,--r,o=\"S\"):--r:\"H\"===o?e.H[r][n]===e.H[r][n-1]+e.gapExtensionPenalty?(e.ali1=\"-\"+e.ali1,e.ali2=e.seq2[n-1]+e.ali2,--n,o=\"H\"):e.H[r][n]===e.S[r][n-1]+e.gap(0)?(e.ali1=\"-\"+e.ali1,e.ali2=e.seq2[n-1]+e.ali2,--n,o=\"S\"):--n:qp.error(\"Alignment: no matrix\");for(;r>0;)e.ali1=e.seq1[r-1]+e.ali1,e.ali2=\"-\"+e.ali2,--r;for(;n>0;)e.ali1=\"-\"+e.ali1,e.ali2=e.seq2[n-1]+e.ali2,--n;t.Debug&&qp.timeEnd(\"Alignment.trace\"),t.Debug&&qp.log([this.ali1,this.ali2])};var by=function(t){function e(e){if(t.call(this,e),e.scale||(this.scale=\"roygb\"),e.domain){var i=this.getScale();this.atomColor=function(t){return i(t.index)}}else{var r={};this.structure.eachModel(function(t){this.domain=[t.atomOffset,t.atomEnd],r[t.index]=this.getScale()}.bind(this)),this.atomColor=function(t){return r[t.modelIndex](t.index)}}}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Bp);Kp.add(\"atomindex\",by);var xy=function(t){function e(e){if(t.call(this,e),e.scale||(this.scale=\"OrRd\"),!e.domain){var i,r=1/0,n=-(1/0);e.sele&&(i=new Selection(e.sele)),this.structure.eachAtom(function(t){var e=t.bfactor;r=Math.min(r,e),n=Math.max(n,e)},i),this.domain=[r,n]}var o=this.getScale();this.atomColor=function(t){return o(t.bfactor)}}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Bp);Kp.add(\"bfactor\",xy);var _y=function(t){function e(e){t.call(this,e),e.scale||(this.scale=\"Spectral\");var i={},r={};this.structure.eachModel(function(t){var e=0,n={};t.eachChain(function(t){void 0===n[t.chainid]&&(n[t.chainid]=e,e+=1)}),this.domain=[0,e-1],i[t.index]=n,r[t.index]=this.getScale()}.bind(this)),this.atomColor=function(t){var e=i[t.modelIndex];return r[t.modelIndex](e[t.chainid])}}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Bp);Kp.add(\"chainid\",_y);var wy=function(t){function e(e){if(t.call(this,e),e.scale||(this.scale=\"Spectral\"),e.domain){var i=this.getScale();this.atomColor=function(t){return i(t.chainIndex)}}else{var r={};this.structure.eachModel(function(t){this.domain=[t.chainOffset,t.chainEnd],r[t.index]=this.getScale()}.bind(this)),this.atomColor=function(t){return r[t.modelIndex](t.chainIndex)}}}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Bp);Kp.add(\"chainindex\",wy);var Sy=function(t){function e(e){t.call(this,e),e.scale||(this.scale=\"Spectral\");var i={},r={};this.structure.eachModel(function(t){var e=0,n={};t.eachChain(function(t){void 0===n[t.chainname]&&(n[t.chainname]=e,e+=1)}),this.domain=[0,e-1],i[t.index]=n,r[t.index]=this.getScale()}.bind(this)),this.atomColor=function(t){var e=i[t.modelIndex];return r[t.modelIndex](e[t.chainname])}}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Bp);Kp.add(\"chainname\",Sy);var Ay=function(t){function e(e){t.call(this,e),e.scale||(this.scale=\"RdYlBu\"),this.rsrzScale=this.getScale({domain:[2,0]}),this.rsccScale=this.getScale({domain:[.678,1]});var i=e.structure.validation||{};this.rsrzDict=i.rsrzDict||{},this.rsccDict=i.rsccDict||{}}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.atomColor=function(t){var e=t.resno;t.inscode&&(e+=\"^\"+t.inscode),t.chainname&&(e+=\":\"+t.chainname),e+=\"/\"+t.modelIndex;var i=this.rsrzDict[e];if(void 0!==i)return this.rsrzScale(i);var r=this.rsccDict[e];return void 0!==r?this.rsccScale(r):9474192},e}(Bp);Kp.add(\"densityfit\",Ay);var My={H:16777215,HE:14286847,LI:13402367,BE:12779264,B:16758197,C:9474192,N:3166456,O:16715021,F:9494608,NE:11789301,NA:11230450,MG:9109248,AL:12560038,SI:1578e4,P:16744448,S:16777008,CL:2093087,AR:8442339,K:9388244,CA:4062976,SC:15132390,TI:12567239,V:10921643,CR:9083335,MN:10255047,FE:14706227,CO:15765664,NI:5296208,CU:13140019,ZN:8224944,GA:12750735,GE:6721423,AS:12419299,SE:16752896,BR:10889513,KR:6076625,RB:7351984,SR:65280,Y:9764863,ZR:9756896,NB:7586505,MO:5551541,TC:3907230,RU:2396047,RH:687500,PD:27013,AG:12632256,CD:16767375,IN:10909043,SN:6717568,SB:10380213,TE:13924864,I:9699476,XE:9699476,CS:5707663,BA:51456,LA:7394559,CE:16777159,PR:14286791,ND:13107143,PM:10747847,SM:9437127,EU:6422471,GD:4587463,TB:3211207,DY:2097095,HO:65436,ER:58997,TM:54354,YB:48952,LU:43812,HF:5096191,TA:5089023,W:2200790,RE:2522539,OS:2516630,IR:1528967,PT:13684960,AU:16765219,HG:12105936,TL:10900557,PB:5724513,BI:10375093,PO:11230208,AT:7688005,RN:4358806,FR:4325478,RA:32e3,AC:7384058,TH:47871,PA:41471,U:36863,NP:33023,PU:27647,AM:5528818,CM:7888099,BK:9064419,CF:10565332,ES:11739092,FM:11739066,MD:11734438,NO:12389767,LR:13041766,RF:13369433,DB:13697103,SG:14221381,BH:14680120,HS:15073326,MT:15400998,DS:16777215,RG:16777215,CN:16777215,UUT:16777215,FL:16777215,UUP:16777215,LV:16777215,UUH:16777215,D:16777152,T:16777120},Py=16777215,Cy=function(t){function e(e){var i=e||{};i.value=Hi(i.value,My.C),t.call(this,i)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.atomColor=function(t){var e=t.element;return\"C\"===e?this.value:My[e]||Py},e}(Bp);Kp.add(\"element\",Cy);var Ty=function(t){function e(e){t.call(this,e),e.scale||(this.scale=\"Spectral\"),e.domain||(this.domain=[0,this.structure.entityList.length-1]);var i=this.getScale();this.atomColor=function(t){return i(t.entityIndex)}}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Bp);Kp.add(\"entityindex\",Ty);var Ey=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.atomColor=function(t){var e=t.entity,i=e?e.entityType:void 0;switch(i){case lg:return 8374655;case hg:return 16629894;case dg:return 12496596;case fg:return 3697840;default:return 16777113}},e}(Bp);Kp.add(\"entitytype\",Ey);var Iy=function(t){function e(e){t.call(this,e);var i=e.structure.validation||{};this.geoAtomDict=i.geoAtomDict||{},this.geoDict=i.geoDict||{}}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.atomColor=function(t){var e=t.resno;t.inscode&&(e+=\"^\"+t.inscode),t.chainname&&(e+=\":\"+t.chainname),e+=\"/\"+t.modelIndex;var i,r=this.geoAtomDict[e];if(void 0!==r){var n=r[t.atomname]||0;i=yr(n)}else i=this.geoDict[e]||0;return 0===i?2188972:1===i?16703627:2===i?16018755:i>=3?10813478:9474192},e}(Bp);Kp.add(\"geoquality\",Iy);var Ly=function(t){function e(e){t.call(this,e),e.scale||(this.scale=\"RdYlGn\");var i,r=0,n={};for(i in zg)n[i]=zg[i][r];if(!e.domain){var o,a=1/0,s=-(1/0);for(i in n)o=n[i],a=Math.min(a,o),s=Math.max(s,o);this.domain=[a,0,s]}var c=this.getScale();this.atomColor=function(t){return c(n[t.resname]||Ug)}}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Bp);Kp.add(\"hydrophobicity\",Ly);var Ry=function(t){function e(e){t.call(this,e),e.scale||(this.scale=\"roygb\"),e.domain||(this.domain=[0,this.structure.modelStore.count]);var i=this.getScale();this.atomColor=function(t){return i(t.modelIndex)}}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Bp);Kp.add(\"modelindex\",Ry);var Oy=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.atomColor=function(t){switch(t.residueType.moleculeType){case mg:return 3697840;case gg:return 15729279;case vg:return 12496596;case yg:return 16629894;case bg:return 12540695;case xg:return 8374655;default:return 16777113}},e}(Bp);Kp.add(\"moleculetype\",Oy);var Dy=function(t){function e(e){t.call(this,e),e.scale||(this.scale=\"PuBu\"),e.domain||(this.domain=[0,1]);var i=this.getScale();this.atomColor=function(t){return i(t.occupancy)}}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Bp);Kp.add(\"occupancy\",Dy);var Ny=function(t){function e(e){t.call(this,e),this.structure&&(this.offset=this.structure.atomStore.count,e.backbone?this.offset+=this.structure.bondStore.count:e.rung&&(this.offset+=this.structure.bondStore.count,this.offset+=this.structure.backboneBondStore.count)),this.gidPool||(console.warn(\"no gidPool\"),this.gidPool={getGid:function(){return 0}})}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.atomColor=function(t){return this.gidPool.getGid(this.structure,t.index)},e.prototype.bondColor=function(t){return this.gidPool.getGid(this.structure,this.offset+t.index)},e.prototype.volumeColor=function(t){return this.gidPool.getGid(this.volume,t)},e}(Bp);Kp.add(\"picking\",Ny);var ky=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.atomColor=function(){return 16777215*Math.random()},e.prototype.volumeColor=function(){return 16777215*Math.random()},e.prototype.positionColor=function(){return 16777215*Math.random()},e}(Bp);Kp.add(\"random\",ky);var Fy=function(t){function e(e){if(t.call(this,e),e.scale||(this.scale=\"roygb\"),e.domain){var i=this.getScale();this.atomColor=function(t){return i(t.residueIndex)}}else{var r={};this.structure.eachChain(function(t){this.domain=[t.residueOffset,t.residueEnd],r[t.index]=this.getScale()}.bind(this)),this.atomColor=function(t){return r[t.chainIndex](t.residueIndex)}}}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Bp);Kp.add(\"residueindex\",Fy);var By={ALA:9240460,ARG:124,ASN:16743536,ASP:10485826,CYS:16777072,GLN:16731212,GLU:6684672,GLY:16777215,HIS:7368959,ILE:19456,LEU:4546117,LYS:4671416,MET:12099650,PHE:5459026,PRO:5395026,SER:16740418,THR:12078080,TRP:5195264,TYR:9203788,VAL:16747775,ASX:16711935,GLX:16711935,ASH:16711935,GLH:16711935,A:10526975,G:16740464,I:8454143,C:16747595,T:10551200,U:16744576,DA:10526975,DG:16740464,DI:8454143,DC:16747595,DT:10551200,DU:16744576},zy=16711935,Uy=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.atomColor=function(t){return By[t.resname]||zy},e}(Bp);Kp.add(\"resname\",Uy);var jy={alphaHelix:16711808,threeTenHelix:10485888,piHelix:6291584,betaStrand:16762880,betaTurn:6324479,coil:16777215,dna:11403518,rna:16580962,carbohydrate:10921722},$y=8421504,Vy=function(t){function e(e){t.call(this,e),this.rp=this.structure.getResidueProxy()}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.atomColor=function(t){var e=t.sstruc,i=this.rp;return\"h\"===e?jy.alphaHelix:\"g\"===e?jy.threeTenHelix:\"i\"===e?jy.piHelix:\"e\"===e||\"b\"===e?jy.betaStrand:\"t\"===e?jy.betaTurn:(i.index=t.residueIndex,i.isDna()?jy.dna:i.isRna()?jy.rna:i.isSaccharide()?jy.carbohydrate:i.isProtein()||\"s\"===e||\"l\"===e?jy.coil:$y)},e}(Bp);Kp.add(\"sstruc\",Vy);var Gy=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.atomColor=function(){return this.value},e.prototype.bondColor=function(){return this.value},e.prototype.valueColor=function(){return this.value},e.prototype.volumeColor=function(){return this.value},e}(Bp);Kp.add(\"uniform\",Gy);var Hy=function(t){function e(e){t.call(this,e);var i=this.getScale();this.volumeColor=function(t){return i(this.volume.data[t])}}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Bp);Kp.add(\"value\",Hy);var Wy=function(t){function e(e){t.call(this,e);var i=this.volume;if(i&&i.inverseMatrix){var r=this.getScale(),n=i.inverseMatrix,o=i.__data,a=i.nx,s=i.ny,c=new g;this.positionColor=function(t){c.copy(t),c.applyMatrix4(n),c.round();var e=(c.z*s+c.y)*a+c.x;return r(o[e])}}else{var u=this.value;this.positionColor=function(){return u}}}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Bp);Kp.add(\"volume\",Wy);var Xy=function(t){function e(e,i,r){var n=this,o=r||{};o.name=Hi(o.name,i.name),t.call(this,e,o),this.script=i,this.status=\"loaded\",this.script.signals.nameChanged.add(function(t){n.setName(t)})}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var i={type:{}};return i.type.get=function(){return\"script\"},e.prototype.addRepresentation=function(){},e.prototype.removeRepresentation=function(){},e.prototype.run=function(){var t=this;this.setStatus(\"running\"),this.script.call(this.stage).then(function(){t.setStatus(\"finished\")}),this.setStatus(\"called\")},e.prototype.dispose=function(){this.signals.disposed.dispatch()},e.prototype.setVisibility=function(){},e.prototype.getCenter=function(){},e.prototype.getZoom=function(){},e.prototype.getBox=function(){},Object.defineProperties(e.prototype,i),e}(ry);rm.add(\"script\",Xy);var qy=function(t){function e(e,i,r){var n=r||{};n.name=Hi(n.name,i.name),t.call(this,e,n),this.shape=i}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var i={type:{}};return i.type.get=function(){return\"shape\"},e.prototype.addRepresentation=function(e,i){return t.prototype.addRepresentation.call(this,e,this.shape,i)},e.prototype.getBox=function(){return this.shape.boundingBox},e.prototype.getCenter=function(){return this.shape.center},e.prototype.dispose=function(){this.shape.dispose(),t.prototype.dispose.call(this)},Object.defineProperties(e.prototype,i),e}(ry);rm.add(\"shape\",qy);var Yy=[\"frameChanged\",\"playerChanged\",\"gotNumframes\",\"parametersChanged\"],Zy=function(t){function e(e,i,r,n){var o=this,a=r||{};a.name=Hi(a.name,i.name),t.call(this,e,a),this.trajectory=i,this.parent=n,this.status=\"loaded\",this.defaultStep=Hi(a.defaultStep,void 0),this.defaultTimeout=Hi(a.defaultTimeout,50),this.defaultInterpolateType=Hi(a.defaultInterpolateType,\"\"),this.defaultInterpolateStep=Hi(a.defaultInterpolateStep,5),this.defaultMode=Hi(a.defaultMode,\"loop\"),this.defaultDirection=Hi(a.defaultDirection,\"forward\"),i.signals.frameChanged.add(function(t){o.signals.frameChanged.dispatch(t)}),i.signals.playerChanged.add(function(t){o.signals.playerChanged.dispatch(t)}),i.signals.gotNumframes.add(function(t){o.signals.gotNumframes.dispatch(t)}),void 0!==a.initialFrame&&this.setFrame(a.initialFrame)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var i={type:{},_signalNames:{}};return i.type.get=function(){return\"trajectory\"},i._signalNames.get=function(){return t.prototype._signalNames.concat(Yy)},e.prototype.addRepresentation=function(e,i){return t.prototype.addRepresentation.call(this,e,this.trajectory,i)},e.prototype.setFrame=function(t){this.trajectory.setFrame(t)},e.prototype.setParameters=function(t){return this.trajectory.setParameters(t),this.signals.parametersChanged.dispatch(t),this},e.prototype.dispose=function(){this.trajectory.dispose(),t.prototype.dispose.call(this)},e.prototype.getCenter=function(){},Object.defineProperties(e.prototype,i),e}(ry),Ky=function(t){function e(e,i,r){t.call(this,\"\",i,r),this.name=e.name,this.path=e.path,this.frames=e.coordinates,this.boxes=e.boxes}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var i={type:{}};return i.type.get=function(){return\"frames\"},e.prototype.makeAtomIndices=function(){\"StructureView\"===this.structure.type?this.atomIndices=this.structure.getAtomIndices():this.atomIndices=null},e.prototype._loadFrame=function(t,e){var i,r=this.frames[t];if(this.atomIndices){var n=this.atomIndices,o=n.length;i=new Float32Array(3*o);for(var a=0;a0&&(r=\"( \"+e.join(\" ) AND ( \")+\" )\"),new Tr(r)},getStructure:function(){return this.structure.getStructure()},eachBond:function(t,e){this.structure.eachBond(t,this.getSelection(e))},eachAtom:function(t,e){var i=this.getAtomProxy(),r=this.getAtomSet(e),n=this.atomStore.count;if(r&&r.size()0&&i65535?Uint32Array:Uint16Array,y=new v(g);t.call(this,{position:d,color:f,index:y,normal:p,pickingColor:m},n),this.aspectRatio=Hi(n.aspectRatio,1),this.radialSegments=o,this.capped=a,this.capVertices=s,this.capTriangles=c,this.size2=u,this.setAttributes(r),this.meshIndex=y,this.makeIndex()}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.setAttributes=function(t){var e,i,r,n,o,a,s,c,u,l,h,d=this.aspectRatio,f=this.size2,p=f-1,m=this.radialSegments,g=this.geometry.attributes;t.position&&(e=t.position,i=t.normal,r=t.binormal,n=t.tangent,a=t.size,c=g.position.array,l=g.normal.array,g.position.needsUpdate=!0,g.normal.needsUpdate=!0),t.color&&(o=t.color,u=g.color.array,g.color.needsUpdate=!0),t.pickingColor&&(s=t.pickingColor,h=g.pickingColor.array,g.pickingColor.needsUpdate=!0);var v,y,b,x,_,w,S,A,M,P,C,T,E,I,L,R,O,D,N,k,F,B,z,U=[],j=[],$=[],V=[],G=[],H=[];if(e)for(y=0;ye)&&(s=!0,n.add_unsafe(r.index),o.addBond(a,r,1))}s&&n.add_unsafe(a.index)});var a=new cg(o.count);return a.set_all(!0),qp.timeEnd(\"Contact within\"),{atomSet:n,bondSet:a,bondStore:o}}},Ea.prototype=Object.assign(Object.create(la.prototype),{constructor:Ea,type:\"contact\",defaultSize:.25,parameters:Object.assign({contactType:{type:\"select\",rebuild:!0,options:{polar:\"polar\",polarBackbone:\"polar backbone\"}},maxDistance:{type:\"number\",precision:1,max:10,min:.1,rebuild:!0},maxAngle:{type:\"integer\",max:180,min:0,rebuild:!0},radialSegments:!0,disableImpostor:!0},la.prototype.parameters),init:function(t){var e=t||{};e.radius=Hi(e.radius,this.defaultSize),this.contactType=Hi(e.contactType,\"polarBackbone\"),this.maxDistance=Hi(e.maxDistance,3.5),this.maxAngle=Hi(e.maxAngle,40),la.prototype.init.call(this,e)},getContactData:function(t){var e={polar:Ca,polarBackbone:Ta},i=e[this.contactType](t,this.maxDistance,this.maxAngle);return i},getBondData:function(t,e,i){return t.getBondData(this.getBondParams(e,i))},createData:function(t){var e=this.getContactData(t),i={bondSet:e.bondSet,bondStore:e.bondStore},r=this.getBondData(t,void 0,i),n=new Jo(r,this.getBufferParams({openEnded:!1,radialSegments:this.radialSegments,disableImpostor:this.disableImpostor,dullInterior:!0}));return{bufferList:[n],bondSet:e.bondSet,bondStore:e.bondStore}},updateData:function(t,e){if(!t||t.position){var i=this.getContactData(e.sview);e.bondSet=i.bondSet,e.bondStore=i.bondStore}var r={bondSet:e.bondSet,bondStore:e.bondStore},n=this.getBondData(e.sview,t,r),o={};t&&!t.position||(o.position=Wr(n.position1,n.position2),o.position1=n.position1,o.position2=n.position2),t&&!t.color||(o.color=n.color1,o.color2=n.color2),t&&!t.radius||(o.radius=n.radius),e.bufferList[0].setAttributes(o)}}),Jp.add(\"contact\",Ea),em.add(\"shader/SDFFont.vert\",\"uniform float nearClip;\\nuniform float clipRadius;\\nuniform vec3 clipCenter;\\nuniform float xOffset;\\nuniform float yOffset;\\nuniform float zOffset;\\nuniform bool ortho;\\nvarying vec3 vViewPosition;\\nvarying vec2 texCoord;\\n#if defined( RADIUS_CLIP )\\nvarying vec3 vClipCenter;\\n#endif\\nattribute vec2 mapping;\\nattribute vec2 inputTexCoord;\\nattribute float inputSize;\\n#include color_pars_vertex\\n#include common\\nvoid main(void){\\n#include color_vertex\\ntexCoord = inputTexCoord;\\nfloat _zOffset = zOffset;\\nif( texCoord.x == 10.0 ){\\n_zOffset -= 0.001;\\n}\\nvec3 pos = position;\\nif( ortho ){\\npos += normalize( cameraPosition ) * _zOffset;\\n}\\nvec4 cameraPos = modelViewMatrix * vec4( pos, 1.0 );\\nvec4 cameraCornerPos = vec4( cameraPos.xyz, 1.0 );\\ncameraCornerPos.xy += mapping * inputSize * 0.01;\\ncameraCornerPos.x += xOffset;\\ncameraCornerPos.y += yOffset;\\nif( !ortho ){\\ncameraCornerPos.xyz += normalize( -cameraCornerPos.xyz ) * _zOffset;\\n}\\ngl_Position = projectionMatrix * cameraCornerPos;\\nvViewPosition = -cameraCornerPos.xyz;\\n#if defined( RADIUS_CLIP )\\nvClipCenter = -( modelViewMatrix * vec4( clipCenter, 1.0 ) ).xyz;\\n#endif\\n#include nearclip_vertex\\n#include radiusclip_vertex\\n}\"),em.add(\"shader/SDFFont.frag\",\"uniform sampler2D fontTexture;\\nuniform float opacity;\\nuniform bool showBorder;\\nuniform vec3 borderColor;\\nuniform float borderWidth;\\nuniform vec3 backgroundColor;\\nuniform float backgroundOpacity;\\nuniform float nearClip;\\nuniform float clipRadius;\\nvarying vec3 vViewPosition;\\nvarying vec2 texCoord;\\n#if defined( RADIUS_CLIP )\\nvarying vec3 vClipCenter;\\n#endif\\n#include common\\n#include color_pars_fragment\\n#include fog_pars_fragment\\n#ifdef SDF\\nconst float smoothness = 16.0;\\n#else\\nconst float smoothness = 256.0;\\n#endif\\nconst float gamma = 2.2;\\nvoid main(){\\n#include nearclip_fragment\\n#include radiusclip_fragment\\nif( texCoord.x > 1.0 ){\\ngl_FragColor = vec4( backgroundColor, backgroundOpacity );\\n}else{\\nfloat sdf = texture2D( fontTexture, texCoord ).a;\\nif( showBorder ) sdf += borderWidth;\\nfloat w = clamp(\\nsmoothness * ( abs( dFdx( texCoord.x ) ) + abs( dFdy( texCoord.y ) ) ),\\n0.0,\\n0.5\\n);\\nfloat a = smoothstep( 0.5 - w, 0.5 + w, sdf );\\na = pow( a, 1.0 / gamma );\\nif( a < 0.2 ) discard;\\na *= opacity;\\nvec3 outgoingLight = vColor;\\nif( showBorder && sdf < ( 0.5 + borderWidth ) ){\\noutgoingLight = borderColor;\\n}\\ngl_FragColor = vec4( outgoingLight, a );\\n}\\n#include premultiplied_alpha_fragment\\n#include tonemapping_fragment\\n#include encodings_fragment\\n#include fog_fragment\\n}\");var sb={},cb=function(t){var e=Object.assign({},t);if(this.font=Hi(e.font,[\"sans-serif\"]),this.size=Hi(e.size,36),this.style=Hi(e.style,\"normal\"),this.variant=Hi(e.variant,\"normal\"),this.weight=Hi(e.weight,\"normal\"),this.outline=Hi(e.outline,0),this.width=Hi(e.width,1024),this.height=Hi(e.height,1024),this.gamma=1,\"undefined\"!=typeof navigator){var i=navigator.userAgent;i.match(/Chrome/)&&i.match(/OS X/)&&(this.gamma=.5)}this.mapped={},this.scratchW=0,this.scratchH=0,this.currentX=0,this.currentY=0,this.build(),this.populate(),this.texture=new Pe(this.canvas2),this.texture.flipY=!1,this.texture.needsUpdate=!0};cb.prototype.build=function(){var t=this.size+2*this.outline+Math.round(this.size/4),e=this.width/4,i=document.createElement(\"canvas\");i.width=e,i.height=t;var r=i.getContext(\"2d\");r.font=this.style+\" \"+this.variant+\" \"+this.weight+\" \"+this.size+\"px \"+this.font,r.fillStyle=\"#FF0000\",r.textAlign=\"left\",r.textBaseline=\"bottom\",r.lineJoin=\"round\";for(var n=[],o=3*this.outline,a=0;athis.width&&(this.currentX=0,this.currentY+=this.scratchH),this.currentY+this.scratchH>this.height&&console.warn(\"canvas to small\"),this.mapped[t]={x:this.currentX,y:this.currentY,w:this.scratchW,h:this.scratchH},this.context2.drawImage(this.canvas,0,0,this.scratchW,this.scratchH,this.currentX,this.currentY,this.scratchW,this.scratchH),this.currentX+=this.scratchW),this.mapped[t]},cb.prototype.draw=function(t){var e=this.lineHeight,i=this.outline,r=this.context,n=this.scratch,o=this.maxWidth,a=this.colors,s=i,c=e-this.outline,u=r.measureText(t),l=Math.min(o,Math.ceil(u.width+2*s+1));r.clearRect(0,0,l,e);var h,d,f,p,m;if(0===this.outline)for(r.fillText(t,s,c),p=r.getImageData(0,0,l,e),m=p.data,f=3,h=0,d=m.length/4;h0;--h)f=h>1?2*h-2:h,r.strokeStyle=a[f-1],r.lineWidth=f,r.strokeText(t,s,c);r.globalCompositeOperation=\"multiply\",r.fillStyle=\"#FF00FF\",r.fillText(t,s,c),p=r.getImageData(0,0,l,e),m=p.data,f=0;var g=this.gamma;for(h=0,d=m.length/4;h0&&(i-=l,n=n.subarray(0,3*i));var h=new cg(s.count);return h.set_all(!0),{text:r,position:n,bondSet:h,bondStore:s}},getBondData:function(t,e,i){return t.getBondData(this.getBondParams(e,i))},create:function(){if(0!==this.structureView.atomCount){var t=this.atomPair.length;if(0!==t){var e=this.getDistanceData(this.structureView,this.atomPair),i=new ct(this.labelColor);this.textBuffer=new ub({position:e.position,size:Xr(t,this.labelSize),color:qr(t,i.r,i.g,i.b),text:e.text},this.getBufferParams({fontFamily:this.fontFamily,fontStyle:this.fontStyle,fontWeight:this.fontWeight,sdf:this.sdf,zOffset:this.labelZOffset,opacity:1,visible:this.labelVisible}));var r={bondSet:e.bondSet,bondStore:e.bondStore},n=this.getBondData(this.structureView,void 0,r);this.cylinderBuffer=new Jo(n,this.getBufferParams({openEnded:!1,radialSegments:this.radialSegments,disableImpostor:this.disableImpostor,dullInterior:!0})),this.dataList.push({sview:this.structureView,bondSet:e.bondSet,bondStore:e.bondStore,position:e.position,bufferList:[this.textBuffer,this.cylinderBuffer]})}}},update:function(t){t.position?this.build():la.prototype.update.call(this,t)},updateData:function(t,e){var i={bondSet:e.bondSet,bondStore:e.bondStore},r=this.getBondData(e.sview,t,i),n={},o={},a=this.atomPair.length;if(t.labelSize&&(o.size=Xr(a,this.labelSize)),t.labelColor){var s=new ct(this.labelColor);o.color=qr(a,s.r,s.g,s.b)}t.color&&(n.color=r.color1,n.color2=r.color2),(t.radius||t.scale)&&(n.radius=r.radius),this.textBuffer.setAttributes(o),this.cylinderBuffer.setAttributes(n)},setVisibility:function(t,e){return la.prototype.setVisibility.call(this,t,!0),this.textBuffer&&this.textBuffer.setVisibility(this.labelVisible&&this.visible),e||this.viewer.requestRender(),this},setParameters:function(t){var e=!1,i={};return t&&t.labelSize&&(i.labelSize=!0),t&&t.labelColor&&(i.labelColor=!0),la.prototype.setParameters.call(this,t,i,e),t&&void 0!==t.labelVisible&&this.setVisibility(this.visible),this}}),Jp.add(\"distance\",La);var lb=function(t){function e(e,i){var r=i||{},n=e.position.length/3,o=2*n,a=new ct(Hi(r.color,\"grey\")),s=new Float32Array(3*o),c=qr(o,a.r,a.g,a.b);t.call(this,{position:s,color:c},r),this.scale=Hi(r.scale,1),this.setAttributes(e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var i={line:{},vertexShader:{},fragmentShader:{}};return e.prototype.setAttributes=function(t){var e,i,r,n=this.geometry.attributes;t.position&&t.vector&&(e=t.position,i=t.vector,r=n.position.array,n.position.needsUpdate=!0);var o,a,s=this.size/2,c=this.scale;if(t.position&&t.vector)for(var u=0;u radius2) {\\nspaceposition.y = mapping.y * 1.5 * radius1;\\nspaceposition.x = mapping.x * 1.5 * radius1;\\n} else {\\nspaceposition.y = mapping.y * 1.5 * radius2;\\nspaceposition.x = mapping.x * 1.5 * radius2;\\n}\\nspaceposition.w = 1.0;\\nvec4 e3 = vec4( 1.0 );\\nvec3 e1, e1_temp, e2, e2_temp;\\ne3.xyz = normalize(position_atom1-position_atom2);\\nif (e3.z == 0.0) { e3.z = 0.0000000000001;}\\nif ( (position_atom1.x - position_atom2.x) == 0.0) { position_atom1.x += 0.001;}\\nif ( (position_atom1.y - position_atom2.y) == 0.0) { position_atom1.y += 0.001;}\\nif ( (position_atom1.z - position_atom2.z) == 0.0) { position_atom1.z += 0.001;}\\nvec4 focus = vec4( 1.0 );\\nfocus.x = ( position_atom1.x*position_atom1.x - position_atom2.x*position_atom2.x +\\n( radius2*radius2 - radius1*radius1 )*e3.x*e3.x/shrink )/(2.0*(position_atom1.x - position_atom2.x));\\nfocus.y = ( position_atom1.y*position_atom1.y - position_atom2.y*position_atom2.y +\\n( radius2*radius2 - radius1*radius1 )*e3.y*e3.y/shrink )/(2.0*(position_atom1.y - position_atom2.y));\\nfocus.z = ( position_atom1.z*position_atom1.z - position_atom2.z*position_atom2.z +\\n( radius2*radius2 - radius1*radius1 )*e3.z*e3.z/shrink )/(2.0*(position_atom1.z - position_atom2.z));\\ne1.x = 1.0;\\ne1.y = 1.0;\\ne1.z = ( (e3.x*focus.x + e3.y*focus.y + e3.z*focus.z) - e1.x*e3.x - e1.y*e3.y)/e3.z;\\ne1_temp = e1 - focus.xyz;\\ne1 = normalize(e1_temp);\\ne2_temp = e1.yzx * e3.zxy - e1.zxy * e3.yzx;\\ne2 = normalize(e2_temp);\\nmat3 R= mat3( e1.xyz, e2.xyz, e3.xyz );\\nvertex_position.xyz = R * spaceposition.xyz;\\nvertex_position.w = 1.0;\\nvertex_position.x += (position_atom1.x+position_atom2.x) / 2.0;\\nvertex_position.y += (position_atom1.y+position_atom2.y) / 2.0;\\nvertex_position.z += (position_atom1.z+position_atom2.z) / 2.0;\\ngl_Position = modelViewProjectionMatrix * vertex_position;\\nvec4 i_near, i_far;\\nvec4 near = gl_Position;\\nnear.z = 0.0 ;\\nnear = modelViewProjectionMatrixInverse * near;\\ni_near = near;\\nvec4 far = gl_Position;\\nfar.z = far.w ;\\ni_far = modelViewProjectionMatrixInverse * far;\\nprime1 = vec4( position_atom1 - (position_atom1 - focus.xyz)*shrink, 1.0 );\\nprime2 = vec4( position_atom2 - (position_atom2 - focus.xyz)*shrink, 1.0 );\\nfloat Rsquare = (radius1*radius1/shrink) - (\\n(position_atom1.x - focus.x)*(position_atom1.x - focus.x) +\\n(position_atom1.y - focus.y)*(position_atom1.y - focus.y) +\\n(position_atom1.z - focus.z)*(position_atom1.z - focus.z)\\n);\\nfocus.w = Rsquare;\\nmatrix_near = mat4( i_near, i_far, focus, e3 );\\ngl_Position.z = 1.0;\\n}\"),em.add(\"shader/HyperballStickImpostor.frag\",\"#define STANDARD\\n#define IMPOSTOR\\nuniform vec3 diffuse;\\nuniform vec3 emissive;\\nuniform float roughness;\\nuniform float metalness;\\nuniform float opacity;\\nuniform float nearClip;\\nuniform float shrink;\\nuniform mat4 modelViewMatrix;\\nuniform mat4 modelViewProjectionMatrix;\\nuniform mat4 modelViewMatrixInverseTranspose;\\nuniform mat4 projectionMatrix;\\nvarying mat4 matrix_near;\\nvarying vec4 prime1;\\nvarying vec4 prime2;\\nvarying float vRadius;\\nvarying float vRadius2;\\n#ifdef PICKING\\nuniform float objectId;\\nvarying vec3 vPickingColor;\\nvarying vec3 vPickingColor2;\\n#else\\nvarying vec3 vColor1;\\nvarying vec3 vColor2;\\n#include common\\n#include fog_pars_fragment\\n#include bsdfs\\n#include lights_pars\\n#include lights_physical_pars_fragment\\n#endif\\nbool interior = false;\\nfloat calcClip( vec4 cameraPos ){\\nreturn dot( cameraPos, vec4( 0.0, 0.0, 1.0, nearClip - 0.5 ) );\\n}\\nfloat calcClip( vec3 cameraPos ){\\nreturn calcClip( vec4( cameraPos, 1.0 ) );\\n}\\nfloat calcDepth( in vec3 cameraPos ){\\nvec2 clipZW = cameraPos.z * projectionMatrix[2].zw + projectionMatrix[3].zw;\\nreturn 0.5 + 0.5 * clipZW.x / clipZW.y;\\n}\\nstruct Ray {\\nvec3 origin ;\\nvec3 direction ;\\n};\\nbool cutoff_plane (vec3 M, vec3 cutoff, vec3 x3){\\nfloat a = x3.x;\\nfloat b = x3.y;\\nfloat c = x3.z;\\nfloat d = -x3.x*cutoff.x-x3.y*cutoff.y-x3.z*cutoff.z;\\nfloat l = a*M.x+b*M.y+c*M.z+d;\\nif (l<0.0) {return true;}\\nelse{return false;}\\n}\\nvec3 isect_surf(Ray r, mat4 matrix_coef){\\nvec4 direction = vec4(r.direction, 0.0);\\nvec4 origin = vec4(r.origin, 1.0);\\nfloat a = dot(direction,(matrix_coef*direction));\\nfloat b = dot(origin,(matrix_coef*direction));\\nfloat c = dot(origin,(matrix_coef*origin));\\nfloat delta =b*b-a*c;\\ngl_FragColor.a = 1.0;\\nif (delta<0.0){\\ndiscard;\\n}\\nfloat t1 =(-b-sqrt(delta))/a;\\nreturn r.origin+t1*r.direction;\\n}\\nvec3 isect_surf2(Ray r, mat4 matrix_coef){\\nvec4 direction = vec4(r.direction, 0.0);\\nvec4 origin = vec4(r.origin, 1.0);\\nfloat a = dot(direction,(matrix_coef*direction));\\nfloat b = dot(origin,(matrix_coef*direction));\\nfloat c = dot(origin,(matrix_coef*origin));\\nfloat delta =b*b-a*c;\\ngl_FragColor.a = 1.0;\\nif (delta<0.0){\\ndiscard;\\n}\\nfloat t2 =(-b+sqrt(delta))/a;\\nreturn r.origin+t2*r.direction;\\n}\\nRay primary_ray(vec4 near1, vec4 far1){\\nvec3 near=near1.xyz/near1.w;\\nvec3 far=far1.xyz/far1.w;\\nreturn Ray(near,far-near);\\n}\\nfloat update_z_buffer(vec3 M, mat4 ModelViewP){\\nfloat depth1;\\nvec4 Ms=(ModelViewP*vec4(M,1.0));\\nreturn depth1=(1.0+Ms.z/Ms.w)/2.0;\\n}\\nvoid main(){\\nfloat radius = max( vRadius, vRadius2 );\\nvec4 i_near, i_far, focus;\\nvec3 e3, e1, e1_temp, e2;\\ni_near = vec4(matrix_near[0][0],matrix_near[0][1],matrix_near[0][2],matrix_near[0][3]);\\ni_far = vec4(matrix_near[1][0],matrix_near[1][1],matrix_near[1][2],matrix_near[1][3]);\\nfocus = vec4(matrix_near[2][0],matrix_near[2][1],matrix_near[2][2],matrix_near[2][3]);\\ne3 = vec3(matrix_near[3][0],matrix_near[3][1],matrix_near[3][2]);\\ne1.x = 1.0;\\ne1.y = 1.0;\\ne1.z = ( (e3.x*focus.x + e3.y*focus.y + e3.z*focus.z) - e1.x*e3.x - e1.y*e3.y)/e3.z;\\ne1_temp = e1 - focus.xyz;\\ne1 = normalize(e1_temp);\\ne2 = normalize(cross(e1,e3));\\nvec4 equation = focus;\\nfloat shrinkfactor = shrink;\\nfloat t1 = -1.0/(1.0-shrinkfactor);\\nfloat t2 = 1.0/(shrinkfactor);\\nvec4 colonne1, colonne2, colonne3, colonne4;\\nmat4 mat;\\nvec3 equation1 = vec3(t2,t2,t1);\\nfloat A1 = - e1.x*equation.x - e1.y*equation.y - e1.z*equation.z;\\nfloat A2 = - e2.x*equation.x - e2.y*equation.y - e2.z*equation.z;\\nfloat A3 = - e3.x*equation.x - e3.y*equation.y - e3.z*equation.z;\\nfloat A11 = equation1.x*e1.x*e1.x + equation1.y*e2.x*e2.x + equation1.z*e3.x*e3.x;\\nfloat A21 = equation1.x*e1.x*e1.y + equation1.y*e2.x*e2.y + equation1.z*e3.x*e3.y;\\nfloat A31 = equation1.x*e1.x*e1.z + equation1.y*e2.x*e2.z + equation1.z*e3.x*e3.z;\\nfloat A41 = equation1.x*e1.x*A1 + equation1.y*e2.x*A2 + equation1.z*e3.x*A3;\\nfloat A22 = equation1.x*e1.y*e1.y + equation1.y*e2.y*e2.y + equation1.z*e3.y*e3.y;\\nfloat A32 = equation1.x*e1.y*e1.z + equation1.y*e2.y*e2.z + equation1.z*e3.y*e3.z;\\nfloat A42 = equation1.x*e1.y*A1 + equation1.y*e2.y*A2 + equation1.z*e3.y*A3;\\nfloat A33 = equation1.x*e1.z*e1.z + equation1.y*e2.z*e2.z + equation1.z*e3.z*e3.z;\\nfloat A43 = equation1.x*e1.z*A1 + equation1.y*e2.z*A2 + equation1.z*e3.z*A3;\\nfloat A44 = equation1.x*A1*A1 + equation1.y*A2*A2 + equation1.z*A3*A3 - equation.w;\\ncolonne1 = vec4(A11,A21,A31,A41);\\ncolonne2 = vec4(A21,A22,A32,A42);\\ncolonne3 = vec4(A31,A32,A33,A43);\\ncolonne4 = vec4(A41,A42,A43,A44);\\nmat = mat4(colonne1,colonne2,colonne3,colonne4);\\nRay ray = primary_ray(i_near,i_far) ;\\nvec3 M;\\nM = isect_surf(ray, mat);\\nif (cutoff_plane(M, prime1.xyz, -e3) || cutoff_plane(M, prime2.xyz, e3)){ discard; }\\nvec4 M1 = vec4(M,1.0);\\nvec4 M2 = mat*M1;\\nvec3 _normal = ( modelViewMatrixInverseTranspose * M2 ).xyz;\\ngl_FragDepthEXT = update_z_buffer(M, modelViewProjectionMatrix) ;\\n#ifdef NEAR_CLIP\\nif( calcClip( modelViewMatrix * vec4( M, 1.0 ) ) > 0.0 ){\\nM = isect_surf2(ray, mat);\\nif( calcClip( modelViewMatrix * vec4( M, 1.0 ) ) > 0.0 )\\ndiscard;\\ninterior = true;\\ngl_FragDepthEXT = update_z_buffer(M, modelViewProjectionMatrix) ;\\nif( gl_FragDepthEXT >= 0.0 ){\\ngl_FragDepthEXT = max( 0.0, calcDepth( vec3( - ( nearClip - 0.5 ) ) ) + ( 0.0000001 / radius ) );\\n}\\n}else if( gl_FragDepthEXT <= 0.0 ){\\nM = isect_surf2(ray, mat);\\ninterior = true;\\ngl_FragDepthEXT = update_z_buffer(M, modelViewProjectionMatrix);\\nif( gl_FragDepthEXT >= 0.0 ){\\ngl_FragDepthEXT = 0.0 + ( 0.0000001 / radius );\\n}\\n}\\n#else\\nif( gl_FragDepthEXT <= 0.0 ){\\nM = isect_surf2(ray, mat);\\ninterior = true;\\ngl_FragDepthEXT = update_z_buffer(M, modelViewProjectionMatrix) ;\\nif( gl_FragDepthEXT >= 0.0 ){\\ngl_FragDepthEXT = 0.0 + ( 0.0000001 / radius );\\n}\\n}\\n#endif\\nif (cutoff_plane(M, prime1.xyz, -e3) || cutoff_plane(M, prime2.xyz, e3)){ discard; }\\nif (gl_FragDepthEXT < 0.0)\\ndiscard;\\nif (gl_FragDepthEXT > 1.0)\\ndiscard;\\nfloat distance_ratio = ((M.x-prime2.x)*e3.x + (M.y-prime2.y)*e3.y +(M.z-prime2.z)*e3.z) /\\ndistance(prime2.xyz,prime1.xyz);\\n#ifdef PICKING\\nif( distance_ratio > 0.5 ){\\ngl_FragColor = vec4( vPickingColor, objectId );\\n}else{\\ngl_FragColor = vec4( vPickingColor2, objectId );\\n}\\n#else\\nvec3 vViewPosition = -( modelViewMatrix * vec4( M, 1.0 ) ).xyz;\\nvec3 vNormal = _normal;\\nvec3 vColor;\\nif( distance_ratio>0.5 ){\\nvColor = vColor1;\\n}else{\\nvColor = vColor2;\\n}\\nvec4 diffuseColor = vec4( diffuse, opacity );\\nReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\\nvec3 totalEmissiveLight = emissive;\\n#include color_fragment\\n#include roughnessmap_fragment\\n#include metalnessmap_fragment\\nvec3 normal = normalize( vNormal );\\nif( interior ){\\nnormal = vec3( 0.0, 0.0, 0.4 );\\n}\\n#include lights_physical_fragment\\n#include lights_template\\nvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveLight;\\ngl_FragColor = vec4( outgoingLight, diffuseColor.a );\\n#include premultiplied_alpha_fragment\\n#include tonemapping_fragment\\n#include encodings_fragment\\n#include fog_fragment\\n#endif\\n}\");var hb=new Float32Array([-1,-1,-1,1,-1,-1,1,-1,1,-1,-1,1,-1,1,-1,1,1,-1,1,1,1,-1,1,1]),db=new Uint16Array([0,1,2,0,2,3,1,5,6,1,6,2,4,6,5,4,7,6,0,7,4,0,3,7,0,5,1,0,4,5,3,2,6,3,6,7]),fb=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var i={mapping:{},mappingIndices:{},mappingIndicesSize:{},mappingType:{},mappingSize:{},mappingItemSize:{}};return i.mapping.get=function(){return hb},i.mappingIndices.get=function(){return db},i.mappingIndicesSize.get=function(){return 36},i.mappingType.get=function(){return\"v3\"},i.mappingSize.get=function(){return 8},i.mappingItemSize.get=function(){return 3},Object.defineProperties(e.prototype,i),e}(Sv),pb=new p,mb=function(t){function e(e,i){t.call(this,e,i);var r=e||{},n=i||{},o=Hi(n.shrink,.14),a=new Di(new p).onUpdate(Da),s=new Di(new p).onUpdate(Da),c=new Di(new p).onUpdate(Da);this.addUniforms({modelViewProjectionMatrix:a,modelViewProjectionMatrixInverse:s,modelViewMatrixInverseTranspose:c,shrink:{value:o}}),this.addAttributes({position1:{type:\"v3\",value:null},position2:{type:\"v3\",value:null},color2:{type:\"c\",value:null},radius:{type:\"f\",value:null},radius2:{type:\"f\",value:null}}),r.pickingColor2&&this.addAttributes({pickingColor2:{type:\"c\",value:null}}),this.setAttributes(r),this.makeMapping()}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var i={parameters:{},impostor:{},vertexShader:{},fragmentShader:{}};return i.parameters.get=function(){return Object.assign.call(this,{shrink:{uniform:!0}},t.prototype.parameters)},i.impostor.get=function(){return!0},i.vertexShader.get=function(){return\"HyperballStickImpostor.vert\"},i.fragmentShader.get=function(){return\"HyperballStickImpostor.frag\"},Object.defineProperties(e.prototype,i),e}(fb);ka.prototype=Object.assign(Object.create(Oa.prototype),{constructor:ka,type:\"hyperball\",defaultSize:1,parameters:Object.assign({shrink:{type:\"number\",precision:3,max:1,min:.001,buffer:!0}},Oa.prototype.parameters,{multipleBond:null,bondSpacing:null}),init:function(t){var e=t||{};e.scale=Hi(e.scale,.2),e.radius=Hi(e.radius,\"vdw\"),this.shrink=Hi(e.shrink,.12),Oa.prototype.init.call(this,e)},getBondParams:function(t,e){return t&&!t.radius||(e=Object.assign({radius2:!0},e)),Oa.prototype.getBondParams.call(this,t,e)},createData:function(t){var e=new Ko(t.getAtomData(this.getAtomParams()),this.getBufferParams({sphereDetail:this.sphereDetail,disableImpostor:this.disableImpostor,dullInterior:!0}));this.__center=new Float32Array(3*t.bondCount);var i=new Na(t.getBondData(this.getBondParams()),this.getBufferParams({shrink:this.shrink,radialSegments:this.radialSegments,dullInterior:!0}),this.disableImpostor);return{bufferList:[e,i]}},updateData:function(t,e){var i=e.sview.getAtomData(this.getAtomParams()),r=e.sview.getBondData(this.getBondParams()),n={},o={};if(!t||t.position){n.position=i.position;var a=r.position1,s=r.position2;o.position=Wr(a,s,this.__center),o.position1=a,o.position2=s}t&&!t.color||(n.color=i.color,o.color=r.color1,o.color2=r.color2),t&&!t.radius||(n.radius=i.radius,o.radius=r.radius1,o.radius2=r.radius2),e.bufferList[0].setAttributes(n),e.bufferList[1].setAttributes(o)}}),Jp.add(\"hyperball\",ka),Fa.prototype={constructor:Fa,atomLabel:function(t){var e,i=this.type;switch(i){case\"atomname\":e=t.atomname;break;case\"atomindex\":e=\"\"+t.index;break;case\"occupancy\":e=t.occupancy.toFixed(2);break;case\"bfactor\":e=t.bfactor.toFixed(2);break;case\"serial\":e=\"\"+t.serial;break;case\"element\":e=t.element;break;case\"atom\":e=t.atomname+\"|\"+t.index;break;case\"resname\":e=t.resname;break;case\"resno\":e=\"\"+t.resno;break;case\"res\":var r=t.resname.toUpperCase();e=(jg[r]||r)+t.resno;break;case\"text\":e=this.text[t.index];break;default:e=t.qualifiedName()}return void 0===e?\"\":e}},Fa.types={\"\":\"\",atomname:\"atom name\",atomindex:\"atom index\",occupancy:\"occupancy\",bfactor:\"b-factor\",serial:\"serial\",element:\"element\",atom:\"atom name + index\",resname:\"residue name\",resno:\"residue no\",res:\"residue name + no\",text:\"text\",qualified:\"qualified name\"},Ba.prototype=Object.assign(Object.create(la.prototype),{constructor:Ba,type:\"label\",parameters:Object.assign({labelType:{type:\"select\",options:Fa.types,rebuild:!0},labelText:{type:\"hidden\",rebuild:!0},fontFamily:{type:\"select\",options:{\"sans-serif\":\"sans-serif\",monospace:\"monospace\",serif:\"serif\"},buffer:!0},fontStyle:{type:\"select\",options:{normal:\"normal\",italic:\"italic\"},buffer:!0},fontWeight:{type:\"select\",options:{normal:\"normal\",bold:\"bold\"},buffer:!0},sdf:{type:\"boolean\",buffer:!0},xOffset:{type:\"number\",precision:1,max:20,min:-20,buffer:!0},yOffset:{type:\"number\",precision:1,max:20,min:-20,buffer:!0},zOffset:{type:\"number\",precision:1,max:20,min:-20,buffer:!0},attachment:{type:\"select\",options:{\"bottom-left\":\"bottom-left\",\"bottom-center\":\"bottom-center\",\"bottom-right\":\"bottom-right\",\"middle-left\":\"middle-left\",\"middle-center\":\"middle-center\",\"middle-right\":\"middle-right\",\"top-left\":\"top-left\",\"top-center\":\"top-center\",\"top-right\":\"top-right\"},rebuild:!0},showBorder:{type:\"boolean\",buffer:!0},borderColor:{type:\"color\",buffer:!0},borderWidth:{type:\"number\",precision:2,max:.3,min:0,buffer:!0},showBackground:{type:\"boolean\",rebuild:!0},backgroundColor:{type:\"color\",buffer:!0},backgroundMargin:{type:\"number\",precision:2,max:2,min:0,rebuild:!0},backgroundOpacity:{type:\"range\",step:.01,max:1,min:0,buffer:!0}},la.prototype.parameters,{side:null,flatShaded:null,wireframe:null,linewidth:null,roughness:null,metalness:null,diffuse:null}),init:function(t){var e=t||{};this.labelType=Hi(e.labelType,\"res\"),this.labelText=Hi(e.labelText,{}),this.fontFamily=Hi(e.fontFamily,\"sans-serif\"),this.fontStyle=Hi(e.fontStyle,\"normal\"),this.fontWeight=Hi(e.fontWeight,\"bold\"),this.sdf=Hi(e.sdf,\"Chrome\"===Gp),this.xOffset=Hi(e.xOffset,0),this.yOffset=Hi(e.yOffset,0),this.zOffset=Hi(e.zOffset,.5),this.attachment=Hi(e.attachment,\"bottom-left\"),this.showBorder=Hi(e.showBorder,!1),this.borderColor=Hi(e.borderColor,\"lightgrey\"),this.borderWidth=Hi(e.borderWidth,.15),this.showBackground=Hi(e.showBackground,!1),this.backgroundColor=Hi(e.backgroundColor,\"lightgrey\"),this.backgroundMargin=Hi(e.backgroundMargin,.5),this.backgroundOpacity=Hi(e.backgroundOpacity,1),la.prototype.init.call(this,e)},createData:function(t){var e={position:!0,color:!0,radius:!0},i=t.getAtomData(this.getAtomParams(e)),r=[],n=new Fa(this.labelType,this.labelText);t.eachAtom(function(t){r.push(n.atomLabel(t))});var o=new ub({position:i.position,size:i.radius,color:i.color,text:r},this.getBufferParams({fontFamily:this.fontFamily,fontStyle:this.fontStyle,fontWeight:this.fontWeight,sdf:this.sdf,xOffset:this.xOffset,yOffset:this.yOffset,zOffset:this.zOffset,attachment:this.attachment,showBorder:this.showBorder,borderColor:this.borderColor,borderWidth:this.borderWidth,showBackground:this.showBackground,backgroundColor:this.backgroundColor,backgroundMargin:this.backgroundMargin,backgroundOpacity:this.backgroundOpacity}));return{bufferList:[o]}},updateData:function(t,e){var i=e.sview.getAtomData(this.getAtomParams(t)),r={};t&&!t.position||(r.position=i.position),t&&!t.radius||(r.size=i.radius),t&&!t.color||(r.color=i.color),e.bufferList[0].setAttributes(r)}}),Jp.add(\"label\",Ba),za.prototype=Object.assign(Object.create(la.prototype),{constructor:za,type:\"line\",parameters:Object.assign({multipleBond:{type:\"select\",rebuild:!0,options:{off:\"off\",symmetric:\"symmetric\",offset:\"offset\"}},bondSpacing:{type:\"number\",precision:2,max:2,min:.5}},ia.prototype.parameters,{flatShaded:null,side:null,wireframe:null,roughness:null,metalness:null,diffuse:null}),init:function(t){var e=t||{};this.multipleBond=Hi(e.multipleBond,\"off\"),this.bondSpacing=Hi(e.bondSpacing,1),la.prototype.init.call(this,e)},getBondParams:function(t,e){return e=Object.assign({multipleBond:this.multipleBond,bondSpacing:this.bondSpacing,radiusParams:{radius:.1,scale:1}},e),la.prototype.getBondParams.call(this,t,e)},createData:function(t){var e={position:!0,color:!0},i=t.getBondData(this.getBondParams(e)),r=new ty(i,this.getBufferParams());return{bufferList:[r]}},updateData:function(t,e){var i=e.sview.getBondData(this.getBondParams(t)),r={};t&&!t.position||(r.position1=i.position1,r.position2=i.position2),t&&!t.color||(r.color=i.color,r.color2=i.color2),e.bufferList[0].setAttributes(r)},setParameters:function(t){var e=!1,i={};return t&&t.bondSpacing&&(i.position=!0),la.prototype.setParameters.call(this,t,i,e),this}}),Jp.add(\"line\",za),ja.__deps=[jo,Uo,$o,ln,Ua],Va.__deps=[jo,$o,Xr,ln,xn,mn,_n,$a,Hi],Zp.add(\"molsurf\",function(t,e){var i=t.data.args,r=t.data.params;if(i&&r){var n=\"av\"===r.type?Va:ja,o=new n(i.coordList,i.radiusList,i.indexList),a=o.getSurface(r.type,r.probeRadius,r.scaleFactor,r.cutoff,!0,r.smooth,r.contour),s=[a.position.buffer,a.index.buffer];a.normal&&s.push(a.normal.buffer),a.atomindex&&s.push(a.atomindex.buffer),e({sd:a,p:r},s)}},[ja,Va]),Ga.prototype={getAtomData:function(){return this.structure.getAtomData({what:{position:!0,radius:!0,index:!0},radiusParams:{radius:\"vdw\",scale:1}})},makeSurface:function(t,e){var i=new Lo(\"\",\"\",t);return i.info.type=e.type,i.info.probeRadius=e.probeRadius,i.info.scaleFactor=e.scaleFactor,i.info.smooth=e.smooth,i.info.cutoff=e.cutoff,i},getSurface:function(t){var e=t||{},i=this.getAtomData(),r=i.position,n=i.radius,o=i.index,a=\"av\"===e.type?Va:ja,s=new a(r,n,o),c=s.getSurface(e.type,e.probeRadius,e.scaleFactor,e.cutoff,!0,e.smooth,e.contour);return this.makeSurface(c,e)},getSurfaceWorker:function(t,e){var i=Object.assign({},t);if(window.Worker){void 0===this.worker&&(this.worker=new Ro(\"molsurf\"));var r=this.getAtomData(),n=r.position,o=r.radius,a=r.index,s={args:{coordList:n,radiusList:o,indexList:a},params:i},c=[n.buffer,o.buffer,a.buffer];this.worker.post(s,c,function(t){var r=t.data.sd;e(this.makeSurface(r,i))}.bind(this),function(t){console.warn(\"MolecularSurface.getSurfaceWorker error - trying without worker\",t),this.worker.terminate(),this.worker=void 0;var r=this.getSurface(i);e(r)}.bind(this))}else{var u=this.getSurface(i);e(u)}},dispose:function(){this.worker&&this.worker.terminate()}};var gb=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var i={line:{},vertexShader:{},fragmentShader:{}};return e.prototype.setAttributes=function(t){var e=this.geometry.attributes;t.color&&(e.color.array.set(t.color),e.color.needsUpdate=!0),t.index&&(e.index.array.set(t.index),e.index.needsUpdate=!0)},i.line.get=function(){return!0},i.vertexShader.get=function(){return\"Line.vert\"},i.fragmentShader.get=function(){return\"Line.frag\"},Object.defineProperties(e.prototype,i),e}(mv);Ha.prototype=Object.assign(Object.create(la.prototype),{constructor:Ha,type:\"surface\",parameters:Object.assign({surfaceType:{type:\"select\",rebuild:!0,options:{vws:\"vws\",sas:\"sas\",ms:\"ms\",ses:\"ses\",av:\"av\"}},probeRadius:{type:\"number\",precision:1,max:20,min:0,rebuild:!0},smooth:{type:\"integer\",precision:1,max:10,min:0,rebuild:!0},scaleFactor:{type:\"number\",precision:1,max:5,min:0,rebuild:!0},cutoff:{type:\"number\",precision:2,max:50,min:0,rebuild:!0},contour:{type:\"boolean\",rebuild:!0},background:{type:\"boolean\",rebuild:!0},opaqueBack:{type:\"boolean\",buffer:!0},filterSele:{type:\"text\",rebuild:!0},colorVolume:{type:\"hidden\"},useWorker:{type:\"boolean\",rebuild:!0}},la.prototype.parameters,{radiusType:null,radius:null,scale:null}),init:function(t){var e=t||{};e.colorScheme=Hi(e.colorScheme,\"uniform\"),e.colorValue=Hi(e.colorValue,14540253),this.surfaceType=Hi(e.surfaceType,\"ms\"),this.probeRadius=Hi(e.probeRadius,1.4),this.smooth=Hi(e.smooth,2),this.scaleFactor=Hi(e.scaleFactor,2),this.cutoff=Hi(e.cutoff,0),this.contour=Hi(e.contour,!1),this.background=Hi(e.background,!1),this.opaqueBack=Hi(e.opaqueBack,!0),this.filterSele=Hi(e.filterSele,\"\"),this.colorVolume=Hi(e.colorVolume,void 0),this.useWorker=Hi(e.useWorker,!0),la.prototype.init.call(this,t)},prepareData:function(t,e,i){var r=this.__infoList[e];if(r||(r={},this.__infoList[e]=r),r.molsurf&&r.sele===t.selection.string)i(e);else{if(this.filterSele){var n=t.structure.getView(new Tr(this.filterSele)),o=n.boundingBox.size(),a=Math.max(o.x,o.y,o.z),s=t.getAtomSetWithinPoint(n.center,a/2+6);t=t.getView(new Tr(t.getAtomSetWithinSelection(s,3).toSeleString()))}r.sele=t.selection.string,r.molsurf=new Ga(t);var c=this.getSurfaceParams(),u=function(t){r.surface=t,i(e)};this.useWorker?r.molsurf.getSurfaceWorker(c,u):u(r.molsurf.getSurface(c))}},prepare:function(t){if((this.__forceNewMolsurf||this.__sele!==this.selection.string||this.__surfaceParams!==JSON.stringify(this.getSurfaceParams()))&&(this.__infoList.forEach(function(t){t.molsurf.dispose()}.bind(this)),this.__infoList.length=0),0===this.structureView.atomCount)return void t();var e=function(){this.__sele=this.selection.string,this.__surfaceParams=JSON.stringify(this.getSurfaceParams()),this.__forceNewMolsurf=!1,t()}.bind(this),i=\"default\"===this.assembly?this.defaultAssembly:this.assembly,r=this.structure.biomolDict[i];r?r.partList.forEach(function(t,i){var n=t.getView(this.structureView);this.prepareData(n,i,function(t){t===r.partList.length-1&&e()}.bind(this))},this):this.prepareData(this.structureView,0,e)},createData:function(t,e){var i=this.__infoList[e],r=i.surface,n={position:r.getPosition(),color:r.getColor(this.getColorParams()),index:r.getFilteredIndex(this.filterSele,t)};if(r.contour){var o=new gb(n,this.getBufferParams({wireframe:!1}));return{bufferList:[o],info:i}}n.normal=r.getNormal(),n.pickingColor=r.getPickingColor(this.getColorParams());var a=new qv(n,this.getBufferParams({background:this.background,opaqueBack:this.opaqueBack,dullInterior:!1})),s=new Yv(a);return{bufferList:[s],info:i}},updateData:function(t,e){var i={};return t.position?(this.__forceNewMolsurf=!0,void this.build()):(t.color&&(i.color=e.info.surface.getColor(this.getColorParams())),t.index&&(i.index=e.info.surface.getFilteredIndex(this.filterSele,e.sview)),void e.bufferList[0].setAttributes(i))},setParameters:function(t,e,i){return e=e||{},t&&t.filterSele&&(e.index=!0),t&&void 0!==t.colorVolume&&(e.color=!0),t&&t.wireframe&&(t.contour||void 0===t.contour&&this.contour)&&(t.wireframe=!1),la.prototype.setParameters.call(this,t,e,i),this},getSurfaceParams:function(t){var e=Object.assign({type:this.surfaceType,probeRadius:this.probeRadius,scaleFactor:this.scaleFactor,smooth:this.smooth&&!this.contour,cutoff:this.cutoff,contour:this.contour,useWorker:this.useWorker},t);return e},getColorParams:function(){var t=la.prototype.getColorParams.call(this);return t.volume=this.colorVolume,t},clear:function(){la.prototype.clear.call(this)},dispose:function(){this.__infoList.forEach(function(t){t.molsurf.dispose()}.bind(this)),this.__infoList.length=0,la.prototype.dispose.call(this)}}),Jp.add(\"surface\",Ha),Wa.prototype=Object.assign(Object.create(la.prototype),{constructor:Wa,type:\"point\",parameters:Object.assign({pointSize:{type:\"number\",precision:1,max:100,min:0,buffer:!0},sizeAttenuation:{type:\"boolean\",buffer:!0},sortParticles:{type:\"boolean\",rebuild:!0},useTexture:{type:\"boolean\",buffer:!0},alphaTest:{type:\"range\",step:.001,max:1,min:0,buffer:!0},forceTransparent:{type:\"boolean\",buffer:!0},edgeBleach:{type:\"range\",step:.001,max:1,min:0,buffer:!0}},ia.prototype.parameters,{flatShaded:null,wireframe:null,linewidth:null,roughness:null,metalness:null}),init:function(t){var e=t||{};this.pointSize=Hi(e.pointSize,1),this.sizeAttenuation=Hi(e.sizeAttenuation,!0),this.sortParticles=Hi(e.sortParticles,!1),this.useTexture=Hi(e.useTexture,!1),\nthis.alphaTest=Hi(e.alphaTest,.5),this.forceTransparent=Hi(e.forceTransparent,!1),this.edgeBleach=Hi(e.edgeBleach,0),la.prototype.init.call(this,e)},createData:function(t){var e={position:!0,color:!0},i=t.getAtomData(this.getAtomParams(e)),r=new Zv(i,this.getBufferParams({pointSize:this.pointSize,sizeAttenuation:this.sizeAttenuation,sortParticles:this.sortParticles,useTexture:this.useTexture,alphaTest:this.alphaTest,forceTransparent:this.forceTransparent,edgeBleach:this.edgeBleach}));return{bufferList:[r]}},updateData:function(t,e){var i=e.sview.getAtomData(this.getAtomParams(t)),r={};t&&!t.position||(r.position=i.position),t&&!t.color||(r.color=i.color),e.bufferList[0].setAttributes(r)}}),Jp.add(\"point\",Wa),em.add(\"shader/Ribbon.vert\",\"#define STANDARD\\nuniform float nearClip;\\nuniform vec3 clipCenter;\\n#if defined( NEAR_CLIP ) || defined( RADIUS_CLIP ) || !defined( PICKING )\\nvarying vec3 vViewPosition;\\n#endif\\n#if defined( RADIUS_CLIP )\\nvarying vec3 vClipCenter;\\n#endif\\nattribute vec3 dir;\\nattribute float size;\\n#ifdef PICKING\\nattribute vec3 pickingColor;\\nvarying vec3 vPickingColor;\\n#else\\n#include color_pars_vertex\\n#ifndef FLAT_SHADED\\nvarying vec3 vNormal;\\n#endif\\n#endif\\n#include common\\nvoid main(void){\\n#ifdef PICKING\\nvPickingColor = pickingColor;\\n#else\\n#include color_vertex\\n#include beginnormal_vertex\\n#include defaultnormal_vertex\\n#ifndef FLAT_SHADED\\nvNormal = normalize( transformedNormal );\\n#endif\\n#endif\\n#include begin_vertex\\ntransformed += normalize( dir ) * size;\\n#include project_vertex\\n#if defined( NEAR_CLIP ) || defined( RADIUS_CLIP ) || !defined( PICKING )\\nvViewPosition = -mvPosition.xyz;\\n#endif\\n#if defined( RADIUS_CLIP )\\nvClipCenter = -( modelViewMatrix * vec4( clipCenter, 1.0 ) ).xyz;\\n#endif\\n#include nearclip_vertex\\n}\");var vb=new Uint16Array([0,1,2,1,3,2]),yb=function(t){function e(e,i){var r=e||{},n=r.position.length/3-1,o=4*n,a=3*o,s=new Float32Array(a),c=new Float32Array(a),u=new Float32Array(a),l=r.pickingColor?new Float32Array(a):void 0,h=a/3>65535?Uint32Array:Uint16Array,d=new h(a);t.call(this,{position:s,color:c,index:d,normal:u,pickingColor:l},i),this.addAttributes({dir:{type:\"v3\",value:new Float32Array(a)}}),this.addAttributes({size:{type:\"f\",value:new Float32Array(o)}}),this.setAttributes(r),this.meshIndex=d,this.makeIndex()}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var i={vertexShader:{}};return e.prototype.setAttributes=function(t){var e,i,r,n,o,a,s,c,u,l,h,d,f=this.size,p=f/4,m=this.geometry.attributes;t.position&&(e=t.position,s=m.position.array,m.position.needsUpdate=!0),t.normal&&(i=t.normal,c=m.normal.array,m.normal.needsUpdate=!0),t.size&&(r=t.size,u=m.size.array,m.size.needsUpdate=!0),t.dir&&(n=t.dir,l=m.dir.array,m.dir.needsUpdate=!0),t.color&&(o=t.color,h=m.color.array,m.color.needsUpdate=!0),t.pickingColor&&(a=t.pickingColor,d=m.pickingColor.array,m.pickingColor.needsUpdate=!0);var g,v,y,b,x,_,w,S=r?r[0]:null;for(g=0;gw)continue}f=T.substr(5,5).trim(),p=parseInt(T.substr(0,5)),m=parseInt(T.substr(15,5)),A.growIfFull(),A.atomTypeId[M]=S.add(d),A.x[M]=L,A.y[M]=R,A.z[M]=O,A.serial[M]=m,o.addAtom(P,\"\",\"\",f,p,0,\"l\"),M+=1}}}t.Debug&&qp.time(\"GroParser._parse \"+this.name);var i,r,n=this.structure,o=this.structureBuilder,a=this.firstModelOnly,s=this.asTrajectory,c=this.cAlphaOnly,u=n.frames,l=n.boxes,h=this.streamer.peekLines(3);n.title=h[0].trim();var d,f,p,m,g=h[2].length-h[2].lastIndexOf(\".\")-1,v=5+g,y=20,b=20+v,x=20+2*v,_=parseInt(h[1]),w=_+3,S=n.atomMap,A=n.atomStore;A.resize(_);var M=0,P=0,C=0;this.streamer.eachChunkOfLines(function(t){e(0,t.length,t)}),n.unitcell=new Ab(l[0][0],l[0][4],l[0][8],90,90,90,\"P 1\"),o.finalize(),n.finalizeAtoms(),lo(n),ho(n),n.finalizeBonds(),uv(n),vo(n),t.Debug&&qp.timeEnd(\"GroParser._parse \"+this.name)},Object.defineProperties(i.prototype,r),i}(Sb);tm.add(\"gro\",Mb);var Pb=function(t,e,i,r,n){this.structure=t,this.index=e,this.description=i||\"\",this.entityType=es(r||\"\"),this.chainIndexList=n||[],n.forEach(function(i){t.chainStore.entityIndex[i]=e})},Cb={type:{}};Cb.type.get=function(){return\"Entity\"},Pb.prototype.getEntityType=function(){return this.entityType},Pb.prototype.isPolymer=function(){return this.entityType===lg},Pb.prototype.isNonPolymer=function(){return this.entityType===hg},Pb.prototype.isMacrolide=function(){return this.entityType===dg},Pb.prototype.isWater=function(){return this.entityType===fg},Pb.prototype.eachChain=function(t){var e=this.structure.getChainProxy();this.chainIndexList.forEach(function(i){e.index=i,t(e)})},Object.defineProperties(Pb.prototype,Cb);var Tb={1:\"h\",2:\"h\",3:\"i\",4:\"h\",5:\"g\",6:\"h\",7:\"h\",8:\"h\",9:\"h\",10:\"h\",\"\":\"h\"},Eb=function(e){function i(t,i){var r=i||{};e.call(this,t,r),this.hex=Hi(r.hex,!1)}e&&(i.__proto__=e),i.prototype=Object.create(e&&e.prototype),i.prototype.constructor=i;var r={type:{}};return r.type.get=function(){return\"pdb\"},i.prototype._parse=function(){function e(t,e,it){for(var dt,ft,pt=t;pt0)continue;var mt,gt,vt,yt,bt;if(N){if(yt=s.split(k),bt=10===yt.length?1:0,g=yt[2],G&&\"CA\"!==g)continue;mt=parseFloat(yt[6-bt]),gt=parseFloat(yt[7-bt]),vt=parseFloat(yt[8-bt])}else{if(g=s.substr(12,4).trim(),G&&\"CA\"!==g)continue;mt=parseFloat(s.substr(30,8)),gt=parseFloat(s.substr(38,8)),vt=parseFloat(s.substr(46,8))}if(V&&(dt=3*r,i[dt+0]=mt,i[dt+1]=gt,i[dt+2]=vt,r+=1,X))continue;var xt;N?(u=parseInt(yt[1]),xt=\"\",v=\"H\"===s[0]?1:0,l=bt?\"\":yt[4],h=parseInt(yt[5-bt]),m=\"\",d=yt[3],y=parseFloat(yt[9-bt]),b=\"\",f=0):(u=parseInt(s.substr(6,5),U),z&&99999===u&&(U=16),xt=s.substr(76,2).trim(),v=\"H\"===s[0]?1:0,l=s[21].trim()||s.substr(72,4).trim(),h=parseInt(s.substr(22,4),j),z&&9999===h&&(j=16),m=s[26].trim(),d=s.substr(17,4).trim(),y=parseFloat(s.substr(60,6)),b=s[16].trim(),f=parseFloat(s.substr(54,6))),at.growIfFull(),at.atomTypeId[ut]=ot.add(g,xt),at.x[ut]=mt,at.y[ut]=gt,at.z[ut]=vt,at.serial[ut]=u,at.bfactor[ut]=isNaN(y)?0:y,at.altloc[ut]=b.charCodeAt(0),at.occupancy[ut]=isNaN(f)?0:f,v?L===l&&O===d&&(Wg.includes(d)||R===h&&D===m)||(T+=1,E=T.toString(),R=h,O=d,D=m):I||L===l||(T+=1,E=T.toString()),B.addAtom(lt,l,E,d,h,v,void 0,m),Y[u]=ut,ut+=1,I=!1,L=l}else if(\"CONECT\"===c){var _t=Y[parseInt(s.substr(6,5))],wt=[11,16,21,26],St={};if(void 0===_t)continue;for(dt=0;dt<4;++dt){var At=parseInt(s.substr(wt[dt],5));if(!Number.isNaN(At)&&(At=Y[At],void 0!==At))if(_t0)continue;var at=nt[c].replace(Ob,\"\");if(C&&\"CA\"!==at)continue;var st=parseFloat(nt[y]),ct=parseFloat(nt[b]),ut=parseFloat(nt[x]);if(P){var lt=3*r;if(i[lt+0]=st,i[lt+1]=ct,i[lt+2]=ut,r+=1,X>0)continue}var ht=nt[u],dt=parseInt(nt[s]),ft=nt[v];ft=\"?\"===ft?\"\":ft;var pt=nt[a],mt=nt[l],gt=\"H\"===nt[f][0]?1:0,vt=nt[m],yt=parseFloat(nt[_]),bt=parseFloat(nt[w]),xt=nt[d];if(xt=\".\"===xt?\"\":xt,G.growIfFull(),G.atomTypeId[W]=V.add(at,vt),G.x[W]=st,G.y[W]=ct,G.z[W]=ut,G.serial[W]=parseInt(nt[p]),G.bfactor[W]=isNaN(yt)?0:yt,G.occupancy[W]=isNaN(bt)?0:bt,G.altloc[W]=xt.charCodeAt(0),A.addAtom(X,pt,mt,ht,dt,gt,void 0,ft),t.Debug){var _t=I[mt];void 0!==_t&&_t!==pt&&qp.warn(_t,pt)}I[mt]=pt;var wt=nt[h];L[wt]||(L[wt]=new Set),L[wt].add(S.chainStore.count-1),W+=1}else{nt=o.match(Rb),rt=nt.length,B===F.length&&(B=0);for(var St=0;St0&&(l=!0))),w>=m&&w0)continue;var C=parseFloat(P.substr(0,10)),T=parseFloat(P.substr(10,10)),E=parseFloat(P.substr(20,10));if(o){var I=3*c;if(s[I+0]=C,s[I+1]=T,s[I+2]=E,c+=1,l)continue}var L=P.substr(31,3).trim(),R=L+(_+1);d.growIfFull(),d.atomTypeId[_]=h.add(R,L),d.x[_]=C,d.y[_]=T,d.z[_]=E,d.serial[_]=_,r.addAtom(S,\"\",\"\",\"HET\",1,1),\n_+=1}if(w>=v&&w0)continue;if(o&&S>0)continue;b.index=parseInt(P.substr(0,3))-1+A,x.index=parseInt(P.substr(3,3))-1+A;var O=parseInt(P.substr(6,3));i.bondStore.addBond(b,x,O)}++w}}t.Debug&&qp.time(\"SdfParser._parse \"+this.name);var i=this.structure,r=this.structureBuilder,n=this.firstModelOnly,o=this.asTrajectory,a=this.streamer.peekLines(2);i.id=a[0].trim(),i.title=a[1].trim();var s,c,u=i.frames,l=!1,h=i.atomMap,d=i.atomStore;d.resize(Math.round(this.streamer.data.length/50));var f,p,m,g,v,y,b=i.getAtomProxy(),x=i.getAtomProxy(),_=0,w=0,S=0,A=0;this.streamer.eachChunkOfLines(function(t){e(0,t.length,t)}),r.finalize(),i.finalizeAtoms(),i.finalizeBonds(),bo(i),t.Debug&&qp.timeEnd(\"SdfParser._parse \"+this.name)},i.prototype._postProcess=function(){bo(this.structure)},Object.defineProperties(i.prototype,r),i}(Sb);tm.add(\"sdf\",kb);var Fb=function(e){function i(){e.apply(this,arguments)}e&&(i.__proto__=e),i.prototype=Object.create(e&&e.prototype),i.prototype.constructor=i;var r={type:{}};return r.type.get=function(){return\"mol2\"},i.prototype._parse=function(){function e(t,e,M){for(var P,C=t;CMOLECULE\"===T?(y=b,p=0,++g):\"@ATOM\"===T?(y=x,m=d.count,c&&(r=0,i=new Float32Array(3*v),u.push(i),g>0&&(l=!0))):y=\"@BOND\"===T?_:0;else if(y===b)0===p?(o.title=T,o.id=T):1===p&&(P=T.split(n),v=parseInt(P[0])),++p;else if(y===x){if(P=T.split(n),s&&g>0)continue;var E=parseFloat(P[2]),I=parseFloat(P[3]),L=parseFloat(P[4]);if(c){var R=3*r;if(i[R+0]=E,i[R+1]=I,i[R+2]=L,r+=1,l)continue}var O=P[0],D=P[1],N=P[5].split(\".\")[0],k=P[6]?parseInt(P[6]):1,F=P[7]?P[7]:\"\",B=P[8]?parseFloat(P[8]):0;d.growIfFull(),d.atomTypeId[f]=h.add(D,N),d.x[f]=E,d.y[f]=I,d.z[f]=L,d.serial[f]=O,d.bfactor[f]=B,a.addAtom(g,\"\",\"\",F,k,1),f+=1}else if(y===_){if(s&&g>0)continue;if(c&&g>0)continue;P=T.split(n),w.index=parseInt(P[1])-1+m,S.index=parseInt(P[2])-1+m;var z=A[P[3]];o.bondStore.addBond(w,S,z)}}}t.Debug&&qp.time(\"Mol2Parser._parse \"+this.name);var i,r,n=/\\s+/,o=this.structure,a=this.structureBuilder,s=this.firstModelOnly,c=this.asTrajectory,u=o.frames,l=!1,h=o.atomMap,d=o.atomStore;d.resize(Math.round(this.streamer.data.length/60));var f=0,p=0,m=0,g=-1,v=0,y=0,b=1,x=2,_=3,w=o.getAtomProxy(),S=o.getAtomProxy(),A={1:1,2:2,3:3,am:1,ar:1,du:1,un:1,nc:0};this.streamer.eachChunkOfLines(function(t){e(0,t.length,t)}),a.finalize(),o.finalizeAtoms(),lo(o),mo(o,!0),go(o,!0),o.finalizeBonds(),bo(o),uv(o),t.Debug&&qp.timeEnd(\"Mol2Parser._parse \"+this.name)},Object.defineProperties(i.prototype,r),i}(Sb);tm.add(\"mol2\",Fb);var Bb=[\"mmtfVersion\",\"mmtfProducer\",\"unitCell\",\"spaceGroup\",\"structureId\",\"title\",\"depositionDate\",\"releaseDate\",\"experimentalMethods\",\"resolution\",\"rFree\",\"rWork\",\"bioAssemblyList\",\"ncsOperatorList\",\"entityList\",\"groupList\",\"numBonds\",\"numAtoms\",\"numGroups\",\"numChains\",\"numModels\",\"groupsPerChain\",\"chainsPerModel\"],zb=[\"xCoordList\",\"yCoordList\",\"zCoordList\",\"groupIdList\",\"groupTypeList\",\"chainIdList\",\"bFactorList\",\"atomIdList\",\"altLocList\",\"occupancyList\",\"secStructList\",\"insCodeList\",\"sequenceIndexList\",\"chainNameList\",\"bondAtomList\",\"bondOrderList\"],Ub=Bb.concat(zb),jb={0:\"i\".charCodeAt(0),1:\"s\".charCodeAt(0),2:\"h\".charCodeAt(0),3:\"e\".charCodeAt(0),4:\"g\".charCodeAt(0),5:\"b\".charCodeAt(0),6:\"t\".charCodeAt(0),7:\"l\".charCodeAt(0),\"-1\":\"\".charCodeAt(0)},$b=function(e){function i(){e.apply(this,arguments)}e&&(i.__proto__=e),i.prototype=Object.create(e&&e.prototype),i.prototype.constructor=i;var r={type:{}};return r.type.get=function(){return\"mmtf\"},i.prototype._parse=function(){t.Debug&&qp.time(\"MmtfParser._parse \"+this.name);var e,i,r,n,o,a=this.structure,s=Rs(Is(this.streamer.data)),c=[\"depositionDate\",\"releaseDate\",\"resolution\",\"rFree\",\"rWork\",\"experimentalMethods\"];c.forEach(function(t){void 0!==s[t]&&(a.header[t]=s[t])});var u,l,h,d,f,m;if(a.id=s.structureId,a.title=s.title,this.firstModelOnly||this.asTrajectory){for(f=1,d=s.chainsPerModel[0],h=0,e=0,i=d;e0&&(a.biomolDict[st]=ct)}var lt=s.unitCell;lt&&Array.isArray(lt)&<[0]?a.unitcell=new Ab({a:lt[0],b:lt[1],c:lt[2],alpha:lt[3],beta:lt[4],gamma:lt[5],spacegroup:s.spaceGroup}):a.unitcell=void 0,go(a,!0),mo(a,!0),a.finalizeAtoms(),a.finalizeBonds(),vo(a),t.Debug&&qp.timeEnd(\"MmtfParser._parse \"+this.name)},Object.defineProperties(i.prototype,r),i}(Sb);tm.add(\"mmtf\",$b);var Vb=function(t,e){this.name=t,this.path=e,this.coordinates=[],this.boxes=[]},Gb={type:{}};Gb.type.get=function(){return\"Frames\"},Object.defineProperties(Vb.prototype,Gb);var Hb=function(t){function e(e,i){t.call(this,e,i),this.frames=new Vb(this.name,this.path)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var i={type:{},__objName:{}};return i.type.get=function(){return\"trajectory\"},i.__objName.get=function(){return\"frames\"},Object.defineProperties(e.prototype,i),e}(_b),Wb=function(e){function i(){e.apply(this,arguments)}e&&(i.__proto__=e),i.prototype=Object.create(e&&e.prototype),i.prototype.constructor=i;var r={type:{}};return r.type.get=function(){return\"dcd\"},i.prototype._parse=function(){t.Debug&&qp.time(\"DcdParser._parse \"+this.name);var e=this.streamer.data;e instanceof Uint8Array&&(e=e.buffer);var i,r,n=new DataView(e),o=this.frames,a=o.coordinates,s=o.boxes,c={},u=0,l=new Int32Array(e,0,23),h=l[0]!==n.getInt32(0);if(84!==l[0])for(r=e.byteLength,i=0;i0)return void qp.error(\"dcd format with fixed atoms unsupported, aborting\");var y=c.NATOM,b=4*y;for(i=0,r=c.NSET;i=o.atomCount+6+d){n=n.split(a);for(var s=0,c=n.length;s0?0:1;this.streamer.eachChunkOfLines(function(t){i(0,t.length,t)}),r.header=o,r.setData(u,o.NVZ,o.NVY,o.NVX),t.Debug&&qp.timeEnd(\"CubeParser._parse \"+this.name)},i.prototype.getMatrix=function(){var t=this.volume.header,e=new p;return e.multiply((new p).makeTranslation(t.originX,t.originY,t.originZ)),e.multiply((new p).makeBasis(t.basisZ,t.basisY,t.basisX)),e},Object.defineProperties(i.prototype,r),i}(Xb);tm.add(\"cub\",Yb),tm.add(\"cube\",Yb);var Zb=function(e){function i(){e.apply(this,arguments)}e&&(i.__proto__=e),i.prototype=Object.create(e&&e.prototype),i.prototype.constructor=i;var r={type:{}};return r.type.get=function(){return\"dsn6\"},i.prototype._parse=function(){t.Debug&&qp.time(\"Dsn6Parser._parse \"+this.name);var e=this.streamer.data;e instanceof Uint8Array&&(e=e.buffer);var i,r,n=this.volume,o={},a=new Int16Array(e),s=new Uint8Array(e),c=String.fromCharCode.apply(null,s.subarray(0,512));if(c.startsWith(\":-)\"))o.xStart=parseInt(c.substr(10,5)),o.yStart=parseInt(c.substr(15,5)),o.zStart=parseInt(c.substr(20,5)),o.xExtent=parseInt(c.substr(32,5)),o.yExtent=parseInt(c.substr(38,5)),o.zExtent=parseInt(c.substr(42,5)),o.xRate=parseInt(c.substr(52,5)),o.yRate=parseInt(c.substr(58,5)),o.zRate=parseInt(c.substr(62,5)),o.xlen=parseFloat(c.substr(73,10))*this.voxelSize,o.ylen=parseFloat(c.substr(83,10))*this.voxelSize,o.zlen=parseFloat(c.substr(93,10))*this.voxelSize,o.alpha=parseFloat(c.substr(103,10)),o.beta=parseFloat(c.substr(113,10)),o.gamma=parseFloat(c.substr(123,10)),i=parseFloat(c.substr(138,12))/100,r=parseInt(c.substr(155,8));else{if(100!==a[18])for(var u=0,l=a.length;u>8&255}o.xStart=a[0],o.yStart=a[1],o.zStart=a[2],o.xExtent=a[3],o.yExtent=a[4],o.zExtent=a[5],o.xRate=a[6],o.yRate=a[7],o.zRate=a[8];var d=1/a[17],f=d*this.voxelSize;o.xlen=a[9]*f,o.ylen=a[10]*f,o.zlen=a[11]*f,o.alpha=a[12]*d,o.beta=a[13]*d,o.gamma=a[14]*d,i=a[15]/100,r=a[16]}n.header=o,qp.log(o,i,r);for(var p=new Float32Array(o.xExtent*o.yExtent*o.zExtent),m=512,g=Math.ceil(o.xExtent/8),v=Math.ceil(o.yExtent/8),y=Math.ceil(o.zExtent/8),b=0;ba){var n=i[r].trim();if(\"\"!==n)for(var o=n.split(s),d=0,f=o.length;d=c&&(v-c)%y!==0&&g=n.elements[c].count&&(c++,u=0);var d=i.parseASCIIElement(n.elements[c].properties,h);i.handleElement(r,n.elements[c].name,d),u++}}return this.postProcess(r)},postProcess:function(t){if(t.useColor){for(var e=0;e=0?i-1:i+e/3)},parseNormalIndex:function(t,e){var i=parseInt(t,10);return 3*(i>=0?i-1:i+e/3)},addVertex:function(t,e,i){var r=this.vertices,n=this.object.geometry.vertices;n.push(r[t+0]),n.push(r[t+1]),n.push(r[t+2]),n.push(r[e+0]),n.push(r[e+1]),n.push(r[e+2]),n.push(r[i+0]),n.push(r[i+1]),n.push(r[i+2])},addVertexLine:function(t){var e=this.vertices,i=this.object.geometry.vertices;i.push(e[t+0]),i.push(e[t+1]),i.push(e[t+2])},addNormal:function(t,e,i){var r=this.normals,n=this.object.geometry.normals;n.push(r[t+0]),n.push(r[t+1]),n.push(r[t+2]),n.push(r[e+0]),n.push(r[e+1]),n.push(r[e+2]),n.push(r[i+0]),n.push(r[i+1]),n.push(r[i+2])},addFace:function(t,e,i,r,n,o,a,s){var c,u=this.vertices.length,l=this.parseVertexIndex(t,u),h=this.parseVertexIndex(e,u),d=this.parseVertexIndex(i,u);if(void 0===r?this.addVertex(l,h,d):(c=this.parseVertexIndex(r,u),this.addVertex(l,h,c),this.addVertex(h,d,c)),void 0!==n){var f=this.normals.length;l=this.parseNormalIndex(n,f),h=n===o?l:this.parseNormalIndex(o,f),d=n===a?l:this.parseNormalIndex(a,f),void 0===r?this.addNormal(l,h,d):(c=this.parseNormalIndex(s,f),this.addNormal(l,h,c),this.addNormal(h,d,c))}},addLineGeometry:function(t){var e=this;this.object.geometry.type=\"Line\";for(var i=this.vertices.length,r=0,n=t.length;r0?w.addAttribute(\"normal\",new Rt(new Float32Array(_.normals),3)):w.computeVertexNormals(),b.push(w)}}return b}};var ix=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var i={type:{}};return i.type.get=function(){return\"obj\"},e.prototype.getLoader=function(){return new Ds},Object.defineProperties(e.prototype,i),e}(tx);tm.add(\"obj\",ix);var rx=function(t){function e(e,i){t.call(this,e,i),this.text={name:this.name,path:this.path,data:\"\"}}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var i={type:{},__objName:{}};return i.type.get=function(){return\"text\"},i.__objName.get=function(){return\"text\"},e.prototype._parse=function(){this.text.data=this.streamer.asText()},Object.defineProperties(e.prototype,i),e}(_b);tm.add(\"txt\",rx),tm.add(\"text\",rx);var nx=function(t){function e(e,i){\nt.call(this,e,i),this.table={name:this.name,path:this.path,colNames:[],data:[]}}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var i={type:{},__objName:{}};return i.type.get=function(){return\"csv\"},i.__objName.get=function(){return\"table\"},e.prototype._parse=function(){var t=this.table.data,e=/\\s*,\\s*/;this.streamer.eachChunkOfLines(function(i,r){for(var n=this,o=i.length,a=0;a0&&(o[T]=I)}else{var L=P.getElementsByTagName(\"clash\"),R=P.getElementsByTagName(\"mog-bond-outlier\"),O=P.getElementsByTagName(\"mog-angle-outlier\");if(R.length>0||O.length>0||L.length>0){var D={};a[T]=D;for(var N=0,k=L.length;N=252?6:P_>=248?5:P_>=240?4:P_>=224?3:P_>=192?2:1;M_[254]=M_[254]=1;var C_=0,T_=2,E_=4,I_=0,L_=1,R_=2,O_=-5,D_={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\"},N_=Object.prototype.toString;gc.prototype.push=function(t,e){var i,r,n,o,a,s,c=this,u=this.strm,l=this.options.chunkSize,h=this.options.dictionary,d=!1;if(this.ended)return!1;r=e===~~e?e:e===!0?E_:C_,\"string\"==typeof t?u.input=hc(t):\"[object ArrayBuffer]\"===N_.call(t)?u.input=new Uint8Array(t):u.input=t,u.next_in=0,u.avail_in=u.input.length;do{if(0===u.avail_out&&(u.output=new Uint8Array(l),u.next_out=0,u.avail_out=l),i=oc(u,C_),i===R_&&h&&(s=\"string\"==typeof h?uc(h):\"[object ArrayBuffer]\"===N_.call(h)?new Uint8Array(h):h,i=cc(c.strm,s)),i===O_&&d===!0&&(i=I_,d=!1),i!==L_&&i!==I_)return c.onEnd(i),c.ended=!0,!1;u.next_out&&(0!==u.avail_out&&i!==L_&&(0!==u.avail_in||r!==E_&&r!==T_)||(\"string\"===c.options.to?(n=fc(u.output,u.next_out),o=u.next_out-n,a=dc(u.output,n),u.next_out=o,u.avail_out=l-o,o&&Gs(u.output,u.output,n,o,0),c.onData(a)):c.onData(Vs(u.output,u.next_out)))),0===u.avail_in&&0===u.avail_out&&(d=!0)}while((u.avail_in>0||0===u.avail_out)&&i!==L_);return i===L_&&(r=E_),r===E_?(i=ac(this.strm),this.onEnd(i),this.ended=!0,i===I_):r!==T_||(this.onEnd(I_),u.avail_out=0,!0)},gc.prototype.onData=function(t){this.chunks.push(t)},gc.prototype.onEnd=function(t){t===I_&&(\"string\"===this.options.to?this.result=this.chunks.join(\"\"):this.result=Hs(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg},im.add(\"gz\",yc);var k_=\"//files.rcsb.org/download/\",F_=\"//mmtf.rcsb.org/v1.0/\",B_=F_+\"full/\",z_=F_+\"reduced/\";Qp.add(\"rcsb\",new bc);var U_=\"//pubchem.ncbi.nlm.nih.gov/rest/pug/compound/cid/\",j_=\"/SDF?record_type=3d\";Qp.add(\"pubchem\",new xc),Qp.add(\"ftp\",new _c),Qp.add(\"http\",new _c),Qp.add(\"https\",new _c);var $_=\"0.10.0-dev.9\";\"undefined\"==typeof window||window.Promise||(window.Promise=r),t.Version=$_,t.setDebug=Lr,t.DatasourceRegistry=Qp,t.StaticDatasource=wc,t.ParserRegistry=tm,t.autoLoad=kr,t.RepresentationRegistry=Jp,t.ColormakerRegistry=Kp,t.Colormaker=Bp,t.Selection=Tr,t.PdbWriter=Ur,t.Stage=hy,t.Collection=sy,t.ComponentCollection=cy,t.RepresentationCollection=uy,t.Assembly=ov,t.TrajectoryPlayer=dy,t.superpose=ga,t.guessElement=yo,t.Queue=Go,t.Counter=mm,t.throttle=Ki,t.download=Yi,t.getQuery=Vi,t.getDataInfo=Nr,t.getFileInfo=Zi,t.uniqueArray=rr,t.BufferRepresentation=ra,t.SphereBuffer=Ko,t.EllipsoidBuffer=Qo,t.CylinderBuffer=Jo,t.ConeBuffer=ta,t.ArrowBuffer=Xv,t.TextBuffer=ub,t.Shape=ea,t.Kdtree=ao,t.SpatialHash=qn,t.Signal=Cr,t.Matrix3=dt,t.Matrix4=p,t.Vector2=h,t.Vector3=g,t.Box3=lt,t.Quaternion=m,t.Plane=ft,t.Color=ct,Object.defineProperty(t,\"__esModule\",{value:!0})});\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/ngl/dist/ngl.js\n// module id = 3\n// module chunks = 0","var apply = Function.prototype.apply;\n\n// DOM APIs, for completeness\n\nexports.setTimeout = function() {\n return new Timeout(apply.call(setTimeout, window, arguments), clearTimeout);\n};\nexports.setInterval = function() {\n return new Timeout(apply.call(setInterval, window, arguments), clearInterval);\n};\nexports.clearTimeout =\nexports.clearInterval = function(timeout) {\n if (timeout) {\n timeout.close();\n }\n};\n\nfunction Timeout(id, clearFn) {\n this._id = id;\n this._clearFn = clearFn;\n}\nTimeout.prototype.unref = Timeout.prototype.ref = function() {};\nTimeout.prototype.close = function() {\n this._clearFn.call(window, this._id);\n};\n\n// Does not start the time, just sets up the members needed.\nexports.enroll = function(item, msecs) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = msecs;\n};\n\nexports.unenroll = function(item) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = -1;\n};\n\nexports._unrefActive = exports.active = function(item) {\n clearTimeout(item._idleTimeoutId);\n\n var msecs = item._idleTimeout;\n if (msecs >= 0) {\n item._idleTimeoutId = setTimeout(function onTimeout() {\n if (item._onTimeout)\n item._onTimeout();\n }, msecs);\n }\n};\n\n// setimmediate attaches itself to the global object\nrequire(\"setimmediate\");\nexports.setImmediate = setImmediate;\nexports.clearImmediate = clearImmediate;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/timers-browserify/main.js\n// module id = 4\n// module chunks = 0","(function (global, undefined) {\n \"use strict\";\n\n if (global.setImmediate) {\n return;\n }\n\n var nextHandle = 1; // Spec says greater than zero\n var tasksByHandle = {};\n var currentlyRunningATask = false;\n var doc = global.document;\n var registerImmediate;\n\n function setImmediate(callback) {\n // Callback can either be a function or a string\n if (typeof callback !== \"function\") {\n callback = new Function(\"\" + callback);\n }\n // Copy function arguments\n var args = new Array(arguments.length - 1);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i + 1];\n }\n // Store and register the task\n var task = { callback: callback, args: args };\n tasksByHandle[nextHandle] = task;\n registerImmediate(nextHandle);\n return nextHandle++;\n }\n\n function clearImmediate(handle) {\n delete tasksByHandle[handle];\n }\n\n function run(task) {\n var callback = task.callback;\n var args = task.args;\n switch (args.length) {\n case 0:\n callback();\n break;\n case 1:\n callback(args[0]);\n break;\n case 2:\n callback(args[0], args[1]);\n break;\n case 3:\n callback(args[0], args[1], args[2]);\n break;\n default:\n callback.apply(undefined, args);\n break;\n }\n }\n\n function runIfPresent(handle) {\n // From the spec: \"Wait until any invocations of this algorithm started before this one have completed.\"\n // So if we're currently running a task, we'll need to delay this invocation.\n if (currentlyRunningATask) {\n // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a\n // \"too much recursion\" error.\n setTimeout(runIfPresent, 0, handle);\n } else {\n var task = tasksByHandle[handle];\n if (task) {\n currentlyRunningATask = true;\n try {\n run(task);\n } finally {\n clearImmediate(handle);\n currentlyRunningATask = false;\n }\n }\n }\n }\n\n function installNextTickImplementation() {\n registerImmediate = function(handle) {\n process.nextTick(function () { runIfPresent(handle); });\n };\n }\n\n function canUsePostMessage() {\n // The test against `importScripts` prevents this implementation from being installed inside a web worker,\n // where `global.postMessage` means something completely different and can't be used for this purpose.\n if (global.postMessage && !global.importScripts) {\n var postMessageIsAsynchronous = true;\n var oldOnMessage = global.onmessage;\n global.onmessage = function() {\n postMessageIsAsynchronous = false;\n };\n global.postMessage(\"\", \"*\");\n global.onmessage = oldOnMessage;\n return postMessageIsAsynchronous;\n }\n }\n\n function installPostMessageImplementation() {\n // Installs an event handler on `global` for the `message` event: see\n // * https://developer.mozilla.org/en/DOM/window.postMessage\n // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages\n\n var messagePrefix = \"setImmediate$\" + Math.random() + \"$\";\n var onGlobalMessage = function(event) {\n if (event.source === global &&\n typeof event.data === \"string\" &&\n event.data.indexOf(messagePrefix) === 0) {\n runIfPresent(+event.data.slice(messagePrefix.length));\n }\n };\n\n if (global.addEventListener) {\n global.addEventListener(\"message\", onGlobalMessage, false);\n } else {\n global.attachEvent(\"onmessage\", onGlobalMessage);\n }\n\n registerImmediate = function(handle) {\n global.postMessage(messagePrefix + handle, \"*\");\n };\n }\n\n function installMessageChannelImplementation() {\n var channel = new MessageChannel();\n channel.port1.onmessage = function(event) {\n var handle = event.data;\n runIfPresent(handle);\n };\n\n registerImmediate = function(handle) {\n channel.port2.postMessage(handle);\n };\n }\n\n function installReadyStateChangeImplementation() {\n var html = doc.documentElement;\n registerImmediate = function(handle) {\n // Create a