From 8510dcf8d185ecc7b012cc84403e7b2ffb829ce0 Mon Sep 17 00:00:00 2001 From: vleadadmin <admin@vlabs.ac.in> Date: Thu, 12 Sep 2024 12:13:48 +0000 Subject: [PATCH] https://virtual-labs.github.io/exp-monostable-multivibrator-iitkgp click on the link to test your code. --- README.md | 191 + aim.md | 9 + assesment.log | 30 + assets/css/bootstrap.min.css | 7 + assets/css/common-styles-responsive.css | 97 + assets/css/common-styles.css | 104 + assets/css/fontawesome.min.css | 5 + assets/css/github-markdown.min.css | 2 + assets/css/katex.min.css | 1 + assets/css/vlabs-style.css | 444 + .../css/font-awesome.min.css | 4 + .../font-awesome-4.7.0/fonts/FontAwesome.otf | Bin 0 -> 134808 bytes .../fonts/fontawesome-webfont.eot | Bin 0 -> 165742 bytes .../fonts/fontawesome-webfont.svg | 2671 +++ .../fonts/fontawesome-webfont.ttf | Bin 0 -> 165548 bytes .../fonts/fontawesome-webfont.woff | Bin 0 -> 98024 bytes .../fonts/fontawesome-webfont.woff2 | Bin 0 -> 77160 bytes assets/images/favicon.ico | Bin 0 -> 1150 bytes assets/images/favicon.png | Bin 0 -> 3815 bytes assets/images/logo-new.png | Bin 0 -> 10192 bytes assets/images/logo.png | Bin 0 -> 95882 bytes assets/images/popout.png | Bin 0 -> 13510 bytes assets/images/vlabs-color-small-moe.jpg | Bin 0 -> 32248 bytes assets/js/assessment.js | 40 + assets/js/assessment_v2.js | 185 + assets/js/event-handler.js | 67 + assets/js/iframeResize.js | 29 + assets/js/instruction-box.js | 11 + assets/js/jquery-3.4.1.slim.min.js | 2 + assets/js/toggleSidebar.js | 37 + assets/js/webcomponents-loader.min.js | 1 + assets/js/zero-md.min.js | 1 + .../katex_assets/fonts/KaTeX_AMS-Regular.ttf | Bin 0 -> 63632 bytes .../katex_assets/fonts/KaTeX_AMS-Regular.woff | Bin 0 -> 33516 bytes .../fonts/KaTeX_AMS-Regular.woff2 | Bin 0 -> 28076 bytes .../fonts/KaTeX_Caligraphic-Bold.ttf | Bin 0 -> 12368 bytes .../fonts/KaTeX_Caligraphic-Bold.woff | Bin 0 -> 7716 bytes .../fonts/KaTeX_Caligraphic-Bold.woff2 | Bin 0 -> 6912 bytes .../fonts/KaTeX_Caligraphic-Regular.ttf | Bin 0 -> 12344 bytes .../fonts/KaTeX_Caligraphic-Regular.woff | Bin 0 -> 7656 bytes .../fonts/KaTeX_Caligraphic-Regular.woff2 | Bin 0 -> 6908 bytes .../katex_assets/fonts/KaTeX_Fraktur-Bold.ttf | Bin 0 -> 19584 bytes .../fonts/KaTeX_Fraktur-Bold.woff | Bin 0 -> 13296 bytes .../fonts/KaTeX_Fraktur-Bold.woff2 | Bin 0 -> 11348 bytes .../fonts/KaTeX_Fraktur-Regular.ttf | Bin 0 -> 19572 bytes .../fonts/KaTeX_Fraktur-Regular.woff | Bin 0 -> 13208 bytes .../fonts/KaTeX_Fraktur-Regular.woff2 | Bin 0 -> 11316 bytes assets/katex_assets/fonts/KaTeX_Main-Bold.ttf | Bin 0 -> 51336 bytes .../katex_assets/fonts/KaTeX_Main-Bold.woff | Bin 0 -> 29912 bytes .../katex_assets/fonts/KaTeX_Main-Bold.woff2 | Bin 0 -> 25324 bytes .../fonts/KaTeX_Main-BoldItalic.ttf | Bin 0 -> 32968 bytes .../fonts/KaTeX_Main-BoldItalic.woff | Bin 0 -> 19412 bytes .../fonts/KaTeX_Main-BoldItalic.woff2 | Bin 0 -> 16780 bytes .../katex_assets/fonts/KaTeX_Main-Italic.ttf | Bin 0 -> 33580 bytes .../katex_assets/fonts/KaTeX_Main-Italic.woff | Bin 0 -> 19676 bytes .../fonts/KaTeX_Main-Italic.woff2 | Bin 0 -> 16988 bytes .../katex_assets/fonts/KaTeX_Main-Regular.ttf | Bin 0 -> 53580 bytes .../fonts/KaTeX_Main-Regular.woff | Bin 0 -> 30772 bytes .../fonts/KaTeX_Main-Regular.woff2 | Bin 0 -> 26272 bytes .../fonts/KaTeX_Math-BoldItalic.ttf | Bin 0 -> 31196 bytes .../fonts/KaTeX_Math-BoldItalic.woff | Bin 0 -> 18668 bytes .../fonts/KaTeX_Math-BoldItalic.woff2 | Bin 0 -> 16400 bytes .../katex_assets/fonts/KaTeX_Math-Italic.ttf | Bin 0 -> 31308 bytes .../katex_assets/fonts/KaTeX_Math-Italic.woff | Bin 0 -> 18748 bytes .../fonts/KaTeX_Math-Italic.woff2 | Bin 0 -> 16440 bytes .../fonts/KaTeX_SansSerif-Bold.ttf | Bin 0 -> 24504 bytes .../fonts/KaTeX_SansSerif-Bold.woff | Bin 0 -> 14408 bytes .../fonts/KaTeX_SansSerif-Bold.woff2 | Bin 0 -> 12216 bytes .../fonts/KaTeX_SansSerif-Italic.ttf | Bin 0 -> 22364 bytes .../fonts/KaTeX_SansSerif-Italic.woff | Bin 0 -> 14112 bytes .../fonts/KaTeX_SansSerif-Italic.woff2 | Bin 0 -> 12028 bytes .../fonts/KaTeX_SansSerif-Regular.ttf | Bin 0 -> 19436 bytes .../fonts/KaTeX_SansSerif-Regular.woff | Bin 0 -> 12316 bytes .../fonts/KaTeX_SansSerif-Regular.woff2 | Bin 0 -> 10344 bytes .../fonts/KaTeX_Script-Regular.ttf | Bin 0 -> 16648 bytes .../fonts/KaTeX_Script-Regular.woff | Bin 0 -> 10588 bytes .../fonts/KaTeX_Script-Regular.woff2 | Bin 0 -> 9644 bytes .../fonts/KaTeX_Size1-Regular.ttf | Bin 0 -> 12228 bytes .../fonts/KaTeX_Size1-Regular.woff | Bin 0 -> 6496 bytes .../fonts/KaTeX_Size1-Regular.woff2 | Bin 0 -> 5468 bytes .../fonts/KaTeX_Size2-Regular.ttf | Bin 0 -> 11508 bytes .../fonts/KaTeX_Size2-Regular.woff | Bin 0 -> 6188 bytes .../fonts/KaTeX_Size2-Regular.woff2 | Bin 0 -> 5208 bytes .../fonts/KaTeX_Size3-Regular.ttf | Bin 0 -> 7588 bytes .../fonts/KaTeX_Size3-Regular.woff | Bin 0 -> 4420 bytes .../fonts/KaTeX_Size3-Regular.woff2 | Bin 0 -> 3624 bytes .../fonts/KaTeX_Size4-Regular.ttf | Bin 0 -> 10364 bytes .../fonts/KaTeX_Size4-Regular.woff | Bin 0 -> 5980 bytes .../fonts/KaTeX_Size4-Regular.woff2 | Bin 0 -> 4928 bytes .../fonts/KaTeX_Typewriter-Regular.ttf | Bin 0 -> 27556 bytes .../fonts/KaTeX_Typewriter-Regular.woff | Bin 0 -> 16028 bytes .../fonts/KaTeX_Typewriter-Regular.woff2 | Bin 0 -> 13568 bytes assets/katex_assets/katex.min.css | 1 + contributors.html | 478 + contributors.md | 14 + eslint.log | 1018 + experiment-name.md | 1 + feedback.html | 437 + feedback.md | 12 + images/README.md | 1 + images/mono_ckt_th.png | Bin 0 -> 86994 bytes images/monostable_prc.png | Bin 0 -> 44807 bytes images/outputwavfrm_mono.png | Bin 0 -> 89625 bytes images/pin-configuration-555-timer-8-pin.png | Bin 0 -> 2577 bytes images/post_quiz1.png | Bin 0 -> 27888 bytes index.html | 437 + links.log | 11 + performance-report.html | 179 + .../.github/workflows/deployment-script.yml | 39 + plugins/svc-rating/LICENSE | 661 + plugins/svc-rating/README.md | 85 + plugins/svc-rating/checkEventSubmission.js | 35 + plugins/svc-rating/config.js | 2 + plugins/svc-rating/imageData.js | 2 + plugins/svc-rating/images/empty-star.svg | 1 + plugins/svc-rating/images/half-star.svg | 1 + plugins/svc-rating/images/logo.jpg | Bin 0 -> 32248 bytes plugins/svc-rating/images/mobile-icon.svg | 57 + .../svc-rating/images/mobile_rating_icon.png | Bin 0 -> 33474 bytes plugins/svc-rating/images/star.svg | 1 + plugins/svc-rating/index.html | 26 + plugins/svc-rating/index.js | 6 + plugins/svc-rating/package-lock.json | 9560 ++++++++++ plugins/svc-rating/package.json | 22 + plugins/svc-rating/rating-display.js | 308 + plugins/svc-rating/rating-submit.js | 255 + plugins/svc-rating/rating.js | 135 + plugins/tool-performance/LICENSE | 661 + plugins/tool-performance/README.md | 149 + plugins/tool-performance/config.json | 11 + plugins/tool-performance/css/main.css | 120 + .../handlebars/performance-report.handlebars | 120 + plugins/tool-performance/index.html | 16 + plugins/tool-performance/js/api/gsc.js | 20 + plugins/tool-performance/js/api/lighthouse.js | 48 + plugins/tool-performance/js/commonData.js | 30 + plugins/tool-performance/js/main.js | 201 + plugins/tool-performance/js/parse.js | 32 + plugins/tool-performance/js/populate/gsc.js | 35 + .../js/populate/lighthouse.js | 106 + plugins/tool-performance/js/util.js | 90 + plugins/tool-validation/.gitignore | 1 + plugins/tool-validation/README.md | 48 + plugins/tool-validation/config.json | 11 + plugins/tool-validation/css/main.css | 293 + .../handlebars/validator-report.handlebars | 125 + plugins/tool-validation/index.html | 16 + plugins/tool-validation/js/link_validation.js | 52 + plugins/tool-validation/js/main.js | 422 + plugins/tool-validation/package-lock.json | 1645 ++ plugins/tool-validation/package.json | 16 + posttest.html | 637 + posttest.json | 64 + pretest.html | 653 + pretest.json | 65 + procedure.html | 448 + procedure.md | 21 + references.html | 436 + references.md | 8 + simulation.html | 384 + simulation/css/README.md | 1 + simulation/css/cktconnection_monostable.css | 169 + simulation/css/main.css | 1 + simulation/css/monostable_astable.css | 132 + simulation/css/simulationtabcss.css | 28 + simulation/images/Print Filled.png | Bin 0 -> 476 bytes simulation/images/README.md | 2 + simulation/images/monostable.png | Bin 0 -> 18581 bytes simulation/index.html | 13 + simulation/js/README.md | 1 + simulation/js/canvasjs.min.js | 5175 ++++++ simulation/js/cktconnection_monostable.js | 649 + simulation/js/graph.ob.js | 1 + simulation/js/graph_use.ob.js | 1 + simulation/js/jquery.knob.min.js | 438 + .../js/jquery_files/jquery-1.7.1.min.js | 4 + .../js/jquery_files/jquery.jqplot.min.js | 533 + simulation/js/jquery_files/jquery.min.js | 13 + simulation/js/jsplumb1.js | 15293 ++++++++++++++++ simulation/js/main.js | 1 + simulation/js/monostablecal.js | 300 + simulation/littledot.png | Bin 0 -> 1289 bytes simulation/monostable_multivibrator.html | 184 + sw.js | 15 + theory.html | 462 + theory.md | 50 + validate.log | 14 + validator-report.html | 163 + 188 files changed, 48350 insertions(+) create mode 100644 README.md create mode 100644 aim.md create mode 100644 assesment.log create mode 100644 assets/css/bootstrap.min.css create mode 100644 assets/css/common-styles-responsive.css create mode 100644 assets/css/common-styles.css create mode 100644 assets/css/fontawesome.min.css create mode 100644 assets/css/github-markdown.min.css create mode 100644 assets/css/katex.min.css create mode 100644 assets/css/vlabs-style.css create mode 100644 assets/fonts/font-awesome-4.7.0/css/font-awesome.min.css create mode 100644 assets/fonts/font-awesome-4.7.0/fonts/FontAwesome.otf create mode 100644 assets/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.eot create mode 100644 assets/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.svg create mode 100644 assets/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.ttf create mode 100644 assets/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.woff create mode 100644 assets/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.woff2 create mode 100644 assets/images/favicon.ico create mode 100644 assets/images/favicon.png create mode 100644 assets/images/logo-new.png create mode 100644 assets/images/logo.png create mode 100644 assets/images/popout.png create mode 100644 assets/images/vlabs-color-small-moe.jpg create mode 100644 assets/js/assessment.js create mode 100644 assets/js/assessment_v2.js create mode 100644 assets/js/event-handler.js create mode 100644 assets/js/iframeResize.js create mode 100644 assets/js/instruction-box.js create mode 100644 assets/js/jquery-3.4.1.slim.min.js create mode 100644 assets/js/toggleSidebar.js create mode 100644 assets/js/webcomponents-loader.min.js create mode 100644 assets/js/zero-md.min.js create mode 100644 assets/katex_assets/fonts/KaTeX_AMS-Regular.ttf create mode 100644 assets/katex_assets/fonts/KaTeX_AMS-Regular.woff create mode 100644 assets/katex_assets/fonts/KaTeX_AMS-Regular.woff2 create mode 100644 assets/katex_assets/fonts/KaTeX_Caligraphic-Bold.ttf create mode 100644 assets/katex_assets/fonts/KaTeX_Caligraphic-Bold.woff create mode 100644 assets/katex_assets/fonts/KaTeX_Caligraphic-Bold.woff2 create mode 100644 assets/katex_assets/fonts/KaTeX_Caligraphic-Regular.ttf create mode 100644 assets/katex_assets/fonts/KaTeX_Caligraphic-Regular.woff create mode 100644 assets/katex_assets/fonts/KaTeX_Caligraphic-Regular.woff2 create mode 100644 assets/katex_assets/fonts/KaTeX_Fraktur-Bold.ttf create mode 100644 assets/katex_assets/fonts/KaTeX_Fraktur-Bold.woff create mode 100644 assets/katex_assets/fonts/KaTeX_Fraktur-Bold.woff2 create mode 100644 assets/katex_assets/fonts/KaTeX_Fraktur-Regular.ttf create mode 100644 assets/katex_assets/fonts/KaTeX_Fraktur-Regular.woff create mode 100644 assets/katex_assets/fonts/KaTeX_Fraktur-Regular.woff2 create mode 100644 assets/katex_assets/fonts/KaTeX_Main-Bold.ttf create mode 100644 assets/katex_assets/fonts/KaTeX_Main-Bold.woff create mode 100644 assets/katex_assets/fonts/KaTeX_Main-Bold.woff2 create mode 100644 assets/katex_assets/fonts/KaTeX_Main-BoldItalic.ttf create mode 100644 assets/katex_assets/fonts/KaTeX_Main-BoldItalic.woff create mode 100644 assets/katex_assets/fonts/KaTeX_Main-BoldItalic.woff2 create mode 100644 assets/katex_assets/fonts/KaTeX_Main-Italic.ttf create mode 100644 assets/katex_assets/fonts/KaTeX_Main-Italic.woff create mode 100644 assets/katex_assets/fonts/KaTeX_Main-Italic.woff2 create mode 100644 assets/katex_assets/fonts/KaTeX_Main-Regular.ttf create mode 100644 assets/katex_assets/fonts/KaTeX_Main-Regular.woff create mode 100644 assets/katex_assets/fonts/KaTeX_Main-Regular.woff2 create mode 100644 assets/katex_assets/fonts/KaTeX_Math-BoldItalic.ttf create mode 100644 assets/katex_assets/fonts/KaTeX_Math-BoldItalic.woff create mode 100644 assets/katex_assets/fonts/KaTeX_Math-BoldItalic.woff2 create mode 100644 assets/katex_assets/fonts/KaTeX_Math-Italic.ttf create mode 100644 assets/katex_assets/fonts/KaTeX_Math-Italic.woff create mode 100644 assets/katex_assets/fonts/KaTeX_Math-Italic.woff2 create mode 100644 assets/katex_assets/fonts/KaTeX_SansSerif-Bold.ttf create mode 100644 assets/katex_assets/fonts/KaTeX_SansSerif-Bold.woff create mode 100644 assets/katex_assets/fonts/KaTeX_SansSerif-Bold.woff2 create mode 100644 assets/katex_assets/fonts/KaTeX_SansSerif-Italic.ttf create mode 100644 assets/katex_assets/fonts/KaTeX_SansSerif-Italic.woff create mode 100644 assets/katex_assets/fonts/KaTeX_SansSerif-Italic.woff2 create mode 100644 assets/katex_assets/fonts/KaTeX_SansSerif-Regular.ttf create mode 100644 assets/katex_assets/fonts/KaTeX_SansSerif-Regular.woff create mode 100644 assets/katex_assets/fonts/KaTeX_SansSerif-Regular.woff2 create mode 100644 assets/katex_assets/fonts/KaTeX_Script-Regular.ttf create mode 100644 assets/katex_assets/fonts/KaTeX_Script-Regular.woff create mode 100644 assets/katex_assets/fonts/KaTeX_Script-Regular.woff2 create mode 100644 assets/katex_assets/fonts/KaTeX_Size1-Regular.ttf create mode 100644 assets/katex_assets/fonts/KaTeX_Size1-Regular.woff create mode 100644 assets/katex_assets/fonts/KaTeX_Size1-Regular.woff2 create mode 100644 assets/katex_assets/fonts/KaTeX_Size2-Regular.ttf create mode 100644 assets/katex_assets/fonts/KaTeX_Size2-Regular.woff create mode 100644 assets/katex_assets/fonts/KaTeX_Size2-Regular.woff2 create mode 100644 assets/katex_assets/fonts/KaTeX_Size3-Regular.ttf create mode 100644 assets/katex_assets/fonts/KaTeX_Size3-Regular.woff create mode 100644 assets/katex_assets/fonts/KaTeX_Size3-Regular.woff2 create mode 100644 assets/katex_assets/fonts/KaTeX_Size4-Regular.ttf create mode 100644 assets/katex_assets/fonts/KaTeX_Size4-Regular.woff create mode 100644 assets/katex_assets/fonts/KaTeX_Size4-Regular.woff2 create mode 100644 assets/katex_assets/fonts/KaTeX_Typewriter-Regular.ttf create mode 100644 assets/katex_assets/fonts/KaTeX_Typewriter-Regular.woff create mode 100644 assets/katex_assets/fonts/KaTeX_Typewriter-Regular.woff2 create mode 100644 assets/katex_assets/katex.min.css create mode 100644 contributors.html create mode 100644 contributors.md create mode 100644 eslint.log create mode 100644 experiment-name.md create mode 100644 feedback.html create mode 100644 feedback.md create mode 100644 images/README.md create mode 100644 images/mono_ckt_th.png create mode 100644 images/monostable_prc.png create mode 100644 images/outputwavfrm_mono.png create mode 100644 images/pin-configuration-555-timer-8-pin.png create mode 100644 images/post_quiz1.png create mode 100644 index.html create mode 100644 links.log create mode 100644 performance-report.html create mode 100644 plugins/svc-rating/.github/workflows/deployment-script.yml create mode 100644 plugins/svc-rating/LICENSE create mode 100644 plugins/svc-rating/README.md create mode 100644 plugins/svc-rating/checkEventSubmission.js create mode 100644 plugins/svc-rating/config.js create mode 100644 plugins/svc-rating/imageData.js create mode 100644 plugins/svc-rating/images/empty-star.svg create mode 100644 plugins/svc-rating/images/half-star.svg create mode 100644 plugins/svc-rating/images/logo.jpg create mode 100644 plugins/svc-rating/images/mobile-icon.svg create mode 100644 plugins/svc-rating/images/mobile_rating_icon.png create mode 100644 plugins/svc-rating/images/star.svg create mode 100644 plugins/svc-rating/index.html create mode 100644 plugins/svc-rating/index.js create mode 100644 plugins/svc-rating/package-lock.json create mode 100644 plugins/svc-rating/package.json create mode 100644 plugins/svc-rating/rating-display.js create mode 100644 plugins/svc-rating/rating-submit.js create mode 100644 plugins/svc-rating/rating.js create mode 100644 plugins/tool-performance/LICENSE create mode 100644 plugins/tool-performance/README.md create mode 100644 plugins/tool-performance/config.json create mode 100644 plugins/tool-performance/css/main.css create mode 100644 plugins/tool-performance/handlebars/performance-report.handlebars create mode 100644 plugins/tool-performance/index.html create mode 100644 plugins/tool-performance/js/api/gsc.js create mode 100644 plugins/tool-performance/js/api/lighthouse.js create mode 100644 plugins/tool-performance/js/commonData.js create mode 100644 plugins/tool-performance/js/main.js create mode 100644 plugins/tool-performance/js/parse.js create mode 100644 plugins/tool-performance/js/populate/gsc.js create mode 100644 plugins/tool-performance/js/populate/lighthouse.js create mode 100644 plugins/tool-performance/js/util.js create mode 100644 plugins/tool-validation/.gitignore create mode 100644 plugins/tool-validation/README.md create mode 100644 plugins/tool-validation/config.json create mode 100644 plugins/tool-validation/css/main.css create mode 100644 plugins/tool-validation/handlebars/validator-report.handlebars create mode 100644 plugins/tool-validation/index.html create mode 100644 plugins/tool-validation/js/link_validation.js create mode 100644 plugins/tool-validation/js/main.js create mode 100644 plugins/tool-validation/package-lock.json create mode 100644 plugins/tool-validation/package.json create mode 100644 posttest.html create mode 100644 posttest.json create mode 100644 pretest.html create mode 100644 pretest.json create mode 100644 procedure.html create mode 100644 procedure.md create mode 100644 references.html create mode 100644 references.md create mode 100644 simulation.html create mode 100644 simulation/css/README.md create mode 100644 simulation/css/cktconnection_monostable.css create mode 100644 simulation/css/main.css create mode 100644 simulation/css/monostable_astable.css create mode 100644 simulation/css/simulationtabcss.css create mode 100644 simulation/images/Print Filled.png create mode 100644 simulation/images/README.md create mode 100644 simulation/images/monostable.png create mode 100644 simulation/index.html create mode 100644 simulation/js/README.md create mode 100644 simulation/js/canvasjs.min.js create mode 100644 simulation/js/cktconnection_monostable.js create mode 100644 simulation/js/graph.ob.js create mode 100644 simulation/js/graph_use.ob.js create mode 100644 simulation/js/jquery.knob.min.js create mode 100644 simulation/js/jquery_files/jquery-1.7.1.min.js create mode 100644 simulation/js/jquery_files/jquery.jqplot.min.js create mode 100644 simulation/js/jquery_files/jquery.min.js create mode 100644 simulation/js/jsplumb1.js create mode 100644 simulation/js/main.js create mode 100644 simulation/js/monostablecal.js create mode 100644 simulation/littledot.png create mode 100644 simulation/monostable_multivibrator.html create mode 100644 sw.js create mode 100644 theory.html create mode 100644 theory.md create mode 100644 validate.log create mode 100644 validator-report.html diff --git a/README.md b/README.md new file mode 100644 index 0000000..ee7f50f --- /dev/null +++ b/README.md @@ -0,0 +1,191 @@ +## README + +## Quiz +### 1. Introduction +This part of the experiment is specifically for assessment purposes. This allows for the creation of a quiz with multiple choice single answer questions. +These can be +* Pretest - Pre requisite quizzes +* Posttest - Testing the learning +* Learning Unit Quizzes - Quizzes to test the section's learning. +The format for the same is discussed below. + +### 2. Target Audience +This guide is meant for anyone creating a virtual lab and wanting to have a quiz section. + +### 3. Structure of quiz +The data for the quiz needs to be added to a json file pertaining the following specifications. +1. The quiz needs to have an array of objects, each object representing a question. As shown below +``` +"questions" : [ + { + "question" : "What is 1+2 ?", + "answers" : + { + "a" : 1, + "b" : 2, + "c" : 3, + "d" : 4 + }, + "correctAnswer" : c + } +] +``` +### 4. Quiz V2.0 (Enhancements done) +The new format of quiz has multiple new additions. The details for which have been described below. +The format of json would be as linked [here](./pretest.json) + +First we will look at the additional fields added + +### 4.1 Fields +* Mandatory Fields + * [version](#42-version) - Without which the enhanced quiz will not be rendered. + * [levels](#44-levels) - Adds difficulty level to each question (Allows for filtering) + +* Optional Fields + * [explanations](#43-explanations) - Adds an explanation to each answer. If wrong answer is choosen, only it's explanation pops up. If correct answer is choosen, all available explanations pop up. + +### 4.2 Version +The very first field is absolutely necessary. This ensures that the quiz supports the new features. +``` +"version": 2.0 +``` + +### 4.3 Explanations +Just like we mention answers, we can have a section for explanation so that they show up after an answer is marked. This is optional and can completely be left out. The three ways of defining (Assuming there are 4 answers a, b, c, d): + +1. All answers have explanations +``` +"explanations": { + "a" : "Explanation 1, + "b" : "Explanation 2" + "c" : "Explanation 3" + "d" : "Explanation 4" +}, +``` +2. Some answers have explanations +``` +"explanations": { + "a" : "Explanation 1, + "d" : "Explanation 4" +}, +``` + +3. No answers have explanations +``` +/* Can be excluded from json */ +``` + + +### 4.4 Levels +Adds an ability to filter questions based on difficulty levels. This is mandatory and has to be mentioned for each question. +The three available difficulty levels are: +``` +['beginner', 'intermediate', 'advanced'] +``` +Using any other will not work. The format for the same: +``` +"difficulty" : "beginner" +``` + +### 5. Tips +1. An extra functionality of explanation is the ability to add an Rich Text (HTML Formatted). It will work just like in html. +This could be used for + a. Adding hyper links + b. Formatting text etc. +``` +"explanations": { + "a" : "Explanation 1 <a href='www.google.com'>here</a>", + "b" : "Explanation 2" +}, +``` +> This can be done in either of explanation, answer and the question. +An example for the same can be found here: source | website + +2. Multi Correct +To mimic the functionality of multi correct questions, one can add options as part of the question itself, and the actual answer options can be like : +``` + "answers" : + { + "a" : "both i and ii", + "b" : "All i, ii, iii, iv", + "c" : "Only i", + "d" : "None of the above" + } +``` +An example for the same can be found here: source | website + +3. Image Support +You can add images to both question and answers, there can be multiple cases of the same. The following examples can be followed. +* **Image in question** : Add img tag in question. +``` +"questions" : [ + { + "question": "$\\\\$ <img src='./images/example.png' alt='question image'/>", + "answers" : + { + "a" : 1, + "b" : 2, + "c" : 3, + "d" : 4 + }, + "correctAnswer" : c + } +] +``` + +* **Image and Text in question** : Add br tag and img tag in question after text. +``` +"questions" : [ + { + "question": "This is an example question $\\\\$ <br><img src='./images/example.png' alt='question image'/>", + "answers" : + { + "a" : 1, + "b" : 2, + "c" : 3, + "d" : 4 + }, + "correctAnswer" : c + } +] +``` +> The same two cases apply for answers too. [Example Link](https://github.com/virtual-labs/exp-convolutional-codes-iiith/blob/dev/experiment/posttest.json) + +**Make sure the image aspect ratio remains constant and good to maintain the structure** + +### 6. Manual Validation of Quiz Json (wrt version 2.0) +This is till the automatic validation is set up. +* The first field has to be version with 2 or 2.0 as value. +* The questions needs to be an array of objects containing questions. +* Each question object should hav a question field, answers field, difficulty field and correctAnswer field. + * question : Should be a string + * answer : Should be an object containing options, and each option should be a string. + * difficulty : should be a string and should have values from ["beginner", "intermerdiate", "advanced"] + * correctAnswer : Should be a string and it's value should be present in keys of one of the answer. +* If explanation is present it has to be an object and needs to follow the description of answer object. + +### 7. Test Cases +- [x] Using the mentioned quiz format +- [x] Using the old quiz json format +- [ ] Not including the version in json +- [ ] Including incorrect version in json +- [ ] Including correct version but following old format +- [x] Difficulty not mentioned +- [x] Incorrect difficulty level mentioned +- [x] explanation not provided for all options +- [x] explanation empty +- [x] explanation object not defined +- [x] HTML in quuestion (tags like hyper links, bold etc) +- [x] HTML in answer (tags like hyper links, bold etc) +- [x] HTML in explanation (tags like hyper links, bold etc) +- [x] On wrong annswer only wrong answer is colored red +- [x] On correct answer all red color resets +- [x] Combination of filters working properly +- [x] If all questions have same difficulty, filter option should be hidden. +- [x] When questions are answered after filtering, marks should be counted out of filtewred questions, not total. +- [x] On wrong answer only explanation of wrong answer is shown +- [x] On correct answer all available explanations are shown + +### 8. TODO +* Add automatic schema validation +* Link to source files implementing the above tips. diff --git a/aim.md b/aim.md new file mode 100644 index 0000000..fd3ffd6 --- /dev/null +++ b/aim.md @@ -0,0 +1,9 @@ +## Aim of the experiment + +1. To perform a Monostable Multivibrator using 555 Timer +2. To observe and plot the Trigger Input Voltage. +3. To observe and plot the Output Voltage. +4. To observe and plot the Capacitance Voltage. +5. Calculate the practical time period by the waveform. +6. Calculate the theoretical time period by 1.1R<sub>A</sub>C. +7. Calculate the frequency of the waveform. \ No newline at end of file diff --git a/assesment.log b/assesment.log new file mode 100644 index 0000000..353f074 --- /dev/null +++ b/assesment.log @@ -0,0 +1,30 @@ +=/pretest.json +{ + _: [], + f: [ + '/home/runner/work/exp-monostable-multivibrator-iitkgp/exp-monostable-multivibrator-iitkgp/experiment/pretest.json' + ], + files: [ + '/home/runner/work/exp-monostable-multivibrator-iitkgp/exp-monostable-multivibrator-iitkgp/experiment/pretest.json' + ], + c: 'assessment', + contentTypes: 'assessment', + 'content-types': 'assessment', + '$0': 'validate' +} +Validated true +=/posttest.json +{ + _: [], + f: [ + '/home/runner/work/exp-monostable-multivibrator-iitkgp/exp-monostable-multivibrator-iitkgp/experiment/posttest.json' + ], + files: [ + '/home/runner/work/exp-monostable-multivibrator-iitkgp/exp-monostable-multivibrator-iitkgp/experiment/posttest.json' + ], + c: 'assessment', + contentTypes: 'assessment', + 'content-types': 'assessment', + '$0': 'validate' +} +Validated true diff --git a/assets/css/bootstrap.min.css b/assets/css/bootstrap.min.css new file mode 100644 index 0000000..86b6845 --- /dev/null +++ b/assets/css/bootstrap.min.css @@ -0,0 +1,7 @@ +/*! + * Bootstrap v4.4.1 (https://getbootstrap.com/) + * Copyright 2011-2019 The Bootstrap Authors + * Copyright 2011-2019 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */:root{--blue:#007bff;--indigo:#6610f2;--purple:#6f42c1;--pink:#e83e8c;--red:#dc3545;--orange:#fd7e14;--yellow:#ffc107;--green:#28a745;--teal:#20c997;--cyan:#17a2b8;--white:#fff;--gray:#6c757d;--gray-dark:#343a40;--primary:#007bff;--secondary:#6c757d;--success:#28a745;--info:#17a2b8;--warning:#ffc107;--danger:#dc3545;--light:#f8f9fa;--dark:#343a40;--breakpoint-xs:0;--breakpoint-sm:576px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--font-family-sans-serif:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus:not(:focus-visible){outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:transparent}a:hover{color:#0056b3;text-decoration:underline}a:not([href]){color:inherit;text-decoration:none}a:not([href]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg{overflow:hidden;vertical-align:middle}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}select{word-wrap:normal}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;font-weight:500;line-height:1.2}.h1,h1{font-size:2.5rem}.h2,h2{font-size:2rem}.h3,h3{font-size:1.75rem}.h4,h4{font-size:1.5rem}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:6rem;font-weight:300;line-height:1.2}.display-2{font-size:5.5rem;font-weight:300;line-height:1.2}.display-3{font-size:4.5rem;font-weight:300;line-height:1.2}.display-4{font-size:3.5rem;font-weight:300;line-height:1.2}hr{margin-top:1rem;margin-bottom:1rem;border:0;border-top:1px solid rgba(0,0,0,.1)}.small,small{font-size:80%;font-weight:400}.mark,mark{padding:.2em;background-color:#fcf8e3}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:90%;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote-footer{display:block;font-size:80%;color:#6c757d}.blockquote-footer::before{content:"\2014\00A0"}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem;max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:90%;color:#6c757d}code{font-size:87.5%;color:#e83e8c;word-wrap:break-word}a>code{color:inherit}kbd{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid,.container-lg,.container-md,.container-sm,.container-xl{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}.row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-auto,.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-auto,.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-auto,.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.row-cols-1>*{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.row-cols-2>*{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.row-cols-3>*{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.row-cols-4>*{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.row-cols-5>*{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.row-cols-6>*{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-first{-ms-flex-order:-1;order:-1}.order-last{-ms-flex-order:13;order:13}.order-0{-ms-flex-order:0;order:0}.order-1{-ms-flex-order:1;order:1}.order-2{-ms-flex-order:2;order:2}.order-3{-ms-flex-order:3;order:3}.order-4{-ms-flex-order:4;order:4}.order-5{-ms-flex-order:5;order:5}.order-6{-ms-flex-order:6;order:6}.order-7{-ms-flex-order:7;order:7}.order-8{-ms-flex-order:8;order:8}.order-9{-ms-flex-order:9;order:9}.order-10{-ms-flex-order:10;order:10}.order-11{-ms-flex-order:11;order:11}.order-12{-ms-flex-order:12;order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.row-cols-sm-1>*{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.row-cols-sm-2>*{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.row-cols-sm-3>*{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.row-cols-sm-4>*{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.row-cols-sm-5>*{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.row-cols-sm-6>*{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-sm-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-sm-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-sm-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-sm-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-sm-first{-ms-flex-order:-1;order:-1}.order-sm-last{-ms-flex-order:13;order:13}.order-sm-0{-ms-flex-order:0;order:0}.order-sm-1{-ms-flex-order:1;order:1}.order-sm-2{-ms-flex-order:2;order:2}.order-sm-3{-ms-flex-order:3;order:3}.order-sm-4{-ms-flex-order:4;order:4}.order-sm-5{-ms-flex-order:5;order:5}.order-sm-6{-ms-flex-order:6;order:6}.order-sm-7{-ms-flex-order:7;order:7}.order-sm-8{-ms-flex-order:8;order:8}.order-sm-9{-ms-flex-order:9;order:9}.order-sm-10{-ms-flex-order:10;order:10}.order-sm-11{-ms-flex-order:11;order:11}.order-sm-12{-ms-flex-order:12;order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.row-cols-md-1>*{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.row-cols-md-2>*{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.row-cols-md-3>*{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.row-cols-md-4>*{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.row-cols-md-5>*{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.row-cols-md-6>*{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-md-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-md-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-md-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-md-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-md-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-md-first{-ms-flex-order:-1;order:-1}.order-md-last{-ms-flex-order:13;order:13}.order-md-0{-ms-flex-order:0;order:0}.order-md-1{-ms-flex-order:1;order:1}.order-md-2{-ms-flex-order:2;order:2}.order-md-3{-ms-flex-order:3;order:3}.order-md-4{-ms-flex-order:4;order:4}.order-md-5{-ms-flex-order:5;order:5}.order-md-6{-ms-flex-order:6;order:6}.order-md-7{-ms-flex-order:7;order:7}.order-md-8{-ms-flex-order:8;order:8}.order-md-9{-ms-flex-order:9;order:9}.order-md-10{-ms-flex-order:10;order:10}.order-md-11{-ms-flex-order:11;order:11}.order-md-12{-ms-flex-order:12;order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.row-cols-lg-1>*{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.row-cols-lg-2>*{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.row-cols-lg-3>*{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.row-cols-lg-4>*{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.row-cols-lg-5>*{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.row-cols-lg-6>*{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-lg-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-lg-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-lg-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-lg-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-lg-first{-ms-flex-order:-1;order:-1}.order-lg-last{-ms-flex-order:13;order:13}.order-lg-0{-ms-flex-order:0;order:0}.order-lg-1{-ms-flex-order:1;order:1}.order-lg-2{-ms-flex-order:2;order:2}.order-lg-3{-ms-flex-order:3;order:3}.order-lg-4{-ms-flex-order:4;order:4}.order-lg-5{-ms-flex-order:5;order:5}.order-lg-6{-ms-flex-order:6;order:6}.order-lg-7{-ms-flex-order:7;order:7}.order-lg-8{-ms-flex-order:8;order:8}.order-lg-9{-ms-flex-order:9;order:9}.order-lg-10{-ms-flex-order:10;order:10}.order-lg-11{-ms-flex-order:11;order:11}.order-lg-12{-ms-flex-order:12;order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.row-cols-xl-1>*{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.row-cols-xl-2>*{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.row-cols-xl-3>*{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.row-cols-xl-4>*{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.row-cols-xl-5>*{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.row-cols-xl-6>*{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-xl-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-xl-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-xl-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-xl-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-xl-first{-ms-flex-order:-1;order:-1}.order-xl-last{-ms-flex-order:13;order:13}.order-xl-0{-ms-flex-order:0;order:0}.order-xl-1{-ms-flex-order:1;order:1}.order-xl-2{-ms-flex-order:2;order:2}.order-xl-3{-ms-flex-order:3;order:3}.order-xl-4{-ms-flex-order:4;order:4}.order-xl-5{-ms-flex-order:5;order:5}.order-xl-6{-ms-flex-order:6;order:6}.order-xl-7{-ms-flex-order:7;order:7}.order-xl-8{-ms-flex-order:8;order:8}.order-xl-9{-ms-flex-order:9;order:9}.order-xl-10{-ms-flex-order:10;order:10}.order-xl-11{-ms-flex-order:11;order:11}.order-xl-12{-ms-flex-order:12;order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.table{width:100%;margin-bottom:1rem;color:#212529}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm td,.table-sm th{padding:.3rem}.table-bordered{border:1px solid #dee2e6}.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{color:#212529;background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-primary tbody+tbody,.table-primary td,.table-primary th,.table-primary thead th{border-color:#7abaff}.table-hover .table-primary:hover{background-color:#9fcdff}.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-secondary tbody+tbody,.table-secondary td,.table-secondary th,.table-secondary thead th{border-color:#b3b7bb}.table-hover .table-secondary:hover{background-color:#c8cbcf}.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-success tbody+tbody,.table-success td,.table-success th,.table-success thead th{border-color:#8fd19e}.table-hover .table-success:hover{background-color:#b1dfbb}.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-info tbody+tbody,.table-info td,.table-info th,.table-info thead th{border-color:#86cfda}.table-hover .table-info:hover{background-color:#abdde5}.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-warning tbody+tbody,.table-warning td,.table-warning th,.table-warning thead th{border-color:#ffdf7e}.table-hover .table-warning:hover{background-color:#ffe8a1}.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-danger tbody+tbody,.table-danger td,.table-danger th,.table-danger thead th{border-color:#ed969e}.table-hover .table-danger:hover{background-color:#f1b0b7}.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-light tbody+tbody,.table-light td,.table-light th,.table-light thead th{border-color:#fbfcfc}.table-hover .table-light:hover{background-color:#ececf6}.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#95999c}.table-hover .table-dark:hover{background-color:#b9bbbe}.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th{background-color:rgba(0,0,0,.075)}.table-hover .table-active:hover{background-color:rgba(0,0,0,.075)}.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#343a40}.table-dark td,.table-dark th,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:rgba(255,255,255,.05)}.table-dark.table-hover tbody tr:hover{color:#fff;background-color:rgba(255,255,255,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:transparent;border:0}.form-control:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::-webkit-input-placeholder{color:#6c757d;opacity:1}.form-control::-moz-placeholder{color:#6c757d;opacity:1}.form-control:-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;font-size:1rem;line-height:1.5;color:#212529;background-color:transparent;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size]{height:auto}textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:#28a745;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-valid,.was-validated .custom-select:valid{border-color:#28a745;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-valid:focus,.was-validated .custom-select:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label::before,.was-validated .custom-control-input:valid~.custom-control-label::before{border-color:#28a745}.custom-control-input.is-valid:checked~.custom-control-label::before,.was-validated .custom-control-input:valid:checked~.custom-control-label::before{border-color:#34ce57;background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label::before,.was-validated .custom-control-input:valid:focus~.custom-control-label::before{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label::before,.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label::before{border-color:#28a745}.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-invalid,.was-validated .custom-select:invalid{border-color:#dc3545;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-invalid:focus,.was-validated .custom-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label::before,.was-validated .custom-control-input:invalid~.custom-control-label::before{border-color:#dc3545}.custom-control-input.is-invalid:checked~.custom-control-label::before,.was-validated .custom-control-input:invalid:checked~.custom-control-label::before{border-color:#e4606d;background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label::before,.was-validated .custom-control-input:invalid:focus~.custom-control-label::before{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label::before,.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label::before{border-color:#dc3545}.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap;-ms-flex-align:center;align-items:center}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;margin-bottom:0}.form-inline .form-group{display:-ms-flexbox;display:flex;-ms-flex:0 0 auto;flex:0 0 auto;-ms-flex-flow:row wrap;flex-flow:row wrap;-ms-flex-align:center;align-items:center;margin-bottom:0}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;-ms-flex-negative:0;flex-shrink:0;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;color:#212529;text-align:center;vertical-align:middle;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:transparent;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529;text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn.disabled,.btn:disabled{opacity:.65}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.focus,.btn-primary:focus{color:#fff;background-color:#0069d9;border-color:#0062cc;box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.focus,.btn-secondary:focus{color:#fff;background-color:#5a6268;border-color:#545b62;box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{color:#fff;background-color:#218838;border-color:#1e7e34;box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{color:#fff;background-color:#138496;border-color:#117a8b;box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{color:#212529;background-color:#e0a800;border-color:#d39e00;box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{color:#fff;background-color:#c82333;border-color:#bd2130;box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{color:#212529;background-color:#e2e6ea;border-color:#dae0e5;box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{color:#fff;background-color:#23272b;border-color:#1d2124;box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary{color:#007bff;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#007bff;background-color:transparent}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{color:#6c757d;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:transparent}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-success{color:#28a745;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:transparent}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:transparent}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:transparent}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:transparent}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:transparent}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:transparent}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{font-weight:400;color:#007bff;text-decoration:none}.btn-link:hover{color:#0056b3;text-decoration:underline}.btn-link.focus,.btn-link:focus{text-decoration:underline;box-shadow:none}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-toggle::after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropleft .dropdown-toggle::after{display:none}.dropleft .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty::after{margin-left:0}.dropleft .dropdown-toggle::before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:transparent;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;-ms-flex:1 1 auto;flex:1 1 auto}.btn-group-vertical>.btn:hover,.btn-group>.btn:hover{z-index:1}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus{z-index:1}.btn-toolbar{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:start;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split::after,.dropright .dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after{margin-left:0}.dropleft .dropdown-toggle-split::before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:center;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio],.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:stretch;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control,.input-group>.form-control-plaintext{position:relative;-ms-flex:1 1 0%;flex:1 1 0%;min-width:0;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control,.input-group>.form-control-plaintext+.custom-file,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label::after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-append,.input-group-prepend{display:-ms-flexbox;display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn:focus,.input-group-prepend .btn:focus{z-index:3}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.custom-select,.input-group-lg>.form-control:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.custom-select,.input-group-sm>.form-control:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:-ms-inline-flexbox;display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;left:0;z-index:-1;width:1rem;height:1.25rem;opacity:0}.custom-control-input:checked~.custom-control-label::before{color:#fff;border-color:#007bff;background-color:#007bff}.custom-control-input:focus~.custom-control-label::before{box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label::before{border-color:#80bdff}.custom-control-input:not(:disabled):active~.custom-control-label::before{color:#fff;background-color:#b3d7ff;border-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label,.custom-control-input[disabled]~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label::before,.custom-control-input[disabled]~.custom-control-label::before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label::before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;pointer-events:none;content:"";background-color:#fff;border:#adb5bd solid 1px}.custom-control-label::after{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:"";background:no-repeat 50%/50% 50%}.custom-checkbox .custom-control-label::before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::before{border-color:#007bff;background-color:#007bff}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label::before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label::before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.custom-switch .custom-control-label::after{top:calc(.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-transform .15s ease-in-out;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-transform .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label::after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label::after{background-color:#fff;-webkit-transform:translateX(.75rem);transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-select{display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{display:none}.custom-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.custom-select-sm{height:calc(1.5em + .5rem + 2px);padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.custom-select-lg{height:calc(1.5em + 1rem + 2px);padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.custom-file{position:relative;display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);margin-bottom:0}.custom-file-input{position:relative;z-index:2;width:100%;height:calc(1.5em + .75rem + 2px);margin:0;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:disabled~.custom-file-label,.custom-file-input[disabled]~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label::after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse]::after{content:attr(data-browse)}.custom-file-label{position:absolute;top:0;right:0;left:0;z-index:1;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label::after{position:absolute;top:0;right:0;bottom:0;z-index:3;display:block;height:calc(1.5em + .75rem);padding:.375rem .75rem;line-height:1.5;color:#495057;content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;height:1.4rem;padding:0;background-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#007bff;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#b3d7ff}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#007bff;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{-moz-transition:none;transition:none}}.custom-range::-moz-range-thumb:active{background-color:#b3d7ff}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#007bff;border:0;border-radius:1rem;-ms-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{-ms-transition:none;transition:none}}.custom-range::-ms-thumb:active{background-color:#b3d7ff}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:transparent;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px;background-color:#dee2e6;border-radius:1rem}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label::before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label::before,.custom-file-label,.custom-select{transition:none}}.nav{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:transparent;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#007bff}.nav-fill .nav-item{-ms-flex:1 1 auto;flex:1 1 auto;text-align:center}.nav-justified .nav-item{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;padding:.5rem 1rem}.navbar .container,.navbar .container-fluid,.navbar .container-lg,.navbar .container-md,.navbar .container-sm,.navbar .container-xl{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{-ms-flex-preferred-size:100%;flex-basis:100%;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:transparent;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat center center;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-sm .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-md .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-lg .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-xl .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand{color:rgba(0,0,0,.9)}.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a{color:rgba(0,0,0,.9)}.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand{color:#fff}.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:rgba(255,255,255,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:rgba(255,255,255,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:rgba(255,255,255,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:rgba(255,255,255,.5);border-color:rgba(255,255,255,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:rgba(255,255,255,.5)}.navbar-dark .navbar-text a{color:#fff}.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group:first-child .list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-body{-ms-flex:1 1 auto;flex:1 1 auto;min-height:1px;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem;margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-right:-.625rem;margin-bottom:-.75rem;margin-left:-.625rem;border-bottom:0}.card-header-pills{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img,.card-img-bottom,.card-img-top{-ms-flex-negative:0;flex-shrink:0;width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{-ms-flex:1 0 0%;flex:1 0 0%;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap}.card-group>.card{-ms-flex:1 0 0%;flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{-webkit-column-count:3;-moz-column-count:3;column-count:3;-webkit-column-gap:1.25rem;-moz-column-gap:1.25rem;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion>.card{overflow:hidden}.accordion>.card:not(:last-of-type){border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card:not(:first-of-type){border-top-left-radius:0;border-top-right-radius:0}.accordion>.card>.card-header{border-radius:0;margin-bottom:-1px}.breadcrumb{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item::before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:underline}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:-ms-flexbox;display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#007bff;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:3;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:3;color:#fff;background-color:#007bff;border-color:#007bff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:focus,a.badge:hover{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}a.badge-primary:focus,a.badge-primary:hover{color:#fff;background-color:#0062cc}a.badge-primary.focus,a.badge-primary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.badge-secondary{color:#fff;background-color:#6c757d}a.badge-secondary:focus,a.badge-secondary:hover{color:#fff;background-color:#545b62}a.badge-secondary.focus,a.badge-secondary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.badge-success{color:#fff;background-color:#28a745}a.badge-success:focus,a.badge-success:hover{color:#fff;background-color:#1e7e34}a.badge-success.focus,a.badge-success:focus{outline:0;box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.badge-info{color:#fff;background-color:#17a2b8}a.badge-info:focus,a.badge-info:hover{color:#fff;background-color:#117a8b}a.badge-info.focus,a.badge-info:focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.badge-warning{color:#212529;background-color:#ffc107}a.badge-warning:focus,a.badge-warning:hover{color:#212529;background-color:#d39e00}a.badge-warning.focus,a.badge-warning:focus{outline:0;box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.badge-danger{color:#fff;background-color:#dc3545}a.badge-danger:focus,a.badge-danger:hover{color:#fff;background-color:#bd2130}a.badge-danger.focus,a.badge-danger:focus{outline:0;box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.badge-light{color:#212529;background-color:#f8f9fa}a.badge-light:focus,a.badge-light:hover{color:#212529;background-color:#dae0e5}a.badge-light.focus,a.badge-light:focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.badge-dark{color:#fff;background-color:#343a40}a.badge-dark:focus,a.badge-dark:hover{color:#fff;background-color:#1d2124}a.badge-dark.focus,a.badge-dark:focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@-webkit-keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}.progress{display:-ms-flexbox;display:flex;height:1rem;overflow:hidden;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress-bar{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;overflow:hidden;color:#fff;text-align:center;white-space:nowrap;background-color:#007bff;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:1rem 1rem}.progress-bar-animated{-webkit-animation:progress-bar-stripes 1s linear infinite;animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{-webkit-animation:none;animation:none}}.media{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start}.media-body{-ms-flex:1;flex:1}.list-group{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#007bff;border-color:#007bff}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal .list-group-item.active{margin-top:0}.list-group-horizontal .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media (min-width:576px){.list-group-horizontal-sm{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-sm .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm .list-group-item.active{margin-top:0}.list-group-horizontal-sm .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:768px){.list-group-horizontal-md{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-md .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md .list-group-item.active{margin-top:0}.list-group-horizontal-md .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:992px){.list-group-horizontal-lg{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-lg .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg .list-group-item.active{margin-top:0}.list-group-horizontal-lg .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:1200px){.list-group-horizontal-xl{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-xl .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl .list-group-item.active{margin-top:0}.list-group-horizontal-xl .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush .list-group-item{border-right-width:0;border-left-width:0;border-radius:0}.list-group-flush .list-group-item:first-child{border-top-width:0}.list-group-flush:last-child .list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{opacity:.75}button.close{padding:0;background-color:transparent;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}a.close.disabled{pointer-events:none}.toast{max-width:350px;overflow:hidden;font-size:.875rem;background-color:rgba(255,255,255,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .25rem .75rem rgba(0,0,0,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;border-radius:.25rem}.toast:not(:last-child){margin-bottom:.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:.25rem .75rem;color:#6c757d;background-color:rgba(255,255,255,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05)}.toast-body{padding:.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translate(0,-50px);transform:translate(0,-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{-webkit-transform:none;transform:none}.modal.modal-static .modal-dialog{-webkit-transform:scale(1.02);transform:scale(1.02)}.modal-dialog-scrollable{display:-ms-flexbox;display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{-ms-flex-negative:0;flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered::before{display:block;height:calc(100vh - 1rem);content:""}.modal-dialog-centered.modal-dialog-scrollable{-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable::before{content:none}.modal-content{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:justify;justify-content:space-between;padding:1rem 1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .close{padding:1rem 1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;-ms-flex:1 1 auto;flex:1 1 auto;padding:1rem}.modal-footer{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered::before{height:calc(100vh - 3.5rem)}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow::before,.bs-tooltip-top .arrow::before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow::before,.bs-tooltip-right .arrow::before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow::before,.bs-tooltip-bottom .arrow::before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow::before,.bs-tooltip-left .arrow::before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{position:absolute;top:0;left:0;z-index:1060;display:block;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover .arrow{position:absolute;display:block;width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow::after,.popover .arrow::before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow,.bs-popover-top>.arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=top]>.arrow::before,.bs-popover-top>.arrow::before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top]>.arrow::after,.bs-popover-top>.arrow::after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow,.bs-popover-right>.arrow{left:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right]>.arrow::before,.bs-popover-right>.arrow::before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right]>.arrow::after,.bs-popover-right>.arrow::after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow,.bs-popover-bottom>.arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=bottom]>.arrow::before,.bs-popover-bottom>.arrow::before{top:0;border-width:0 .5rem .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom]>.arrow::after,.bs-popover-bottom>.arrow::after{top:1px;border-width:0 .5rem .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header::before,.bs-popover-bottom .popover-header::before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow,.bs-popover-left>.arrow{right:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left]>.arrow::before,.bs-popover-left>.arrow::before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left]>.arrow::after,.bs-popover-left>.arrow::after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#212529}.carousel{position:relative}.carousel.pointer-event{-ms-touch-action:pan-y;touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:-webkit-transform .6s ease-in-out;transition:transform .6s ease-in-out;transition:transform .6s ease-in-out,-webkit-transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-right,.carousel-item-next:not(.carousel-item-left){-webkit-transform:translateX(100%);transform:translateX(100%)}.active.carousel-item-left,.carousel-item-prev:not(.carousel-item-right){-webkit-transform:translateX(-100%);transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;-webkit-transform:none;transform:none}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:no-repeat 50%/100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:15;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{box-sizing:content-box;-ms-flex:0 1 auto;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators li{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@-webkit-keyframes spinner-border{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes spinner-border{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:.25em solid currentColor;border-right-color:transparent;border-radius:50%;-webkit-animation:spinner-border .75s linear infinite;animation:spinner-border .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@-webkit-keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1}}@keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;-webkit-animation:spinner-grow .75s linear infinite;animation:spinner-grow .75s linear infinite}.spinner-grow-sm{width:1rem;height:1rem}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded-sm{border-radius:.2rem!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important;border-top-right-radius:.25rem!important}.rounded-right{border-top-right-radius:.25rem!important;border-bottom-right-radius:.25rem!important}.rounded-bottom{border-bottom-right-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-lg{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-0{border-radius:0!important}.clearfix::after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:-ms-flexbox!important;display:flex!important}.d-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:-ms-flexbox!important;display:flex!important}.d-sm-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:-ms-flexbox!important;display:flex!important}.d-md-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:-ms-flexbox!important;display:flex!important}.d-lg-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:-ms-flexbox!important;display:flex!important}.d-xl-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:-ms-flexbox!important;display:flex!important}.d-print-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive::before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9::before{padding-top:42.857143%}.embed-responsive-16by9::before{padding-top:56.25%}.embed-responsive-4by3::before{padding-top:75%}.embed-responsive-1by1::before{padding-top:100%}.flex-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-center{-ms-flex-align:center!important;align-items:center!important}.align-items-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}@media (min-width:576px){.flex-sm-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-sm-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-sm-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-sm-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-sm-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-sm-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-sm-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-sm-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-sm-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-sm-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-sm-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-sm-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-sm-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-sm-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-sm-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-sm-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-sm-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-sm-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-sm-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-sm-center{-ms-flex-align:center!important;align-items:center!important}.align-items-sm-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-sm-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-sm-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-sm-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-sm-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-sm-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-sm-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-sm-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-sm-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-sm-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-sm-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-sm-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-sm-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-sm-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:768px){.flex-md-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-md-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-md-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-md-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-md-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-md-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-md-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-md-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-md-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-md-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-md-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-md-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-md-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-md-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-md-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-md-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-md-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-md-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-md-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-md-center{-ms-flex-align:center!important;align-items:center!important}.align-items-md-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-md-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-md-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-md-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-md-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-md-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-md-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-md-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-md-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-md-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-md-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-md-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-md-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-md-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-lg-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-lg-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-lg-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-lg-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-lg-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-lg-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-lg-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-lg-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-lg-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-lg-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-lg-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-lg-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-lg-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-lg-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-lg-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-lg-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-lg-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-lg-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-lg-center{-ms-flex-align:center!important;align-items:center!important}.align-items-lg-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-lg-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-lg-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-lg-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-lg-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-lg-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-lg-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-lg-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-lg-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-lg-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-lg-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-lg-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-lg-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-lg-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-xl-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-xl-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-xl-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-xl-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-xl-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-xl-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-xl-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-xl-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-xl-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-xl-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-xl-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-xl-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-xl-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-xl-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-xl-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-xl-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-xl-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-xl-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-xl-center{-ms-flex-align:center!important;align-items:center!important}.align-items-xl-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-xl-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-xl-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-xl-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-xl-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-xl-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-xl-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-xl-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-xl-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-xl-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-xl-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-xl-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-xl-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-xl-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:-webkit-sticky!important;position:sticky!important}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}@supports ((position:-webkit-sticky) or (position:sticky)){.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:rgba(0,0,0,0)}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace!important}.text-justify{text-align:justify!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-lighter{font-weight:lighter!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-weight-bolder{font-weight:bolder!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0056b3!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#494f54!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#19692c!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#0f6674!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#ba8b00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#a71d2a!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#cbd3da!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#121416!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:rgba(255,255,255,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.text-decoration-none{text-decoration:none!important}.text-break{word-break:break-word!important;overflow-wrap:break-word!important}.text-reset{color:inherit!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,::after,::before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]::after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}body{min-width:992px!important}.container{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}} +/*# sourceMappingURL=bootstrap.min.css.map */ \ No newline at end of file diff --git a/assets/css/common-styles-responsive.css b/assets/css/common-styles-responsive.css new file mode 100644 index 0000000..2798de9 --- /dev/null +++ b/assets/css/common-styles-responsive.css @@ -0,0 +1,97 @@ +.slidecontainer { + text-align: center; +} + +.slider { + width: 10%; +} + +.text-box { + padding: 7px 20px; + margin: 8px 0; + box-sizing: border-box; + width: 14%; +} + +.legend { list-style: none; } +.legend li { padding-bottom : 1.5vw; width: 20vw; } +.legend span { border: 0.1vw solid black; float: left; border-radius: 50%;} +.legend .grey { background-color: grey; } +.legend .green { background-color: #a4c652; } +.legend .black { background-color: black; } + +.button-input { + border-radius: 50vw; + background-color: #288ec8; + border: none; + color: white; + padding: 1%; + margin-left: 1%; + margin-right: 1%; + padding-bottom: 1%; + padding-top: 1%; + padding-left: 2%; + padding-right: 2%; +} + +.button-input:hover { + background-color:gray; + cursor:pointer; +} + +.comment-box { + position: relative; + padding: 1vw; + width: 30vw; + text-align: center; +} + +.instruction-box { + position: relative; + width: 100%; + transition: width 0.2s ease-out; + border: 0.1vw solid grey; + z-index : 10; +} + +.collapsible { + background-color: Transparent; + color: "grey"; + cursor: pointer; + width: 100%; + border: none; + text-align: center; + outline: none; + font-weight: bold; + padding-top: 1%; + padding-bottom: 1%; +} + +.collapsible::-moz-focus-inner { + border: 0; +} + +.active, .collapsible:hover { + background-color: "white"; +} + +/*The unicode \25BE is for â–¾ (Dropdown arrow) */ +.collapsible:after { + content: "\25BE"; + color: "grey"; + font-weight: bold; + float: right; + margin-left: 5px; +} + +.active:after { + content: "\25B4"; +} + +.content { + padding: 0 1.8vw; + max-height: 0; + overflow: hidden; + transition: max-height 0.2s ease-out; + background-color: "white"; +} diff --git a/assets/css/common-styles.css b/assets/css/common-styles.css new file mode 100644 index 0000000..a2f6d80 --- /dev/null +++ b/assets/css/common-styles.css @@ -0,0 +1,104 @@ +.slidecontainer { + text-align: center; +} + +.slider { + width: 10%; +} + +.text-box { + padding: 7px 20px; + margin: 8px 0; + box-sizing: border-box; + width: 14%; +} + +.legend{ + font-size: 1.4vw; +} +.legend { list-style: none; } +.legend li { padding-bottom : 1.5vw; width: 20vw; } +.legend span { border: 0.1vw solid black; float: left; width: 2vw; height: 2vw; margin-right : 0.5vw; border-radius: 50%;} +.legend .grey { background-color: grey; } +.legend .green { background-color: #a4c652; } +.legend .black { background-color: black; } + +.button-input { + border-radius: 50vw; + background-color: #288ec8; + border: none; + color: white; + padding: 1%; + font-size: 1.3vw; + margin-left: 1%; + margin-right: 1%; + padding-bottom: 1%; + padding-top: 1%; + padding-left: 2%; + padding-right: 2%; +} + +.button-input:hover { + background-color:gray; + cursor:pointer; +} + +.comment-box { + position: relative; + padding: 1vw; + width: 30vw; + font-size: 1.5vw; + text-align: center; +} + +.instruction-box { + position: relative; + width: 100%; + transition: width 0.2s ease-out; + border: 0.1vw solid grey; + font-size: 1.5vw; + z-index : 10; +} + +.collapsible { + background-color: Transparent; + color: "grey"; + cursor: pointer; + width: 100%; + border: none; + text-align: center; + outline: none; + font-size: 1.5vw; + font-weight: bold; + padding-top: 1%; + padding-bottom: 1%; +} + +.collapsible::-moz-focus-inner { + border: 0; +} + +.active, .collapsible:hover { + background-color: "white"; +} + +.collapsible:after { + content: '\25BE'; + color: "grey"; + font-weight: bold; + float: right; + margin-left: 5px; +} + +.active:after { + content: "\25B4"; +} + +.content { + padding: 0 1.8vw; + max-height: 0; + overflow: hidden; + transition: max-height 0.2s ease-out; + background-color: "white"; +} + diff --git a/assets/css/fontawesome.min.css b/assets/css/fontawesome.min.css new file mode 100644 index 0000000..06a13c5 --- /dev/null +++ b/assets/css/fontawesome.min.css @@ -0,0 +1,5 @@ +/*! + * Font Awesome Free 5.13.0 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +.fa,.fab,.fad,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:"\f26e"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-acquisitions-incorporated:before{content:"\f6af"}.fa-ad:before{content:"\f641"}.fa-address-book:before{content:"\f2b9"}.fa-address-card:before{content:"\f2bb"}.fa-adjust:before{content:"\f042"}.fa-adn:before{content:"\f170"}.fa-adobe:before{content:"\f778"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-air-freshener:before{content:"\f5d0"}.fa-airbnb:before{content:"\f834"}.fa-algolia:before{content:"\f36c"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-alipay:before{content:"\f642"}.fa-allergies:before{content:"\f461"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-ambulance:before{content:"\f0f9"}.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-amilia:before{content:"\f36d"}.fa-anchor:before{content:"\f13d"}.fa-android:before{content:"\f17b"}.fa-angellist:before{content:"\f209"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angry:before{content:"\f556"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-ankh:before{content:"\f644"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-alt:before{content:"\f5d1"}.fa-apple-pay:before{content:"\f415"}.fa-archive:before{content:"\f187"}.fa-archway:before{content:"\f557"}.fa-arrow-alt-circle-down:before{content:"\f358"}.fa-arrow-alt-circle-left:before{content:"\f359"}.fa-arrow-alt-circle-right:before{content:"\f35a"}.fa-arrow-alt-circle-up:before{content:"\f35b"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrows-alt:before{content:"\f0b2"}.fa-arrows-alt-h:before{content:"\f337"}.fa-arrows-alt-v:before{content:"\f338"}.fa-artstation:before{content:"\f77a"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asterisk:before{content:"\f069"}.fa-asymmetrik:before{content:"\f372"}.fa-at:before{content:"\f1fa"}.fa-atlas:before{content:"\f558"}.fa-atlassian:before{content:"\f77b"}.fa-atom:before{content:"\f5d2"}.fa-audible:before{content:"\f373"}.fa-audio-description:before{content:"\f29e"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-award:before{content:"\f559"}.fa-aws:before{content:"\f375"}.fa-baby:before{content:"\f77c"}.fa-baby-carriage:before{content:"\f77d"}.fa-backspace:before{content:"\f55a"}.fa-backward:before{content:"\f04a"}.fa-bacon:before{content:"\f7e5"}.fa-bahai:before{content:"\f666"}.fa-balance-scale:before{content:"\f24e"}.fa-balance-scale-left:before{content:"\f515"}.fa-balance-scale-right:before{content:"\f516"}.fa-ban:before{content:"\f05e"}.fa-band-aid:before{content:"\f462"}.fa-bandcamp:before{content:"\f2d5"}.fa-barcode:before{content:"\f02a"}.fa-bars:before{content:"\f0c9"}.fa-baseball-ball:before{content:"\f433"}.fa-basketball-ball:before{content:"\f434"}.fa-bath:before{content:"\f2cd"}.fa-battery-empty:before{content:"\f244"}.fa-battery-full:before{content:"\f240"}.fa-battery-half:before{content:"\f242"}.fa-battery-quarter:before{content:"\f243"}.fa-battery-three-quarters:before{content:"\f241"}.fa-battle-net:before{content:"\f835"}.fa-bed:before{content:"\f236"}.fa-beer:before{content:"\f0fc"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bell:before{content:"\f0f3"}.fa-bell-slash:before{content:"\f1f6"}.fa-bezier-curve:before{content:"\f55b"}.fa-bible:before{content:"\f647"}.fa-bicycle:before{content:"\f206"}.fa-biking:before{content:"\f84a"}.fa-bimobject:before{content:"\f378"}.fa-binoculars:before{content:"\f1e5"}.fa-biohazard:before{content:"\f780"}.fa-birthday-cake:before{content:"\f1fd"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blender:before{content:"\f517"}.fa-blender-phone:before{content:"\f6b6"}.fa-blind:before{content:"\f29d"}.fa-blog:before{content:"\f781"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bold:before{content:"\f032"}.fa-bolt:before{content:"\f0e7"}.fa-bomb:before{content:"\f1e2"}.fa-bone:before{content:"\f5d7"}.fa-bong:before{content:"\f55c"}.fa-book:before{content:"\f02d"}.fa-book-dead:before{content:"\f6b7"}.fa-book-medical:before{content:"\f7e6"}.fa-book-open:before{content:"\f518"}.fa-book-reader:before{content:"\f5da"}.fa-bookmark:before{content:"\f02e"}.fa-bootstrap:before{content:"\f836"}.fa-border-all:before{content:"\f84c"}.fa-border-none:before{content:"\f850"}.fa-border-style:before{content:"\f853"}.fa-bowling-ball:before{content:"\f436"}.fa-box:before{content:"\f466"}.fa-box-open:before{content:"\f49e"}.fa-box-tissue:before{content:"\f95b"}.fa-boxes:before{content:"\f468"}.fa-braille:before{content:"\f2a1"}.fa-brain:before{content:"\f5dc"}.fa-bread-slice:before{content:"\f7ec"}.fa-briefcase:before{content:"\f0b1"}.fa-briefcase-medical:before{content:"\f469"}.fa-broadcast-tower:before{content:"\f519"}.fa-broom:before{content:"\f51a"}.fa-brush:before{content:"\f55d"}.fa-btc:before{content:"\f15a"}.fa-buffer:before{content:"\f837"}.fa-bug:before{content:"\f188"}.fa-building:before{content:"\f1ad"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-burn:before{content:"\f46a"}.fa-buromobelexperte:before{content:"\f37f"}.fa-bus:before{content:"\f207"}.fa-bus-alt:before{content:"\f55e"}.fa-business-time:before{content:"\f64a"}.fa-buy-n-large:before{content:"\f8a6"}.fa-buysellads:before{content:"\f20d"}.fa-calculator:before{content:"\f1ec"}.fa-calendar:before{content:"\f133"}.fa-calendar-alt:before{content:"\f073"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-day:before{content:"\f783"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-times:before{content:"\f273"}.fa-calendar-week:before{content:"\f784"}.fa-camera:before{content:"\f030"}.fa-camera-retro:before{content:"\f083"}.fa-campground:before{content:"\f6bb"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-candy-cane:before{content:"\f786"}.fa-cannabis:before{content:"\f55f"}.fa-capsules:before{content:"\f46b"}.fa-car:before{content:"\f1b9"}.fa-car-alt:before{content:"\f5de"}.fa-car-battery:before{content:"\f5df"}.fa-car-crash:before{content:"\f5e1"}.fa-car-side:before{content:"\f5e4"}.fa-caravan:before{content:"\f8ff"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-square-down:before{content:"\f150"}.fa-caret-square-left:before{content:"\f191"}.fa-caret-square-right:before{content:"\f152"}.fa-caret-square-up:before{content:"\f151"}.fa-caret-up:before{content:"\f0d8"}.fa-carrot:before{content:"\f787"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-plus:before{content:"\f217"}.fa-cash-register:before{content:"\f788"}.fa-cat:before{content:"\f6be"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-centos:before{content:"\f789"}.fa-certificate:before{content:"\f0a3"}.fa-chair:before{content:"\f6c0"}.fa-chalkboard:before{content:"\f51b"}.fa-chalkboard-teacher:before{content:"\f51c"}.fa-charging-station:before{content:"\f5e7"}.fa-chart-area:before{content:"\f1fe"}.fa-chart-bar:before{content:"\f080"}.fa-chart-line:before{content:"\f201"}.fa-chart-pie:before{content:"\f200"}.fa-check:before{content:"\f00c"}.fa-check-circle:before{content:"\f058"}.fa-check-double:before{content:"\f560"}.fa-check-square:before{content:"\f14a"}.fa-cheese:before{content:"\f7ef"}.fa-chess:before{content:"\f439"}.fa-chess-bishop:before{content:"\f43a"}.fa-chess-board:before{content:"\f43c"}.fa-chess-king:before{content:"\f43f"}.fa-chess-knight:before{content:"\f441"}.fa-chess-pawn:before{content:"\f443"}.fa-chess-queen:before{content:"\f445"}.fa-chess-rook:before{content:"\f447"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-chrome:before{content:"\f268"}.fa-chromecast:before{content:"\f838"}.fa-church:before{content:"\f51d"}.fa-circle:before{content:"\f111"}.fa-circle-notch:before{content:"\f1ce"}.fa-city:before{content:"\f64f"}.fa-clinic-medical:before{content:"\f7f2"}.fa-clipboard:before{content:"\f328"}.fa-clipboard-check:before{content:"\f46c"}.fa-clipboard-list:before{content:"\f46d"}.fa-clock:before{content:"\f017"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-download-alt:before{content:"\f381"}.fa-cloud-meatball:before{content:"\f73b"}.fa-cloud-moon:before{content:"\f6c3"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-cloud-rain:before{content:"\f73d"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-cloud-sun:before{content:"\f6c4"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-cloud-upload-alt:before{content:"\f382"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-cocktail:before{content:"\f561"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-coffee:before{content:"\f0f4"}.fa-cog:before{content:"\f013"}.fa-cogs:before{content:"\f085"}.fa-coins:before{content:"\f51e"}.fa-columns:before{content:"\f0db"}.fa-comment:before{content:"\f075"}.fa-comment-alt:before{content:"\f27a"}.fa-comment-dollar:before{content:"\f651"}.fa-comment-dots:before{content:"\f4ad"}.fa-comment-medical:before{content:"\f7f5"}.fa-comment-slash:before{content:"\f4b3"}.fa-comments:before{content:"\f086"}.fa-comments-dollar:before{content:"\f653"}.fa-compact-disc:before{content:"\f51f"}.fa-compass:before{content:"\f14e"}.fa-compress:before{content:"\f066"}.fa-compress-alt:before{content:"\f422"}.fa-compress-arrows-alt:before{content:"\f78c"}.fa-concierge-bell:before{content:"\f562"}.fa-confluence:before{content:"\f78d"}.fa-connectdevelop:before{content:"\f20e"}.fa-contao:before{content:"\f26d"}.fa-cookie:before{content:"\f563"}.fa-cookie-bite:before{content:"\f564"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-cotton-bureau:before{content:"\f89e"}.fa-couch:before{content:"\f4b8"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-credit-card:before{content:"\f09d"}.fa-critical-role:before{content:"\f6c9"}.fa-crop:before{content:"\f125"}.fa-crop-alt:before{content:"\f565"}.fa-cross:before{content:"\f654"}.fa-crosshairs:before{content:"\f05b"}.fa-crow:before{content:"\f520"}.fa-crown:before{content:"\f521"}.fa-crutch:before{content:"\f7f7"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-cut:before{content:"\f0c4"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-dailymotion:before{content:"\f952"}.fa-dashcube:before{content:"\f210"}.fa-database:before{content:"\f1c0"}.fa-deaf:before{content:"\f2a4"}.fa-delicious:before{content:"\f1a5"}.fa-democrat:before{content:"\f747"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-desktop:before{content:"\f108"}.fa-dev:before{content:"\f6cc"}.fa-deviantart:before{content:"\f1bd"}.fa-dharmachakra:before{content:"\f655"}.fa-dhl:before{content:"\f790"}.fa-diagnoses:before{content:"\f470"}.fa-diaspora:before{content:"\f791"}.fa-dice:before{content:"\f522"}.fa-dice-d20:before{content:"\f6cf"}.fa-dice-d6:before{content:"\f6d1"}.fa-dice-five:before{content:"\f523"}.fa-dice-four:before{content:"\f524"}.fa-dice-one:before{content:"\f525"}.fa-dice-six:before{content:"\f526"}.fa-dice-three:before{content:"\f527"}.fa-dice-two:before{content:"\f528"}.fa-digg:before{content:"\f1a6"}.fa-digital-ocean:before{content:"\f391"}.fa-digital-tachograph:before{content:"\f566"}.fa-directions:before{content:"\f5eb"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-disease:before{content:"\f7fa"}.fa-divide:before{content:"\f529"}.fa-dizzy:before{content:"\f567"}.fa-dna:before{content:"\f471"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-dog:before{content:"\f6d3"}.fa-dollar-sign:before{content:"\f155"}.fa-dolly:before{content:"\f472"}.fa-dolly-flatbed:before{content:"\f474"}.fa-donate:before{content:"\f4b9"}.fa-door-closed:before{content:"\f52a"}.fa-door-open:before{content:"\f52b"}.fa-dot-circle:before{content:"\f192"}.fa-dove:before{content:"\f4ba"}.fa-download:before{content:"\f019"}.fa-draft2digital:before{content:"\f396"}.fa-drafting-compass:before{content:"\f568"}.fa-dragon:before{content:"\f6d5"}.fa-draw-polygon:before{content:"\f5ee"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-dropbox:before{content:"\f16b"}.fa-drum:before{content:"\f569"}.fa-drum-steelpan:before{content:"\f56a"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-drupal:before{content:"\f1a9"}.fa-dumbbell:before{content:"\f44b"}.fa-dumpster:before{content:"\f793"}.fa-dumpster-fire:before{content:"\f794"}.fa-dungeon:before{content:"\f6d9"}.fa-dyalog:before{content:"\f399"}.fa-earlybirds:before{content:"\f39a"}.fa-ebay:before{content:"\f4f4"}.fa-edge:before{content:"\f282"}.fa-edit:before{content:"\f044"}.fa-egg:before{content:"\f7fb"}.fa-eject:before{content:"\f052"}.fa-elementor:before{content:"\f430"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-ello:before{content:"\f5f1"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-text:before{content:"\f658"}.fa-envelope-square:before{content:"\f199"}.fa-envira:before{content:"\f299"}.fa-equals:before{content:"\f52c"}.fa-eraser:before{content:"\f12d"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-ethernet:before{content:"\f796"}.fa-etsy:before{content:"\f2d7"}.fa-euro-sign:before{content:"\f153"}.fa-evernote:before{content:"\f839"}.fa-exchange-alt:before{content:"\f362"}.fa-exclamation:before{content:"\f12a"}.fa-exclamation-circle:before{content:"\f06a"}.fa-exclamation-triangle:before{content:"\f071"}.fa-expand:before{content:"\f065"}.fa-expand-alt:before{content:"\f424"}.fa-expand-arrows-alt:before{content:"\f31e"}.fa-expeditedssl:before{content:"\f23e"}.fa-external-link-alt:before{content:"\f35d"}.fa-external-link-square-alt:before{content:"\f360"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper:before{content:"\f1fb"}.fa-eye-slash:before{content:"\f070"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fan:before{content:"\f863"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-fast-backward:before{content:"\f049"}.fa-fast-forward:before{content:"\f050"}.fa-faucet:before{content:"\f905"}.fa-fax:before{content:"\f1ac"}.fa-feather:before{content:"\f52d"}.fa-feather-alt:before{content:"\f56b"}.fa-fedex:before{content:"\f797"}.fa-fedora:before{content:"\f798"}.fa-female:before{content:"\f182"}.fa-fighter-jet:before{content:"\f0fb"}.fa-figma:before{content:"\f799"}.fa-file:before{content:"\f15b"}.fa-file-alt:before{content:"\f15c"}.fa-file-archive:before{content:"\f1c6"}.fa-file-audio:before{content:"\f1c7"}.fa-file-code:before{content:"\f1c9"}.fa-file-contract:before{content:"\f56c"}.fa-file-csv:before{content:"\f6dd"}.fa-file-download:before{content:"\f56d"}.fa-file-excel:before{content:"\f1c3"}.fa-file-export:before{content:"\f56e"}.fa-file-image:before{content:"\f1c5"}.fa-file-import:before{content:"\f56f"}.fa-file-invoice:before{content:"\f570"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-file-medical:before{content:"\f477"}.fa-file-medical-alt:before{content:"\f478"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-prescription:before{content:"\f572"}.fa-file-signature:before{content:"\f573"}.fa-file-upload:before{content:"\f574"}.fa-file-video:before{content:"\f1c8"}.fa-file-word:before{content:"\f1c2"}.fa-fill:before{content:"\f575"}.fa-fill-drip:before{content:"\f576"}.fa-film:before{content:"\f008"}.fa-filter:before{content:"\f0b0"}.fa-fingerprint:before{content:"\f577"}.fa-fire:before{content:"\f06d"}.fa-fire-alt:before{content:"\f7e4"}.fa-fire-extinguisher:before{content:"\f134"}.fa-firefox:before{content:"\f269"}.fa-firefox-browser:before{content:"\f907"}.fa-first-aid:before{content:"\f479"}.fa-first-order:before{content:"\f2b0"}.fa-first-order-alt:before{content:"\f50a"}.fa-firstdraft:before{content:"\f3a1"}.fa-fish:before{content:"\f578"}.fa-fist-raised:before{content:"\f6de"}.fa-flag:before{content:"\f024"}.fa-flag-checkered:before{content:"\f11e"}.fa-flag-usa:before{content:"\f74d"}.fa-flask:before{content:"\f0c3"}.fa-flickr:before{content:"\f16e"}.fa-flipboard:before{content:"\f44d"}.fa-flushed:before{content:"\f579"}.fa-fly:before{content:"\f417"}.fa-folder:before{content:"\f07b"}.fa-folder-minus:before{content:"\f65d"}.fa-folder-open:before{content:"\f07c"}.fa-folder-plus:before{content:"\f65e"}.fa-font:before{content:"\f031"}.fa-font-awesome:before{content:"\f2b4"}.fa-font-awesome-alt:before{content:"\f35c"}.fa-font-awesome-flag:before{content:"\f425"}.fa-font-awesome-logo-full:before{content:"\f4e6"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-football-ball:before{content:"\f44e"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-forward:before{content:"\f04e"}.fa-foursquare:before{content:"\f180"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-frog:before{content:"\f52e"}.fa-frown:before{content:"\f119"}.fa-frown-open:before{content:"\f57a"}.fa-fulcrum:before{content:"\f50b"}.fa-funnel-dollar:before{content:"\f662"}.fa-futbol:before{content:"\f1e3"}.fa-galactic-republic:before{content:"\f50c"}.fa-galactic-senate:before{content:"\f50d"}.fa-gamepad:before{content:"\f11b"}.fa-gas-pump:before{content:"\f52f"}.fa-gavel:before{content:"\f0e3"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-ghost:before{content:"\f6e2"}.fa-gift:before{content:"\f06b"}.fa-gifts:before{content:"\f79c"}.fa-git:before{content:"\f1d3"}.fa-git-alt:before{content:"\f841"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glass-cheers:before{content:"\f79f"}.fa-glass-martini:before{content:"\f000"}.fa-glass-martini-alt:before{content:"\f57b"}.fa-glass-whiskey:before{content:"\f7a0"}.fa-glasses:before{content:"\f530"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-globe:before{content:"\f0ac"}.fa-globe-africa:before{content:"\f57c"}.fa-globe-americas:before{content:"\f57d"}.fa-globe-asia:before{content:"\f57e"}.fa-globe-europe:before{content:"\f7a2"}.fa-gofore:before{content:"\f3a7"}.fa-golf-ball:before{content:"\f450"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-gopuram:before{content:"\f664"}.fa-graduation-cap:before{content:"\f19d"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-greater-than:before{content:"\f531"}.fa-greater-than-equal:before{content:"\f532"}.fa-grimace:before{content:"\f57f"}.fa-grin:before{content:"\f580"}.fa-grin-alt:before{content:"\f581"}.fa-grin-beam:before{content:"\f582"}.fa-grin-beam-sweat:before{content:"\f583"}.fa-grin-hearts:before{content:"\f584"}.fa-grin-squint:before{content:"\f585"}.fa-grin-squint-tears:before{content:"\f586"}.fa-grin-stars:before{content:"\f587"}.fa-grin-tears:before{content:"\f588"}.fa-grin-tongue:before{content:"\f589"}.fa-grin-tongue-squint:before{content:"\f58a"}.fa-grin-tongue-wink:before{content:"\f58b"}.fa-grin-wink:before{content:"\f58c"}.fa-grip-horizontal:before{content:"\f58d"}.fa-grip-lines:before{content:"\f7a4"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-grip-vertical:before{content:"\f58e"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-guitar:before{content:"\f7a6"}.fa-gulp:before{content:"\f3ae"}.fa-h-square:before{content:"\f0fd"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hackerrank:before{content:"\f5f7"}.fa-hamburger:before{content:"\f805"}.fa-hammer:before{content:"\f6e3"}.fa-hamsa:before{content:"\f665"}.fa-hand-holding:before{content:"\f4bd"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-hand-holding-medical:before{content:"\f95c"}.fa-hand-holding-usd:before{content:"\f4c0"}.fa-hand-holding-water:before{content:"\f4c1"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-middle-finger:before{content:"\f806"}.fa-hand-paper:before{content:"\f256"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-rock:before{content:"\f255"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-sparkles:before{content:"\f95d"}.fa-hand-spock:before{content:"\f259"}.fa-hands:before{content:"\f4c2"}.fa-hands-helping:before{content:"\f4c4"}.fa-hands-wash:before{content:"\f95e"}.fa-handshake:before{content:"\f2b5"}.fa-handshake-alt-slash:before{content:"\f95f"}.fa-handshake-slash:before{content:"\f960"}.fa-hanukiah:before{content:"\f6e6"}.fa-hard-hat:before{content:"\f807"}.fa-hashtag:before{content:"\f292"}.fa-hat-cowboy:before{content:"\f8c0"}.fa-hat-cowboy-side:before{content:"\f8c1"}.fa-hat-wizard:before{content:"\f6e8"}.fa-hdd:before{content:"\f0a0"}.fa-head-side-cough:before{content:"\f961"}.fa-head-side-cough-slash:before{content:"\f962"}.fa-head-side-mask:before{content:"\f963"}.fa-head-side-virus:before{content:"\f964"}.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-headphones-alt:before{content:"\f58f"}.fa-headset:before{content:"\f590"}.fa-heart:before{content:"\f004"}.fa-heart-broken:before{content:"\f7a9"}.fa-heartbeat:before{content:"\f21e"}.fa-helicopter:before{content:"\f533"}.fa-highlighter:before{content:"\f591"}.fa-hiking:before{content:"\f6ec"}.fa-hippo:before{content:"\f6ed"}.fa-hips:before{content:"\f452"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-history:before{content:"\f1da"}.fa-hockey-puck:before{content:"\f453"}.fa-holly-berry:before{content:"\f7aa"}.fa-home:before{content:"\f015"}.fa-hooli:before{content:"\f427"}.fa-hornbill:before{content:"\f592"}.fa-horse:before{content:"\f6f0"}.fa-horse-head:before{content:"\f7ab"}.fa-hospital:before{content:"\f0f8"}.fa-hospital-alt:before{content:"\f47d"}.fa-hospital-symbol:before{content:"\f47e"}.fa-hospital-user:before{content:"\f80d"}.fa-hot-tub:before{content:"\f593"}.fa-hotdog:before{content:"\f80f"}.fa-hotel:before{content:"\f594"}.fa-hotjar:before{content:"\f3b1"}.fa-hourglass:before{content:"\f254"}.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-start:before{content:"\f251"}.fa-house-damage:before{content:"\f6f1"}.fa-house-user:before{content:"\f965"}.fa-houzz:before{content:"\f27c"}.fa-hryvnia:before{content:"\f6f2"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-i-cursor:before{content:"\f246"}.fa-ice-cream:before{content:"\f810"}.fa-icicles:before{content:"\f7ad"}.fa-icons:before{content:"\f86d"}.fa-id-badge:before{content:"\f2c1"}.fa-id-card:before{content:"\f2c2"}.fa-id-card-alt:before{content:"\f47f"}.fa-ideal:before{content:"\f913"}.fa-igloo:before{content:"\f7ae"}.fa-image:before{content:"\f03e"}.fa-images:before{content:"\f302"}.fa-imdb:before{content:"\f2d8"}.fa-inbox:before{content:"\f01c"}.fa-indent:before{content:"\f03c"}.fa-industry:before{content:"\f275"}.fa-infinity:before{content:"\f534"}.fa-info:before{content:"\f129"}.fa-info-circle:before{content:"\f05a"}.fa-instagram:before{content:"\f16d"}.fa-instagram-square:before{content:"\f955"}.fa-intercom:before{content:"\f7af"}.fa-internet-explorer:before{content:"\f26b"}.fa-invision:before{content:"\f7b0"}.fa-ioxhost:before{content:"\f208"}.fa-italic:before{content:"\f033"}.fa-itch-io:before{content:"\f83a"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-java:before{content:"\f4e4"}.fa-jedi:before{content:"\f669"}.fa-jedi-order:before{content:"\f50e"}.fa-jenkins:before{content:"\f3b6"}.fa-jira:before{content:"\f7b1"}.fa-joget:before{content:"\f3b7"}.fa-joint:before{content:"\f595"}.fa-joomla:before{content:"\f1aa"}.fa-journal-whills:before{content:"\f66a"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-kaaba:before{content:"\f66b"}.fa-kaggle:before{content:"\f5fa"}.fa-key:before{content:"\f084"}.fa-keybase:before{content:"\f4f5"}.fa-keyboard:before{content:"\f11c"}.fa-keycdn:before{content:"\f3ba"}.fa-khanda:before{content:"\f66d"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-kiss:before{content:"\f596"}.fa-kiss-beam:before{content:"\f597"}.fa-kiss-wink-heart:before{content:"\f598"}.fa-kiwi-bird:before{content:"\f535"}.fa-korvue:before{content:"\f42f"}.fa-landmark:before{content:"\f66f"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laptop-code:before{content:"\f5fc"}.fa-laptop-house:before{content:"\f966"}.fa-laptop-medical:before{content:"\f812"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-laugh:before{content:"\f599"}.fa-laugh-beam:before{content:"\f59a"}.fa-laugh-squint:before{content:"\f59b"}.fa-laugh-wink:before{content:"\f59c"}.fa-layer-group:before{content:"\f5fd"}.fa-leaf:before{content:"\f06c"}.fa-leanpub:before{content:"\f212"}.fa-lemon:before{content:"\f094"}.fa-less:before{content:"\f41d"}.fa-less-than:before{content:"\f536"}.fa-less-than-equal:before{content:"\f537"}.fa-level-down-alt:before{content:"\f3be"}.fa-level-up-alt:before{content:"\f3bf"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-line:before{content:"\f3c0"}.fa-link:before{content:"\f0c1"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lira-sign:before{content:"\f195"}.fa-list:before{content:"\f03a"}.fa-list-alt:before{content:"\f022"}.fa-list-ol:before{content:"\f0cb"}.fa-list-ul:before{content:"\f0ca"}.fa-location-arrow:before{content:"\f124"}.fa-lock:before{content:"\f023"}.fa-lock-open:before{content:"\f3c1"}.fa-long-arrow-alt-down:before{content:"\f309"}.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-long-arrow-alt-right:before{content:"\f30b"}.fa-long-arrow-alt-up:before{content:"\f30c"}.fa-low-vision:before{content:"\f2a8"}.fa-luggage-cart:before{content:"\f59d"}.fa-lungs:before{content:"\f604"}.fa-lungs-virus:before{content:"\f967"}.fa-lyft:before{content:"\f3c3"}.fa-magento:before{content:"\f3c4"}.fa-magic:before{content:"\f0d0"}.fa-magnet:before{content:"\f076"}.fa-mail-bulk:before{content:"\f674"}.fa-mailchimp:before{content:"\f59e"}.fa-male:before{content:"\f183"}.fa-mandalorian:before{content:"\f50f"}.fa-map:before{content:"\f279"}.fa-map-marked:before{content:"\f59f"}.fa-map-marked-alt:before{content:"\f5a0"}.fa-map-marker:before{content:"\f041"}.fa-map-marker-alt:before{content:"\f3c5"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-markdown:before{content:"\f60f"}.fa-marker:before{content:"\f5a1"}.fa-mars:before{content:"\f222"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mask:before{content:"\f6fa"}.fa-mastodon:before{content:"\f4f6"}.fa-maxcdn:before{content:"\f136"}.fa-mdb:before{content:"\f8ca"}.fa-medal:before{content:"\f5a2"}.fa-medapps:before{content:"\f3c6"}.fa-medium:before{content:"\f23a"}.fa-medium-m:before{content:"\f3c7"}.fa-medkit:before{content:"\f0fa"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-megaport:before{content:"\f5a3"}.fa-meh:before{content:"\f11a"}.fa-meh-blank:before{content:"\f5a4"}.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-memory:before{content:"\f538"}.fa-mendeley:before{content:"\f7b3"}.fa-menorah:before{content:"\f676"}.fa-mercury:before{content:"\f223"}.fa-meteor:before{content:"\f753"}.fa-microblog:before{content:"\f91a"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-alt:before{content:"\f3c9"}.fa-microphone-alt-slash:before{content:"\f539"}.fa-microphone-slash:before{content:"\f131"}.fa-microscope:before{content:"\f610"}.fa-microsoft:before{content:"\f3ca"}.fa-minus:before{content:"\f068"}.fa-minus-circle:before{content:"\f056"}.fa-minus-square:before{content:"\f146"}.fa-mitten:before{content:"\f7b5"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mixer:before{content:"\f956"}.fa-mizuni:before{content:"\f3cc"}.fa-mobile:before{content:"\f10b"}.fa-mobile-alt:before{content:"\f3cd"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-money-bill:before{content:"\f0d6"}.fa-money-bill-alt:before{content:"\f3d1"}.fa-money-bill-wave:before{content:"\f53a"}.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-money-check:before{content:"\f53c"}.fa-money-check-alt:before{content:"\f53d"}.fa-monument:before{content:"\f5a6"}.fa-moon:before{content:"\f186"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-mosque:before{content:"\f678"}.fa-motorcycle:before{content:"\f21c"}.fa-mountain:before{content:"\f6fc"}.fa-mouse:before{content:"\f8cc"}.fa-mouse-pointer:before{content:"\f245"}.fa-mug-hot:before{content:"\f7b6"}.fa-music:before{content:"\f001"}.fa-napster:before{content:"\f3d2"}.fa-neos:before{content:"\f612"}.fa-network-wired:before{content:"\f6ff"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-nimblr:before{content:"\f5a8"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-not-equal:before{content:"\f53e"}.fa-notes-medical:before{content:"\f481"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-oil-can:before{content:"\f613"}.fa-old-republic:before{content:"\f510"}.fa-om:before{content:"\f679"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-orcid:before{content:"\f8d2"}.fa-osi:before{content:"\f41a"}.fa-otter:before{content:"\f700"}.fa-outdent:before{content:"\f03b"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-pager:before{content:"\f815"}.fa-paint-brush:before{content:"\f1fc"}.fa-paint-roller:before{content:"\f5aa"}.fa-palette:before{content:"\f53f"}.fa-palfed:before{content:"\f3d8"}.fa-pallet:before{content:"\f482"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-parachute-box:before{content:"\f4cd"}.fa-paragraph:before{content:"\f1dd"}.fa-parking:before{content:"\f540"}.fa-passport:before{content:"\f5ab"}.fa-pastafarianism:before{content:"\f67b"}.fa-paste:before{content:"\f0ea"}.fa-patreon:before{content:"\f3d9"}.fa-pause:before{content:"\f04c"}.fa-pause-circle:before{content:"\f28b"}.fa-paw:before{content:"\f1b0"}.fa-paypal:before{content:"\f1ed"}.fa-peace:before{content:"\f67c"}.fa-pen:before{content:"\f304"}.fa-pen-alt:before{content:"\f305"}.fa-pen-fancy:before{content:"\f5ac"}.fa-pen-nib:before{content:"\f5ad"}.fa-pen-square:before{content:"\f14b"}.fa-pencil-alt:before{content:"\f303"}.fa-pencil-ruler:before{content:"\f5ae"}.fa-penny-arcade:before{content:"\f704"}.fa-people-arrows:before{content:"\f968"}.fa-people-carry:before{content:"\f4ce"}.fa-pepper-hot:before{content:"\f816"}.fa-percent:before{content:"\f295"}.fa-percentage:before{content:"\f541"}.fa-periscope:before{content:"\f3da"}.fa-person-booth:before{content:"\f756"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phoenix-squadron:before{content:"\f511"}.fa-phone:before{content:"\f095"}.fa-phone-alt:before{content:"\f879"}.fa-phone-slash:before{content:"\f3dd"}.fa-phone-square:before{content:"\f098"}.fa-phone-square-alt:before{content:"\f87b"}.fa-phone-volume:before{content:"\f2a0"}.fa-photo-video:before{content:"\f87c"}.fa-php:before{content:"\f457"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-square:before{content:"\f91e"}.fa-piggy-bank:before{content:"\f4d3"}.fa-pills:before{content:"\f484"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-pizza-slice:before{content:"\f818"}.fa-place-of-worship:before{content:"\f67f"}.fa-plane:before{content:"\f072"}.fa-plane-arrival:before{content:"\f5af"}.fa-plane-departure:before{content:"\f5b0"}.fa-plane-slash:before{content:"\f969"}.fa-play:before{content:"\f04b"}.fa-play-circle:before{content:"\f144"}.fa-playstation:before{content:"\f3df"}.fa-plug:before{content:"\f1e6"}.fa-plus:before{content:"\f067"}.fa-plus-circle:before{content:"\f055"}.fa-plus-square:before{content:"\f0fe"}.fa-podcast:before{content:"\f2ce"}.fa-poll:before{content:"\f681"}.fa-poll-h:before{content:"\f682"}.fa-poo:before{content:"\f2fe"}.fa-poo-storm:before{content:"\f75a"}.fa-poop:before{content:"\f619"}.fa-portrait:before{content:"\f3e0"}.fa-pound-sign:before{content:"\f154"}.fa-power-off:before{content:"\f011"}.fa-pray:before{content:"\f683"}.fa-praying-hands:before{content:"\f684"}.fa-prescription:before{content:"\f5b1"}.fa-prescription-bottle:before{content:"\f485"}.fa-prescription-bottle-alt:before{content:"\f486"}.fa-print:before{content:"\f02f"}.fa-procedures:before{content:"\f487"}.fa-product-hunt:before{content:"\f288"}.fa-project-diagram:before{content:"\f542"}.fa-pump-medical:before{content:"\f96a"}.fa-pump-soap:before{content:"\f96b"}.fa-pushed:before{content:"\f3e1"}.fa-puzzle-piece:before{content:"\f12e"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"\f128"}.fa-question-circle:before{content:"\f059"}.fa-quidditch:before{content:"\f458"}.fa-quinscape:before{content:"\f459"}.fa-quora:before{content:"\f2c4"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-quran:before{content:"\f687"}.fa-r-project:before{content:"\f4f7"}.fa-radiation:before{content:"\f7b9"}.fa-radiation-alt:before{content:"\f7ba"}.fa-rainbow:before{content:"\f75b"}.fa-random:before{content:"\f074"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-reacteurope:before{content:"\f75d"}.fa-readme:before{content:"\f4d5"}.fa-rebel:before{content:"\f1d0"}.fa-receipt:before{content:"\f543"}.fa-record-vinyl:before{content:"\f8d9"}.fa-recycle:before{content:"\f1b8"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redhat:before{content:"\f7bc"}.fa-redo:before{content:"\f01e"}.fa-redo-alt:before{content:"\f2f9"}.fa-registered:before{content:"\f25d"}.fa-remove-format:before{content:"\f87d"}.fa-renren:before{content:"\f18b"}.fa-reply:before{content:"\f3e5"}.fa-reply-all:before{content:"\f122"}.fa-replyd:before{content:"\f3e6"}.fa-republican:before{content:"\f75e"}.fa-researchgate:before{content:"\f4f8"}.fa-resolving:before{content:"\f3e7"}.fa-restroom:before{content:"\f7bd"}.fa-retweet:before{content:"\f079"}.fa-rev:before{content:"\f5b2"}.fa-ribbon:before{content:"\f4d6"}.fa-ring:before{content:"\f70b"}.fa-road:before{content:"\f018"}.fa-robot:before{content:"\f544"}.fa-rocket:before{content:"\f135"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-route:before{content:"\f4d7"}.fa-rss:before{content:"\f09e"}.fa-rss-square:before{content:"\f143"}.fa-ruble-sign:before{content:"\f158"}.fa-ruler:before{content:"\f545"}.fa-ruler-combined:before{content:"\f546"}.fa-ruler-horizontal:before{content:"\f547"}.fa-ruler-vertical:before{content:"\f548"}.fa-running:before{content:"\f70c"}.fa-rupee-sign:before{content:"\f156"}.fa-sad-cry:before{content:"\f5b3"}.fa-sad-tear:before{content:"\f5b4"}.fa-safari:before{content:"\f267"}.fa-salesforce:before{content:"\f83b"}.fa-sass:before{content:"\f41e"}.fa-satellite:before{content:"\f7bf"}.fa-satellite-dish:before{content:"\f7c0"}.fa-save:before{content:"\f0c7"}.fa-schlix:before{content:"\f3ea"}.fa-school:before{content:"\f549"}.fa-screwdriver:before{content:"\f54a"}.fa-scribd:before{content:"\f28a"}.fa-scroll:before{content:"\f70e"}.fa-sd-card:before{content:"\f7c2"}.fa-search:before{content:"\f002"}.fa-search-dollar:before{content:"\f688"}.fa-search-location:before{content:"\f689"}.fa-search-minus:before{content:"\f010"}.fa-search-plus:before{content:"\f00e"}.fa-searchengin:before{content:"\f3eb"}.fa-seedling:before{content:"\f4d8"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-server:before{content:"\f233"}.fa-servicestack:before{content:"\f3ec"}.fa-shapes:before{content:"\f61f"}.fa-share:before{content:"\f064"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-share-square:before{content:"\f14d"}.fa-shekel-sign:before{content:"\f20b"}.fa-shield-alt:before{content:"\f3ed"}.fa-shield-virus:before{content:"\f96c"}.fa-ship:before{content:"\f21a"}.fa-shipping-fast:before{content:"\f48b"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shoe-prints:before{content:"\f54b"}.fa-shopify:before{content:"\f957"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-shopping-cart:before{content:"\f07a"}.fa-shopware:before{content:"\f5b5"}.fa-shower:before{content:"\f2cc"}.fa-shuttle-van:before{content:"\f5b6"}.fa-sign:before{content:"\f4d9"}.fa-sign-in-alt:before{content:"\f2f6"}.fa-sign-language:before{content:"\f2a7"}.fa-sign-out-alt:before{content:"\f2f5"}.fa-signal:before{content:"\f012"}.fa-signature:before{content:"\f5b7"}.fa-sim-card:before{content:"\f7c4"}.fa-simplybuilt:before{content:"\f215"}.fa-sistrix:before{content:"\f3ee"}.fa-sitemap:before{content:"\f0e8"}.fa-sith:before{content:"\f512"}.fa-skating:before{content:"\f7c5"}.fa-sketch:before{content:"\f7c6"}.fa-skiing:before{content:"\f7c9"}.fa-skiing-nordic:before{content:"\f7ca"}.fa-skull:before{content:"\f54c"}.fa-skull-crossbones:before{content:"\f714"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack:before{content:"\f198"}.fa-slack-hash:before{content:"\f3ef"}.fa-slash:before{content:"\f715"}.fa-sleigh:before{content:"\f7cc"}.fa-sliders-h:before{content:"\f1de"}.fa-slideshare:before{content:"\f1e7"}.fa-smile:before{content:"\f118"}.fa-smile-beam:before{content:"\f5b8"}.fa-smile-wink:before{content:"\f4da"}.fa-smog:before{content:"\f75f"}.fa-smoking:before{content:"\f48d"}.fa-smoking-ban:before{content:"\f54d"}.fa-sms:before{content:"\f7cd"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-snowboarding:before{content:"\f7ce"}.fa-snowflake:before{content:"\f2dc"}.fa-snowman:before{content:"\f7d0"}.fa-snowplow:before{content:"\f7d2"}.fa-soap:before{content:"\f96e"}.fa-socks:before{content:"\f696"}.fa-solar-panel:before{content:"\f5ba"}.fa-sort:before{content:"\f0dc"}.fa-sort-alpha-down:before{content:"\f15d"}.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-sort-alpha-up:before{content:"\f15e"}.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-sort-amount-down:before{content:"\f160"}.fa-sort-amount-down-alt:before{content:"\f884"}.fa-sort-amount-up:before{content:"\f161"}.fa-sort-amount-up-alt:before{content:"\f885"}.fa-sort-down:before{content:"\f0dd"}.fa-sort-numeric-down:before{content:"\f162"}.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-sort-numeric-up:before{content:"\f163"}.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-sort-up:before{content:"\f0de"}.fa-soundcloud:before{content:"\f1be"}.fa-sourcetree:before{content:"\f7d3"}.fa-spa:before{content:"\f5bb"}.fa-space-shuttle:before{content:"\f197"}.fa-speakap:before{content:"\f3f3"}.fa-speaker-deck:before{content:"\f83c"}.fa-spell-check:before{content:"\f891"}.fa-spider:before{content:"\f717"}.fa-spinner:before{content:"\f110"}.fa-splotch:before{content:"\f5bc"}.fa-spotify:before{content:"\f1bc"}.fa-spray-can:before{content:"\f5bd"}.fa-square:before{content:"\f0c8"}.fa-square-full:before{content:"\f45c"}.fa-square-root-alt:before{content:"\f698"}.fa-squarespace:before{content:"\f5be"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-stackpath:before{content:"\f842"}.fa-stamp:before{content:"\f5bf"}.fa-star:before{content:"\f005"}.fa-star-and-crescent:before{content:"\f699"}.fa-star-half:before{content:"\f089"}.fa-star-half-alt:before{content:"\f5c0"}.fa-star-of-david:before{content:"\f69a"}.fa-star-of-life:before{content:"\f621"}.fa-staylinked:before{content:"\f3f5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-step-backward:before{content:"\f048"}.fa-step-forward:before{content:"\f051"}.fa-stethoscope:before{content:"\f0f1"}.fa-sticker-mule:before{content:"\f3f7"}.fa-sticky-note:before{content:"\f249"}.fa-stop:before{content:"\f04d"}.fa-stop-circle:before{content:"\f28d"}.fa-stopwatch:before{content:"\f2f2"}.fa-stopwatch-20:before{content:"\f96f"}.fa-store:before{content:"\f54e"}.fa-store-alt:before{content:"\f54f"}.fa-store-alt-slash:before{content:"\f970"}.fa-store-slash:before{content:"\f971"}.fa-strava:before{content:"\f428"}.fa-stream:before{content:"\f550"}.fa-street-view:before{content:"\f21d"}.fa-strikethrough:before{content:"\f0cc"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-stroopwafel:before{content:"\f551"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-subscript:before{content:"\f12c"}.fa-subway:before{content:"\f239"}.fa-suitcase:before{content:"\f0f2"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-sun:before{content:"\f185"}.fa-superpowers:before{content:"\f2dd"}.fa-superscript:before{content:"\f12b"}.fa-supple:before{content:"\f3f9"}.fa-surprise:before{content:"\f5c2"}.fa-suse:before{content:"\f7d6"}.fa-swatchbook:before{content:"\f5c3"}.fa-swift:before{content:"\f8e1"}.fa-swimmer:before{content:"\f5c4"}.fa-swimming-pool:before{content:"\f5c5"}.fa-symfony:before{content:"\f83d"}.fa-synagogue:before{content:"\f69b"}.fa-sync:before{content:"\f021"}.fa-sync-alt:before{content:"\f2f1"}.fa-syringe:before{content:"\f48e"}.fa-table:before{content:"\f0ce"}.fa-table-tennis:before{content:"\f45d"}.fa-tablet:before{content:"\f10a"}.fa-tablet-alt:before{content:"\f3fa"}.fa-tablets:before{content:"\f490"}.fa-tachometer-alt:before{content:"\f3fd"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tape:before{content:"\f4db"}.fa-tasks:before{content:"\f0ae"}.fa-taxi:before{content:"\f1ba"}.fa-teamspeak:before{content:"\f4f9"}.fa-teeth:before{content:"\f62e"}.fa-teeth-open:before{content:"\f62f"}.fa-telegram:before{content:"\f2c6"}.fa-telegram-plane:before{content:"\f3fe"}.fa-temperature-high:before{content:"\f769"}.fa-temperature-low:before{content:"\f76b"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-tenge:before{content:"\f7d7"}.fa-terminal:before{content:"\f120"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-th:before{content:"\f00a"}.fa-th-large:before{content:"\f009"}.fa-th-list:before{content:"\f00b"}.fa-the-red-yeti:before{content:"\f69d"}.fa-theater-masks:before{content:"\f630"}.fa-themeco:before{content:"\f5c6"}.fa-themeisle:before{content:"\f2b2"}.fa-thermometer:before{content:"\f491"}.fa-thermometer-empty:before{content:"\f2cb"}.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-think-peaks:before{content:"\f731"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbtack:before{content:"\f08d"}.fa-ticket-alt:before{content:"\f3ff"}.fa-times:before{content:"\f00d"}.fa-times-circle:before{content:"\f057"}.fa-tint:before{content:"\f043"}.fa-tint-slash:before{content:"\f5c7"}.fa-tired:before{content:"\f5c8"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-toilet:before{content:"\f7d8"}.fa-toilet-paper:before{content:"\f71e"}.fa-toilet-paper-slash:before{content:"\f972"}.fa-toolbox:before{content:"\f552"}.fa-tools:before{content:"\f7d9"}.fa-tooth:before{content:"\f5c9"}.fa-torah:before{content:"\f6a0"}.fa-torii-gate:before{content:"\f6a1"}.fa-tractor:before{content:"\f722"}.fa-trade-federation:before{content:"\f513"}.fa-trademark:before{content:"\f25c"}.fa-traffic-light:before{content:"\f637"}.fa-trailer:before{content:"\f941"}.fa-train:before{content:"\f238"}.fa-tram:before{content:"\f7da"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-trash:before{content:"\f1f8"}.fa-trash-alt:before{content:"\f2ed"}.fa-trash-restore:before{content:"\f829"}.fa-trash-restore-alt:before{content:"\f82a"}.fa-tree:before{content:"\f1bb"}.fa-trello:before{content:"\f181"}.fa-tripadvisor:before{content:"\f262"}.fa-trophy:before{content:"\f091"}.fa-truck:before{content:"\f0d1"}.fa-truck-loading:before{content:"\f4de"}.fa-truck-monster:before{content:"\f63b"}.fa-truck-moving:before{content:"\f4df"}.fa-truck-pickup:before{content:"\f63c"}.fa-tshirt:before{content:"\f553"}.fa-tty:before{content:"\f1e4"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-tv:before{content:"\f26c"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-twitter-square:before{content:"\f081"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-ubuntu:before{content:"\f7df"}.fa-uikit:before{content:"\f403"}.fa-umbraco:before{content:"\f8e8"}.fa-umbrella:before{content:"\f0e9"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-underline:before{content:"\f0cd"}.fa-undo:before{content:"\f0e2"}.fa-undo-alt:before{content:"\f2ea"}.fa-uniregistry:before{content:"\f404"}.fa-unity:before{content:"\f949"}.fa-universal-access:before{content:"\f29a"}.fa-university:before{content:"\f19c"}.fa-unlink:before{content:"\f127"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before{content:"\f13e"}.fa-untappd:before{content:"\f405"}.fa-upload:before{content:"\f093"}.fa-ups:before{content:"\f7e0"}.fa-usb:before{content:"\f287"}.fa-user:before{content:"\f007"}.fa-user-alt:before{content:"\f406"}.fa-user-alt-slash:before{content:"\f4fa"}.fa-user-astronaut:before{content:"\f4fb"}.fa-user-check:before{content:"\f4fc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-clock:before{content:"\f4fd"}.fa-user-cog:before{content:"\f4fe"}.fa-user-edit:before{content:"\f4ff"}.fa-user-friends:before{content:"\f500"}.fa-user-graduate:before{content:"\f501"}.fa-user-injured:before{content:"\f728"}.fa-user-lock:before{content:"\f502"}.fa-user-md:before{content:"\f0f0"}.fa-user-minus:before{content:"\f503"}.fa-user-ninja:before{content:"\f504"}.fa-user-nurse:before{content:"\f82f"}.fa-user-plus:before{content:"\f234"}.fa-user-secret:before{content:"\f21b"}.fa-user-shield:before{content:"\f505"}.fa-user-slash:before{content:"\f506"}.fa-user-tag:before{content:"\f507"}.fa-user-tie:before{content:"\f508"}.fa-user-times:before{content:"\f235"}.fa-users:before{content:"\f0c0"}.fa-users-cog:before{content:"\f509"}.fa-usps:before{content:"\f7e1"}.fa-ussunnah:before{content:"\f407"}.fa-utensil-spoon:before{content:"\f2e5"}.fa-utensils:before{content:"\f2e7"}.fa-vaadin:before{content:"\f408"}.fa-vector-square:before{content:"\f5cb"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-vial:before{content:"\f492"}.fa-vials:before{content:"\f493"}.fa-viber:before{content:"\f409"}.fa-video:before{content:"\f03d"}.fa-video-slash:before{content:"\f4e2"}.fa-vihara:before{content:"\f6a7"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-square:before{content:"\f194"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-virus:before{content:"\f974"}.fa-virus-slash:before{content:"\f975"}.fa-viruses:before{content:"\f976"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-voicemail:before{content:"\f897"}.fa-volleyball-ball:before{content:"\f45f"}.fa-volume-down:before{content:"\f027"}.fa-volume-mute:before{content:"\f6a9"}.fa-volume-off:before{content:"\f026"}.fa-volume-up:before{content:"\f028"}.fa-vote-yea:before{content:"\f772"}.fa-vr-cardboard:before{content:"\f729"}.fa-vuejs:before{content:"\f41f"}.fa-walking:before{content:"\f554"}.fa-wallet:before{content:"\f555"}.fa-warehouse:before{content:"\f494"}.fa-water:before{content:"\f773"}.fa-wave-square:before{content:"\f83e"}.fa-waze:before{content:"\f83f"}.fa-weebly:before{content:"\f5cc"}.fa-weibo:before{content:"\f18a"}.fa-weight:before{content:"\f496"}.fa-weight-hanging:before{content:"\f5cd"}.fa-weixin:before{content:"\f1d7"}.fa-whatsapp:before{content:"\f232"}.fa-whatsapp-square:before{content:"\f40c"}.fa-wheelchair:before{content:"\f193"}.fa-whmcs:before{content:"\f40d"}.fa-wifi:before{content:"\f1eb"}.fa-wikipedia-w:before{content:"\f266"}.fa-wind:before{content:"\f72e"}.fa-window-close:before{content:"\f410"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-windows:before{content:"\f17a"}.fa-wine-bottle:before{content:"\f72f"}.fa-wine-glass:before{content:"\f4e3"}.fa-wine-glass-alt:before{content:"\f5ce"}.fa-wix:before{content:"\f5cf"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-won-sign:before{content:"\f159"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-wpressr:before{content:"\f3e4"}.fa-wrench:before{content:"\f0ad"}.fa-x-ray:before{content:"\f497"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yammer:before{content:"\f840"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yarn:before{content:"\f7e3"}.fa-yelp:before{content:"\f1e9"}.fa-yen-sign:before{content:"\f157"}.fa-yin-yang:before{content:"\f6ad"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.fa-youtube-square:before{content:"\f431"}.fa-zhihu:before{content:"\f63f"}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto} \ No newline at end of file diff --git a/assets/css/github-markdown.min.css b/assets/css/github-markdown.min.css new file mode 100644 index 0000000..6e8cb3b --- /dev/null +++ b/assets/css/github-markdown.min.css @@ -0,0 +1,2 @@ +@font-face{font-family:octicons-link;src:url(data:font/woff;charset=utf-8;base64,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) format('woff')}.markdown-body{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;line-height:1.5;color:#24292e;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-size:16px;line-height:1.5;word-wrap:break-word}.markdown-body .pl-c{color:#6a737d}.markdown-body .pl-c1,.markdown-body .pl-s .pl-v{color:#005cc5}.markdown-body .pl-e,.markdown-body .pl-en{color:#6f42c1}.markdown-body .pl-s .pl-s1,.markdown-body .pl-smi{color:#24292e}.markdown-body .pl-ent{color:#22863a}.markdown-body .pl-k{color:#d73a49}.markdown-body .pl-pds,.markdown-body .pl-s,.markdown-body .pl-s .pl-pse .pl-s1,.markdown-body .pl-sr,.markdown-body .pl-sr .pl-cce,.markdown-body .pl-sr .pl-sra,.markdown-body .pl-sr .pl-sre{color:#032f62}.markdown-body .pl-smw,.markdown-body .pl-v{color:#e36209}.markdown-body .pl-bu{color:#b31d28}.markdown-body .pl-ii{color:#fafbfc;background-color:#b31d28}.markdown-body .pl-c2{color:#fafbfc;background-color:#d73a49}.markdown-body .pl-c2::before{content:"^M"}.markdown-body .pl-sr .pl-cce{font-weight:700;color:#22863a}.markdown-body .pl-ml{color:#735c0f}.markdown-body .pl-mh,.markdown-body .pl-mh .pl-en,.markdown-body .pl-ms{font-weight:700;color:#005cc5}.markdown-body .pl-mi{font-style:italic;color:#24292e}.markdown-body .pl-mb{font-weight:700;color:#24292e}.markdown-body .pl-md{color:#b31d28;background-color:#ffeef0}.markdown-body .pl-mi1{color:#22863a;background-color:#f0fff4}.markdown-body .pl-mc{color:#e36209;background-color:#ffebda}.markdown-body .pl-mi2{color:#f6f8fa;background-color:#005cc5}.markdown-body .pl-mdr{font-weight:700;color:#6f42c1}.markdown-body .pl-ba{color:#586069}.markdown-body .pl-sg{color:#959da5}.markdown-body .pl-corl{text-decoration:underline;color:#032f62}.markdown-body .octicon{display:inline-block;vertical-align:text-top;fill:currentColor}.markdown-body a{background-color:transparent}.markdown-body a:active,.markdown-body a:hover{outline-width:0}.markdown-body strong{font-weight:inherit}.markdown-body strong{font-weight:bolder}.markdown-body h1{font-size:2em;margin:.67em 0}.markdown-body img{border-style:none}.markdown-body code,.markdown-body kbd,.markdown-body pre{font-family:monospace,monospace;font-size:1em}.markdown-body hr{box-sizing:content-box;height:0;overflow:visible}.markdown-body input{font:inherit;margin:0}.markdown-body input{overflow:visible}.markdown-body [type=checkbox]{box-sizing:border-box;padding:0}.markdown-body *{box-sizing:border-box}.markdown-body input{font-family:inherit;font-size:inherit;line-height:inherit}.markdown-body a{color:#0366d6;text-decoration:none}.markdown-body a:hover{text-decoration:underline}.markdown-body strong{font-weight:600}.markdown-body hr{height:0;margin:15px 0;overflow:hidden;background:0 0;border:0;border-bottom:1px solid #dfe2e5}.markdown-body hr::before{display:table;content:""}.markdown-body hr::after{display:table;clear:both;content:""}.markdown-body table{border-spacing:0;border-collapse:collapse}.markdown-body td,.markdown-body th{padding:0}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{margin-top:0;margin-bottom:0}.markdown-body h1{font-size:32px;font-weight:600}.markdown-body h2{font-size:24px;font-weight:600}.markdown-body h3{font-size:20px;font-weight:600}.markdown-body h4{font-size:16px;font-weight:600}.markdown-body h5{font-size:14px;font-weight:600}.markdown-body h6{font-size:12px;font-weight:600}.markdown-body p{margin-top:0;margin-bottom:10px}.markdown-body blockquote{margin:0}.markdown-body ol,.markdown-body ul{padding-left:0;margin-top:0;margin-bottom:0}.markdown-body ol ol,.markdown-body ul ol{list-style-type:lower-roman}.markdown-body ol ol ol,.markdown-body ol ul ol,.markdown-body ul ol ol,.markdown-body ul ul ol{list-style-type:lower-alpha}.markdown-body dd{margin-left:0}.markdown-body code{font-family:SFMono-Regular,Consolas,"Liberation Mono",Menlo,Courier,monospace;font-size:12px}.markdown-body pre{margin-top:0;margin-bottom:0;font-family:SFMono-Regular,Consolas,"Liberation Mono",Menlo,Courier,monospace;font-size:12px}.markdown-body .octicon{vertical-align:text-bottom}.markdown-body .pl-0{padding-left:0!important}.markdown-body .pl-1{padding-left:4px!important}.markdown-body .pl-2{padding-left:8px!important}.markdown-body .pl-3{padding-left:16px!important}.markdown-body .pl-4{padding-left:24px!important}.markdown-body .pl-5{padding-left:32px!important}.markdown-body .pl-6{padding-left:40px!important}.markdown-body::before{display:table;content:""}.markdown-body::after{display:table;clear:both;content:""}.markdown-body>:first-child{margin-top:0!important}.markdown-body>:last-child{margin-bottom:0!important}.markdown-body a:not([href]){color:inherit;text-decoration:none}.markdown-body .anchor{float:left;padding-right:4px;margin-left:-20px;line-height:1}.markdown-body .anchor:focus{outline:0}.markdown-body blockquote,.markdown-body dl,.markdown-body ol,.markdown-body p,.markdown-body pre,.markdown-body table,.markdown-body ul{margin-top:0;margin-bottom:16px}.markdown-body hr{height:.25em;padding:0;margin:24px 0;background-color:#e1e4e8;border:0}.markdown-body blockquote{padding:0 1em;color:#6a737d;border-left:.25em solid #dfe2e5}.markdown-body blockquote>:first-child{margin-top:0}.markdown-body blockquote>:last-child{margin-bottom:0}.markdown-body kbd{display:inline-block;padding:3px 5px;font-size:11px;line-height:10px;color:#444d56;vertical-align:middle;background-color:#fafbfc;border:solid 1px #c6cbd1;border-bottom-color:#959da5;border-radius:3px;box-shadow:inset 0 -1px 0 #959da5}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{margin-top:24px;margin-bottom:16px;font-weight:600;line-height:1.25}.markdown-body h1 .octicon-link,.markdown-body h2 .octicon-link,.markdown-body h3 .octicon-link,.markdown-body h4 .octicon-link,.markdown-body h5 .octicon-link,.markdown-body h6 .octicon-link{color:#1b1f23;vertical-align:middle;visibility:hidden}.markdown-body h1:hover .anchor,.markdown-body h2:hover .anchor,.markdown-body h3:hover .anchor,.markdown-body h4:hover .anchor,.markdown-body h5:hover .anchor,.markdown-body h6:hover .anchor{text-decoration:none}.markdown-body h1:hover .anchor .octicon-link,.markdown-body h2:hover .anchor .octicon-link,.markdown-body h3:hover .anchor .octicon-link,.markdown-body h4:hover .anchor .octicon-link,.markdown-body h5:hover .anchor .octicon-link,.markdown-body h6:hover .anchor .octicon-link{visibility:visible}.markdown-body h1{padding-bottom:.3em;font-size:2em;border-bottom:1px solid #eaecef}.markdown-body h2{padding-bottom:.3em;font-size:1.5em;border-bottom:1px solid #eaecef}.markdown-body h3{font-size:1.25em}.markdown-body h4{font-size:1em}.markdown-body h5{font-size:.875em}.markdown-body h6{font-size:.85em;color:#6a737d}.markdown-body ol,.markdown-body ul{padding-left:2em}.markdown-body ol ol,.markdown-body ol ul,.markdown-body ul ol,.markdown-body ul ul{margin-top:0;margin-bottom:0}.markdown-body li{word-wrap:break-all}.markdown-body li>p{margin-top:16px}.markdown-body li+li{margin-top:.25em}.markdown-body dl{padding:0}.markdown-body dl dt{padding:0;margin-top:16px;font-size:1em;font-style:italic;font-weight:600}.markdown-body dl dd{padding:0 16px;margin-bottom:16px}.markdown-body table{display:block;width:100%;overflow:auto}.markdown-body table th{font-weight:600}.markdown-body table td,.markdown-body table th{padding:6px 13px;border:1px solid #dfe2e5}.markdown-body table tr{background-color:#fff;border-top:1px solid #c6cbd1}.markdown-body table tr:nth-child(2n){background-color:#f6f8fa}.markdown-body img{max-width:100%;box-sizing:content-box;background-color:#fff}.markdown-body img[align=right]{padding-left:20px}.markdown-body img[align=left]{padding-right:20px}.markdown-body code{padding:.2em .4em;margin:0;font-size:85%;background-color:rgba(27,31,35,.05);border-radius:3px}.markdown-body pre{word-wrap:normal}.markdown-body pre>code{padding:0;margin:0;font-size:100%;word-break:normal;white-space:pre;background:0 0;border:0}.markdown-body .highlight{margin-bottom:16px}.markdown-body .highlight pre{margin-bottom:0;word-break:normal}.markdown-body .highlight pre,.markdown-body pre{padding:16px;overflow:auto;font-size:85%;line-height:1.45;background-color:#f6f8fa;border-radius:3px}.markdown-body pre code{display:inline;max-width:auto;padding:0;margin:0;overflow:visible;line-height:inherit;word-wrap:normal;background-color:transparent;border:0}.markdown-body .full-commit .btn-outline:not(:disabled):hover{color:#005cc5;border-color:#005cc5}.markdown-body kbd{display:inline-block;padding:3px 5px;font:11px SFMono-Regular,Consolas,"Liberation Mono",Menlo,Courier,monospace;line-height:10px;color:#444d56;vertical-align:middle;background-color:#fafbfc;border:solid 1px #d1d5da;border-bottom-color:#c6cbd1;border-radius:3px;box-shadow:inset 0 -1px 0 #c6cbd1}.markdown-body :checked+.radio-label{position:relative;z-index:1;border-color:#0366d6}.markdown-body .task-list-item{list-style-type:none}.markdown-body .task-list-item+.task-list-item{margin-top:3px}.markdown-body .task-list-item input{margin:0 .2em .25em -1.6em;vertical-align:middle}.markdown-body hr{border-bottom-color:#eee} +/*# sourceMappingURL=github-markdown.min.css.map */ \ No newline at end of file diff --git a/assets/css/katex.min.css b/assets/css/katex.min.css new file mode 100644 index 0000000..678802e --- /dev/null +++ b/assets/css/katex.min.css @@ -0,0 +1 @@ +@font-face{font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(fonts/KaTeX_AMS-Regular.woff2) format("woff2"),url(fonts/KaTeX_AMS-Regular.woff) format("woff"),url(fonts/KaTeX_AMS-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Caligraphic-Bold.woff2) format("woff2"),url(fonts/KaTeX_Caligraphic-Bold.woff) format("woff"),url(fonts/KaTeX_Caligraphic-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Caligraphic-Regular.woff2) format("woff2"),url(fonts/KaTeX_Caligraphic-Regular.woff) format("woff"),url(fonts/KaTeX_Caligraphic-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Fraktur-Bold.woff2) format("woff2"),url(fonts/KaTeX_Fraktur-Bold.woff) format("woff"),url(fonts/KaTeX_Fraktur-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Fraktur-Regular.woff2) format("woff2"),url(fonts/KaTeX_Fraktur-Regular.woff) format("woff"),url(fonts/KaTeX_Fraktur-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Main-Bold.woff2) format("woff2"),url(fonts/KaTeX_Main-Bold.woff) format("woff"),url(fonts/KaTeX_Main-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(fonts/KaTeX_Main-BoldItalic.woff2) format("woff2"),url(fonts/KaTeX_Main-BoldItalic.woff) format("woff"),url(fonts/KaTeX_Main-BoldItalic.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(fonts/KaTeX_Main-Italic.woff2) format("woff2"),url(fonts/KaTeX_Main-Italic.woff) format("woff"),url(fonts/KaTeX_Main-Italic.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Main-Regular.woff2) format("woff2"),url(fonts/KaTeX_Main-Regular.woff) format("woff"),url(fonts/KaTeX_Main-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(fonts/KaTeX_Math-BoldItalic.woff2) format("woff2"),url(fonts/KaTeX_Math-BoldItalic.woff) format("woff"),url(fonts/KaTeX_Math-BoldItalic.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(fonts/KaTeX_Math-Italic.woff2) format("woff2"),url(fonts/KaTeX_Math-Italic.woff) format("woff"),url(fonts/KaTeX_Math-Italic.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:700;src:url(fonts/KaTeX_SansSerif-Bold.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Bold.woff) format("woff"),url(fonts/KaTeX_SansSerif-Bold.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:italic;font-weight:400;src:url(fonts/KaTeX_SansSerif-Italic.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Italic.woff) format("woff"),url(fonts/KaTeX_SansSerif-Italic.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:400;src:url(fonts/KaTeX_SansSerif-Regular.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Regular.woff) format("woff"),url(fonts/KaTeX_SansSerif-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Script-Regular.woff2) format("woff2"),url(fonts/KaTeX_Script-Regular.woff) format("woff"),url(fonts/KaTeX_Script-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size1-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size1-Regular.woff) format("woff"),url(fonts/KaTeX_Size1-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size2-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size2-Regular.woff) format("woff"),url(fonts/KaTeX_Size2-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size3-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size3-Regular.woff) format("woff"),url(fonts/KaTeX_Size3-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size4-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size4-Regular.woff) format("woff"),url(fonts/KaTeX_Size4-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Typewriter-Regular.woff2) format("woff2"),url(fonts/KaTeX_Typewriter-Regular.woff) format("woff"),url(fonts/KaTeX_Typewriter-Regular.ttf) format("truetype")}.katex{text-rendering:auto;font:normal 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.3"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.27777778em;margin-right:-.55555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.83333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.16666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.33333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.66666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.45666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.14666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.71428571em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.85714286em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.14285714em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.28571429em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.42857143em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.71428571em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.05714286em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.46857143em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.96285714em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.55428571em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.55555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.66666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.77777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.88888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.11111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.33333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.30444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.76444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.41666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.58333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.66666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.83333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.72833333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.07333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.34722222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.41666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.48611111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.55555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.69444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.83333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.44027778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.72777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.28935185em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.34722222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.40509259em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.46296296em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.52083333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.69444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.83333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.20023148em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.43981481em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.24108004em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.28929605em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.33751205em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.38572806em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.43394407em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.48216008em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.57859209em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.69431051em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.83317261em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.19961427em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.20096463em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.24115756em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.28135048em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.32154341em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.36173633em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.40192926em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.48231511em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.57877814em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.69453376em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.83360129em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo} diff --git a/assets/css/vlabs-style.css b/assets/css/vlabs-style.css new file mode 100644 index 0000000..47cfdf5 --- /dev/null +++ b/assets/css/vlabs-style.css @@ -0,0 +1,444 @@ +html { + overflow-y: auto; +} + +.svc-rating-display{ + display:flex; + flex-direction: column; + margin-right: 40px ; + margin-bottom: 17px; + align-items: center ; +} + +.vl-rating-display { + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + overflow: hidden; + padding: 0px 10px; + margin-top: -15px; /* Adjust this value as needed */ +} +.list-of-experiments-container { + display: flex; + flex-direction: row; + justify-content: left; + align-items: center; + overflow: hidden; + flex: 0 0 1%; /*Adjust this value to decrease the width*/ +} + +.list-of-experiments-container > div{ + margin: 1px; +} +.list-of-experiments-display-rating { + position: relative; + top: -10px; + left: 20px; +} + +.vlabs-page { + height: 100vh; + overflow-x: hidden; +} + +.vlabs-header { + border-bottom: 8px solid #ff6600; + font-family: "Raleway", sans-serif; +} + +.vlabs-page-main { + font-size: 1rem; + font-family: "Open Sans", sans-serif; +} + +.vlabs-lab-name { + font-size: 1.7rem; +} + +.vlabs-footer { + font-size: 14px; + background: rgb(17, 17, 17); + font-family: "Raleway", sans-serif; +} + +.vlabs-footer-sect-name { + border-width: 0.15rem; + border-style: solid; + border-image: linear-gradient(to right, #3ec1d5 20%, #555 0%) 0% 0% 100% 0%; +} + +.vlabs-lab-name { + color: #2c99ce; +} + +.vlabs-page-content { + font-size: 1.2rem; + overflow-y: hidden; + font-family: "Raleway", sans-serif; +} + +.social-links > a { + color: #fff; + border-radius: 50%; + width: 36px; + height: 36px; +} + +.nav-menu a, +.simulation-header .dropdown .nav-menu a { + color: #3e6389; +} + +.nav-menu .tasks a, +.simulation-header .dropdown .nav-menu .tasks a { + color: #5c5c5c; +} + +.nav-menu a.current-item, +.simulation-header .dropdown .nav-menu a.current-item { + color: #ff6600; +} + +.nav-menu .tasks, +.simulation-header .dropdown .nav-menu .tasks { + font-size: 1rem; +} + +.nav-menu, +.simulation-header .dropdown .nav-menu { + font-size: 1.2rem; + font-weight: bold; +} + +.nav-menu-body { + justify-content: center; +} + +.sidebar .nav-menu-body { + justify-content: start; +} + +.sidebar { + /* border-right: 2px dotted #89a7c4; */ + border-right: thin solid #e8e8e8; + overflow: hidden; + box-sizing: content-box; +} + +.popupmenu .vlabs-logo { + height: 2.5rem; +} + +@media (max-width: 991px) { + .sidebar { + max-height: 6000px; + transition: max-height 1s ease-in; + flex-wrap: nowrap; + overflow-y: auto; + } + .vlabs-logo { + height: 3rem; + } + + .simulation-header { + display: none !important; + } +} + +@media (min-width: 992px) { + .vlabs-hidden { + display: none !important; + } + #toggle-menu-float-button { + display: none; + } + .bug-report-mobile { + display: none; + } +} + +.vlabs-header a { + margin: 0 1rem; + padding: 0.5rem 1rem; + color: #2c98cd; +} + +.vlabs-header #headerNavbar a:hover { + background: #77bb41; + color: #fff; + border-radius: 10px; +} + +.vlabs-header #headerNavbar a { + border-radius: 10px; + transition: 0.3s; +} + +.breadcrumbs, +.breadcrumbs a, +.breadcrumbs span { + font-size: 1.6rem; + color: #337ab7; +} + +.page-name { + color: #337ab7; +} + +/*pre-test and post-test page styling fix*/ + +.answers { + font-size: 1rem; + display: flex; + flex-direction: column; + margin-bottom: 1rem; +} + +.question { + font-weight: 900; +} + +/* feedback */ +#feedback-btn { + color: #2c99ce; + border-color: #2c99ce; +} + +/* to override markdown styling */ +.markdown-body { + font-family: "Raleway", sans-serif; + color: #000000; + text-align: justify; +} + +/* to fix the extended lines*/ +.markdown-body table tr { + border-top: 0; +} + +h1, +h2, +h3 { + color: #2c99ce; +} + +h2 { + padding-top: 2rem; + padding-bottom: 1rem; +} + +h3 { + font-size: 1.1rem; + color: #333333; + padding-top: 1rem; + text-decoration: underline; +} + +/* for ds experiments - video iframes */ +iframe { + width: 100%; + height: calc(100vw / 3); +} + +.simulation-container { + padding: 0px; + height: 100vh; + width: 100vw; + overflow: hidden; + position: absolute; + top: 0; + left: 0; + background: #fff; + display: flex; + flex-direction: column; +} + +.responsive-iframe { + flex: 1; +} + +/* Style the buttons that are used to open and close the accordion panel */ +.accordion { + display: none; + margin-left: 20px; + color: #337ab7; + text-decoration: underline; + text-align: right; +} + +/* Add a background color to the button if it is clicked on (add the .active class with JS), and when you move the mouse over it (hover) */ +/* .active, +.accordion:hover { +} */ + +/* Style the accordion panel. Note: hidden by default */ +.panel { + display: none; + background-color: #eee; + color: #444; + padding: 18px; + width: 100%; + text-align: left; + border: none; + outline: none; + transition: 0.4s; +} + +/* Customize the label (the container) */ +.container { + display: block; + position: relative; + padding-left: 35px; + margin-bottom: 12px; + cursor: pointer; + font-size: 22px; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +/* .form-check input[type="checkbox"] { + width: 1rem; + height: 1rem; + margin: 5px 10px 0px 0px; +} */ + +/* Responsive layout - makes the three columns stack on top of each other instead of next to each other */ +@media screen and (max-width: 600px) { + .column { + width: 100%; + } +} + +#difficulty-container, +.form-check { + display: flex; + align-items: center; +} + +.form-check input[type="checkbox"] { + margin: 0.5em; + transform: scale(1.5); +} + +.fix-spacing > * { + padding-top: 0; + margin-top: 1em; +} + +#toggle-menu-float-button { + position: absolute; + bottom: 20px; + left: 20px; + z-index: 1; + padding: 0.8em 1em; + background: rgba(255, 255, 255, 0.9); + cursor: pointer; + border-radius: 0.5em; + color: #fff; + border: 3px solid rgba(0, 174, 255, 0.274); + transform: scale(0.9); +} + +.toggle-menu-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); + height: 30px; + width: 30px; +} + +.btn-close { + box-sizing: content-box; + width: 1em; + height: 1em; + padding: 0.25em 0.25em; + color: #000; + background: transparent + url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") + center/1em auto no-repeat; + border: 0; + border-radius: 0.25rem; + opacity: 0.5; +} + +.tools { + top: 50%; + transform: translate(0%, 25%); +} + +.simulation-header .navbar-brand .vlabs-logo { + height: 3rem; +} + +.simulation-header h1, +.simulation-header h2 { + border: none; + font-size: 1.5rem; + padding: 0; + flex: 2; + text-align: center; + + display: -webkit-box; + -webkit-line-clamp: 1; + -webkit-box-orient: vertical; + overflow: hidden; + text-overflow: ellipsis; + overflow-wrap: break-word; +} + +.simulation-header .dropdown { + position: relative; + display: inline-block; +} + +.simulation-header .dropdown .backdrop { + position: absolute; + width: 100vw; + background-color: rgba(0, 0, 0, 0.2); + height: 100vh; +} + +.simulation-header .dropdown .nav-menu { + width: fit-content; + background-color: #fff; + margin-top: 8px; + padding: 10px; + box-shadow: 0px 8px 14px 0px rgba(0, 0, 0, 0.2); + font-family: "Open Sans", sans-serif; + max-height: 80%; + overflow: auto; +} + +.simulation-header .dropdown .nav-menu-body { + justify-content: flex-start; +} + +.simulation-header .dropdown .vlabs-hidden { + display: none; +} + +.expand-1 { + flex: 1; +} + +/* Add Button style from virtual styles */ +.v-button { + border: none; + color: #ffffff; + background-color: #288ec8; + text-align: center; + font-size: 1.05rem; + border-radius: 1em; + padding: 0.6em 1.2em; + cursor: pointer; +} + +.v-button:hover { + background-color: #a9a9a9; +} + +.v-button:disabled { + background-color: #a9a9a9; + cursor: not-allowed; +} \ No newline at end of file diff --git a/assets/fonts/font-awesome-4.7.0/css/font-awesome.min.css b/assets/fonts/font-awesome-4.7.0/css/font-awesome.min.css new file mode 100644 index 0000000..540440c --- /dev/null +++ b/assets/fonts/font-awesome-4.7.0/css/font-awesome.min.css @@ -0,0 +1,4 @@ +/*! + * Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome + * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) + */@font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.7.0');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff2?v=4.7.0') format('woff2'),url('../fonts/fontawesome-webfont.woff?v=4.7.0') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.7.0') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left{margin-right:.3em}.fa.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-remove:before,.fa-close:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-desc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-asc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-institution:before,.fa-bank:before,.fa-university:before{content:"\f19c"}.fa-mortar-board:before,.fa-graduation-cap:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:"\f1c5"}.fa-file-zip-o:before,.fa-file-archive-o:before{content:"\f1c6"}.fa-file-sound-o:before,.fa-file-audio-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-resistance:before,.fa-rebel:before{content:"\f1d0"}.fa-ge:before,.fa-empire:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-y-combinator-square:before,.fa-yc-square:before,.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-send:before,.fa-paper-plane:before{content:"\f1d8"}.fa-send-o:before,.fa-paper-plane-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-soccer-ball-o:before,.fa-futbol-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-shekel:before,.fa-sheqel:before,.fa-ils:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-intersex:before,.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-genderless:before{content:"\f22d"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-hotel:before,.fa-bed:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"}.fa-yc:before,.fa-y-combinator:before{content:"\f23b"}.fa-optin-monster:before{content:"\f23c"}.fa-opencart:before{content:"\f23d"}.fa-expeditedssl:before{content:"\f23e"}.fa-battery-4:before,.fa-battery:before,.fa-battery-full:before{content:"\f240"}.fa-battery-3:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-battery-2:before,.fa-battery-half:before{content:"\f242"}.fa-battery-1:before,.fa-battery-quarter:before{content:"\f243"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-mouse-pointer:before{content:"\f245"}.fa-i-cursor:before{content:"\f246"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-sticky-note:before{content:"\f249"}.fa-sticky-note-o:before{content:"\f24a"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-diners-club:before{content:"\f24c"}.fa-clone:before{content:"\f24d"}.fa-balance-scale:before{content:"\f24e"}.fa-hourglass-o:before{content:"\f250"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-hourglass-2:before,.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-hourglass:before{content:"\f254"}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:"\f255"}.fa-hand-stop-o:before,.fa-hand-paper-o:before{content:"\f256"}.fa-hand-scissors-o:before{content:"\f257"}.fa-hand-lizard-o:before{content:"\f258"}.fa-hand-spock-o:before{content:"\f259"}.fa-hand-pointer-o:before{content:"\f25a"}.fa-hand-peace-o:before{content:"\f25b"}.fa-trademark:before{content:"\f25c"}.fa-registered:before{content:"\f25d"}.fa-creative-commons:before{content:"\f25e"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-tripadvisor:before{content:"\f262"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-get-pocket:before{content:"\f265"}.fa-wikipedia-w:before{content:"\f266"}.fa-safari:before{content:"\f267"}.fa-chrome:before{content:"\f268"}.fa-firefox:before{content:"\f269"}.fa-opera:before{content:"\f26a"}.fa-internet-explorer:before{content:"\f26b"}.fa-tv:before,.fa-television:before{content:"\f26c"}.fa-contao:before{content:"\f26d"}.fa-500px:before{content:"\f26e"}.fa-amazon:before{content:"\f270"}.fa-calendar-plus-o:before{content:"\f271"}.fa-calendar-minus-o:before{content:"\f272"}.fa-calendar-times-o:before{content:"\f273"}.fa-calendar-check-o:before{content:"\f274"}.fa-industry:before{content:"\f275"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-map-o:before{content:"\f278"}.fa-map:before{content:"\f279"}.fa-commenting:before{content:"\f27a"}.fa-commenting-o:before{content:"\f27b"}.fa-houzz:before{content:"\f27c"}.fa-vimeo:before{content:"\f27d"}.fa-black-tie:before{content:"\f27e"}.fa-fonticons:before{content:"\f280"}.fa-reddit-alien:before{content:"\f281"}.fa-edge:before{content:"\f282"}.fa-credit-card-alt:before{content:"\f283"}.fa-codiepie:before{content:"\f284"}.fa-modx:before{content:"\f285"}.fa-fort-awesome:before{content:"\f286"}.fa-usb:before{content:"\f287"}.fa-product-hunt:before{content:"\f288"}.fa-mixcloud:before{content:"\f289"}.fa-scribd:before{content:"\f28a"}.fa-pause-circle:before{content:"\f28b"}.fa-pause-circle-o:before{content:"\f28c"}.fa-stop-circle:before{content:"\f28d"}.fa-stop-circle-o:before{content:"\f28e"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-hashtag:before{content:"\f292"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-percent:before{content:"\f295"}.fa-gitlab:before{content:"\f296"}.fa-wpbeginner:before{content:"\f297"}.fa-wpforms:before{content:"\f298"}.fa-envira:before{content:"\f299"}.fa-universal-access:before{content:"\f29a"}.fa-wheelchair-alt:before{content:"\f29b"}.fa-question-circle-o:before{content:"\f29c"}.fa-blind:before{content:"\f29d"}.fa-audio-description:before{content:"\f29e"}.fa-volume-control-phone:before{content:"\f2a0"}.fa-braille:before{content:"\f2a1"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asl-interpreting:before,.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-deafness:before,.fa-hard-of-hearing:before,.fa-deaf:before{content:"\f2a4"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-signing:before,.fa-sign-language:before{content:"\f2a7"}.fa-low-vision:before{content:"\f2a8"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-pied-piper:before{content:"\f2ae"}.fa-first-order:before{content:"\f2b0"}.fa-yoast:before{content:"\f2b1"}.fa-themeisle:before{content:"\f2b2"}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:"\f2b3"}.fa-fa:before,.fa-font-awesome:before{content:"\f2b4"}.fa-handshake-o:before{content:"\f2b5"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-o:before{content:"\f2b7"}.fa-linode:before{content:"\f2b8"}.fa-address-book:before{content:"\f2b9"}.fa-address-book-o:before{content:"\f2ba"}.fa-vcard:before,.fa-address-card:before{content:"\f2bb"}.fa-vcard-o:before,.fa-address-card-o:before{content:"\f2bc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-circle-o:before{content:"\f2be"}.fa-user-o:before{content:"\f2c0"}.fa-id-badge:before{content:"\f2c1"}.fa-drivers-license:before,.fa-id-card:before{content:"\f2c2"}.fa-drivers-license-o:before,.fa-id-card-o:before{content:"\f2c3"}.fa-quora:before{content:"\f2c4"}.fa-free-code-camp:before{content:"\f2c5"}.fa-telegram:before{content:"\f2c6"}.fa-thermometer-4:before,.fa-thermometer:before,.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-thermometer-2:before,.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-0:before,.fa-thermometer-empty:before{content:"\f2cb"}.fa-shower:before{content:"\f2cc"}.fa-bathtub:before,.fa-s15:before,.fa-bath:before{content:"\f2cd"}.fa-podcast:before{content:"\f2ce"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-times-rectangle:before,.fa-window-close:before{content:"\f2d3"}.fa-times-rectangle-o:before,.fa-window-close-o:before{content:"\f2d4"}.fa-bandcamp:before{content:"\f2d5"}.fa-grav:before{content:"\f2d6"}.fa-etsy:before{content:"\f2d7"}.fa-imdb:before{content:"\f2d8"}.fa-ravelry:before{content:"\f2d9"}.fa-eercast:before{content:"\f2da"}.fa-microchip:before{content:"\f2db"}.fa-snowflake-o:before{content:"\f2dc"}.fa-superpowers:before{content:"\f2dd"}.fa-wpexplorer:before{content:"\f2de"}.fa-meetup:before{content:"\f2e0"}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto} diff --git a/assets/fonts/font-awesome-4.7.0/fonts/FontAwesome.otf b/assets/fonts/font-awesome-4.7.0/fonts/FontAwesome.otf new file mode 100644 index 0000000000000000000000000000000000000000..401ec0f36e4f73b8efa40bd6f604fe80d286db70 GIT binary patch literal 134808 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ፈ|NFLGVp8C|9vt}4Pu%W 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�L| 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 literal 0 HcmV?d00001 diff --git a/assets/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.eot b/assets/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.eot new file mode 100644 index 0000000000000000000000000000000000000000..e9f60ca953f93e35eab4108bd414bc02ddcf3928 GIT binary patch literal 165742 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
G*yFsbY~cLNXLP73aA74Mq6M9f^&YV`isWW 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 literal 0 HcmV?d00001 diff --git a/assets/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.svg b/assets/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.svg new file mode 100644 index 0000000..855c845 --- /dev/null +++ b/assets/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.svg @@ -0,0 +1,2671 @@ +<?xml version="1.0" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" > +<svg> +<metadata> +Created by FontForge 20120731 at Mon Oct 24 17:37:40 2016 + By ,,, +Copyright Dave Gandy 2016. All rights reserved. +</metadata> +<defs> +<font id="FontAwesome" horiz-adv-x="1536" > + <font-face + font-family="FontAwesome" + font-weight="400" + font-stretch="normal" + units-per-em="1792" + panose-1="0 0 0 0 0 0 0 0 0 0" + ascent="1536" + descent="-256" + bbox="-1.02083 -256.962 2304.6 1537.02" + underline-thickness="0" + underline-position="0" + unicode-range="U+0020-F500" + /> +<missing-glyph horiz-adv-x="896" +d="M224 112h448v1312h-448v-1312zM112 0v1536h672v-1536h-672z" /> + <glyph glyph-name=".notdef" horiz-adv-x="896" +d="M224 112h448v1312h-448v-1312zM112 0v1536h672v-1536h-672z" /> + <glyph glyph-name=".null" horiz-adv-x="0" + /> + <glyph glyph-name="nonmarkingreturn" horiz-adv-x="597" + /> + <glyph glyph-name="space" unicode=" " horiz-adv-x="448" + /> + <glyph glyph-name="dieresis" unicode="¨" horiz-adv-x="1792" + /> + <glyph glyph-name="copyright" unicode="©" horiz-adv-x="1792" + /> + <glyph glyph-name="registered" unicode="®" horiz-adv-x="1792" + /> + <glyph glyph-name="acute" unicode="´" horiz-adv-x="1792" + /> + <glyph glyph-name="AE" unicode="Æ" horiz-adv-x="1792" + /> + <glyph glyph-name="Oslash" unicode="Ø" horiz-adv-x="1792" + /> + <glyph glyph-name="trademark" unicode="™" horiz-adv-x="1792" + /> + <glyph glyph-name="infinity" unicode="∞" horiz-adv-x="1792" + /> + <glyph glyph-name="notequal" unicode="≠" horiz-adv-x="1792" + /> + <glyph glyph-name="glass" unicode="" horiz-adv-x="1792" +d="M1699 1350q0 -35 -43 -78l-632 -632v-768h320q26 0 45 -19t19 -45t-19 -45t-45 -19h-896q-26 0 -45 19t-19 45t19 45t45 19h320v768l-632 632q-43 43 -43 78q0 23 18 36.5t38 17.5t43 4h1408q23 0 43 -4t38 -17.5t18 -36.5z" /> + <glyph glyph-name="music" unicode="" +d="M1536 1312v-1120q0 -50 -34 -89t-86 -60.5t-103.5 -32t-96.5 -10.5t-96.5 10.5t-103.5 32t-86 60.5t-34 89t34 89t86 60.5t103.5 32t96.5 10.5q105 0 192 -39v537l-768 -237v-709q0 -50 -34 -89t-86 -60.5t-103.5 -32t-96.5 -10.5t-96.5 10.5t-103.5 32t-86 60.5t-34 89 +t34 89t86 60.5t103.5 32t96.5 10.5q105 0 192 -39v967q0 31 19 56.5t49 35.5l832 256q12 4 28 4q40 0 68 -28t28 -68z" /> + <glyph glyph-name="search" unicode="" horiz-adv-x="1664" +d="M1152 704q0 185 -131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5t316.5 131.5t131.5 316.5zM1664 -128q0 -52 -38 -90t-90 -38q-54 0 -90 38l-343 342q-179 -124 -399 -124q-143 0 -273.5 55.5t-225 150t-150 225t-55.5 273.5 +t55.5 273.5t150 225t225 150t273.5 55.5t273.5 -55.5t225 -150t150 -225t55.5 -273.5q0 -220 -124 -399l343 -343q37 -37 37 -90z" /> + <glyph glyph-name="envelope" unicode="" horiz-adv-x="1792" +d="M1664 32v768q-32 -36 -69 -66q-268 -206 -426 -338q-51 -43 -83 -67t-86.5 -48.5t-102.5 -24.5h-1h-1q-48 0 -102.5 24.5t-86.5 48.5t-83 67q-158 132 -426 338q-37 30 -69 66v-768q0 -13 9.5 -22.5t22.5 -9.5h1472q13 0 22.5 9.5t9.5 22.5zM1664 1083v11v13.5t-0.5 13 +t-3 12.5t-5.5 9t-9 7.5t-14 2.5h-1472q-13 0 -22.5 -9.5t-9.5 -22.5q0 -168 147 -284q193 -152 401 -317q6 -5 35 -29.5t46 -37.5t44.5 -31.5t50.5 -27.5t43 -9h1h1q20 0 43 9t50.5 27.5t44.5 31.5t46 37.5t35 29.5q208 165 401 317q54 43 100.5 115.5t46.5 131.5z +M1792 1120v-1088q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h1472q66 0 113 -47t47 -113z" /> + <glyph glyph-name="heart" unicode="" horiz-adv-x="1792" +d="M896 -128q-26 0 -44 18l-624 602q-10 8 -27.5 26t-55.5 65.5t-68 97.5t-53.5 121t-23.5 138q0 220 127 344t351 124q62 0 126.5 -21.5t120 -58t95.5 -68.5t76 -68q36 36 76 68t95.5 68.5t120 58t126.5 21.5q224 0 351 -124t127 -344q0 -221 -229 -450l-623 -600 +q-18 -18 -44 -18z" /> + <glyph glyph-name="star" unicode="" horiz-adv-x="1664" +d="M1664 889q0 -22 -26 -48l-363 -354l86 -500q1 -7 1 -20q0 -21 -10.5 -35.5t-30.5 -14.5q-19 0 -40 12l-449 236l-449 -236q-22 -12 -40 -12q-21 0 -31.5 14.5t-10.5 35.5q0 6 2 20l86 500l-364 354q-25 27 -25 48q0 37 56 46l502 73l225 455q19 41 49 41t49 -41l225 -455 +l502 -73q56 -9 56 -46z" /> + <glyph glyph-name="star_empty" unicode="" horiz-adv-x="1664" +d="M1137 532l306 297l-422 62l-189 382l-189 -382l-422 -62l306 -297l-73 -421l378 199l377 -199zM1664 889q0 -22 -26 -48l-363 -354l86 -500q1 -7 1 -20q0 -50 -41 -50q-19 0 -40 12l-449 236l-449 -236q-22 -12 -40 -12q-21 0 -31.5 14.5t-10.5 35.5q0 6 2 20l86 500 +l-364 354q-25 27 -25 48q0 37 56 46l502 73l225 455q19 41 49 41t49 -41l225 -455l502 -73q56 -9 56 -46z" /> + <glyph glyph-name="user" unicode="" horiz-adv-x="1280" +d="M1280 137q0 -109 -62.5 -187t-150.5 -78h-854q-88 0 -150.5 78t-62.5 187q0 85 8.5 160.5t31.5 152t58.5 131t94 89t134.5 34.5q131 -128 313 -128t313 128q76 0 134.5 -34.5t94 -89t58.5 -131t31.5 -152t8.5 -160.5zM1024 1024q0 -159 -112.5 -271.5t-271.5 -112.5 +t-271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5t271.5 -112.5t112.5 -271.5z" /> + <glyph glyph-name="film" unicode="" horiz-adv-x="1920" +d="M384 -64v128q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM384 320v128q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM384 704v128q0 26 -19 45t-45 19h-128 +q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM1408 -64v512q0 26 -19 45t-45 19h-768q-26 0 -45 -19t-19 -45v-512q0 -26 19 -45t45 -19h768q26 0 45 19t19 45zM384 1088v128q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45 +t45 -19h128q26 0 45 19t19 45zM1792 -64v128q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM1408 704v512q0 26 -19 45t-45 19h-768q-26 0 -45 -19t-19 -45v-512q0 -26 19 -45t45 -19h768q26 0 45 19t19 45zM1792 320v128 +q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM1792 704v128q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM1792 1088v128q0 26 -19 45t-45 19h-128q-26 0 -45 -19 +t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM1920 1248v-1344q0 -66 -47 -113t-113 -47h-1600q-66 0 -113 47t-47 113v1344q0 66 47 113t113 47h1600q66 0 113 -47t47 -113z" /> + <glyph glyph-name="th_large" unicode="" horiz-adv-x="1664" +d="M768 512v-384q0 -52 -38 -90t-90 -38h-512q-52 0 -90 38t-38 90v384q0 52 38 90t90 38h512q52 0 90 -38t38 -90zM768 1280v-384q0 -52 -38 -90t-90 -38h-512q-52 0 -90 38t-38 90v384q0 52 38 90t90 38h512q52 0 90 -38t38 -90zM1664 512v-384q0 -52 -38 -90t-90 -38 +h-512q-52 0 -90 38t-38 90v384q0 52 38 90t90 38h512q52 0 90 -38t38 -90zM1664 1280v-384q0 -52 -38 -90t-90 -38h-512q-52 0 -90 38t-38 90v384q0 52 38 90t90 38h512q52 0 90 -38t38 -90z" /> + <glyph glyph-name="th" unicode="" horiz-adv-x="1792" +d="M512 288v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM512 800v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1152 288v-192q0 -40 -28 -68t-68 -28h-320 +q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM512 1312v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1152 800v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28 +h320q40 0 68 -28t28 -68zM1792 288v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1152 1312v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1792 800v-192 +q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1792 1312v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68z" /> + <glyph glyph-name="th_list" unicode="" horiz-adv-x="1792" +d="M512 288v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM512 800v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1792 288v-192q0 -40 -28 -68t-68 -28h-960 +q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h960q40 0 68 -28t28 -68zM512 1312v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1792 800v-192q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68v192q0 40 28 68t68 28 +h960q40 0 68 -28t28 -68zM1792 1312v-192q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h960q40 0 68 -28t28 -68z" /> + <glyph glyph-name="ok" unicode="" horiz-adv-x="1792" +d="M1671 970q0 -40 -28 -68l-724 -724l-136 -136q-28 -28 -68 -28t-68 28l-136 136l-362 362q-28 28 -28 68t28 68l136 136q28 28 68 28t68 -28l294 -295l656 657q28 28 68 28t68 -28l136 -136q28 -28 28 -68z" /> + <glyph glyph-name="remove" unicode="" horiz-adv-x="1408" +d="M1298 214q0 -40 -28 -68l-136 -136q-28 -28 -68 -28t-68 28l-294 294l-294 -294q-28 -28 -68 -28t-68 28l-136 136q-28 28 -28 68t28 68l294 294l-294 294q-28 28 -28 68t28 68l136 136q28 28 68 28t68 -28l294 -294l294 294q28 28 68 28t68 -28l136 -136q28 -28 28 -68 +t-28 -68l-294 -294l294 -294q28 -28 28 -68z" /> + <glyph glyph-name="zoom_in" unicode="" horiz-adv-x="1664" +d="M1024 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-224v-224q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v224h-224q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h224v224q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5v-224h224 +q13 0 22.5 -9.5t9.5 -22.5zM1152 704q0 185 -131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5t316.5 131.5t131.5 316.5zM1664 -128q0 -53 -37.5 -90.5t-90.5 -37.5q-54 0 -90 38l-343 342q-179 -124 -399 -124q-143 0 -273.5 55.5 +t-225 150t-150 225t-55.5 273.5t55.5 273.5t150 225t225 150t273.5 55.5t273.5 -55.5t225 -150t150 -225t55.5 -273.5q0 -220 -124 -399l343 -343q37 -37 37 -90z" /> + <glyph glyph-name="zoom_out" unicode="" horiz-adv-x="1664" +d="M1024 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-576q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h576q13 0 22.5 -9.5t9.5 -22.5zM1152 704q0 185 -131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5t316.5 131.5t131.5 316.5z +M1664 -128q0 -53 -37.5 -90.5t-90.5 -37.5q-54 0 -90 38l-343 342q-179 -124 -399 -124q-143 0 -273.5 55.5t-225 150t-150 225t-55.5 273.5t55.5 273.5t150 225t225 150t273.5 55.5t273.5 -55.5t225 -150t150 -225t55.5 -273.5q0 -220 -124 -399l343 -343q37 -37 37 -90z +" /> + <glyph glyph-name="off" unicode="" +d="M1536 640q0 -156 -61 -298t-164 -245t-245 -164t-298 -61t-298 61t-245 164t-164 245t-61 298q0 182 80.5 343t226.5 270q43 32 95.5 25t83.5 -50q32 -42 24.5 -94.5t-49.5 -84.5q-98 -74 -151.5 -181t-53.5 -228q0 -104 40.5 -198.5t109.5 -163.5t163.5 -109.5 +t198.5 -40.5t198.5 40.5t163.5 109.5t109.5 163.5t40.5 198.5q0 121 -53.5 228t-151.5 181q-42 32 -49.5 84.5t24.5 94.5q31 43 84 50t95 -25q146 -109 226.5 -270t80.5 -343zM896 1408v-640q0 -52 -38 -90t-90 -38t-90 38t-38 90v640q0 52 38 90t90 38t90 -38t38 -90z" /> + <glyph glyph-name="signal" unicode="" horiz-adv-x="1792" +d="M256 96v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM640 224v-320q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v320q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1024 480v-576q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23 +v576q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1408 864v-960q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v960q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1792 1376v-1472q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v1472q0 14 9 23t23 9h192q14 0 23 -9t9 -23z" /> + <glyph glyph-name="cog" unicode="" +d="M1024 640q0 106 -75 181t-181 75t-181 -75t-75 -181t75 -181t181 -75t181 75t75 181zM1536 749v-222q0 -12 -8 -23t-20 -13l-185 -28q-19 -54 -39 -91q35 -50 107 -138q10 -12 10 -25t-9 -23q-27 -37 -99 -108t-94 -71q-12 0 -26 9l-138 108q-44 -23 -91 -38 +q-16 -136 -29 -186q-7 -28 -36 -28h-222q-14 0 -24.5 8.5t-11.5 21.5l-28 184q-49 16 -90 37l-141 -107q-10 -9 -25 -9q-14 0 -25 11q-126 114 -165 168q-7 10 -7 23q0 12 8 23q15 21 51 66.5t54 70.5q-27 50 -41 99l-183 27q-13 2 -21 12.5t-8 23.5v222q0 12 8 23t19 13 +l186 28q14 46 39 92q-40 57 -107 138q-10 12 -10 24q0 10 9 23q26 36 98.5 107.5t94.5 71.5q13 0 26 -10l138 -107q44 23 91 38q16 136 29 186q7 28 36 28h222q14 0 24.5 -8.5t11.5 -21.5l28 -184q49 -16 90 -37l142 107q9 9 24 9q13 0 25 -10q129 -119 165 -170q7 -8 7 -22 +q0 -12 -8 -23q-15 -21 -51 -66.5t-54 -70.5q26 -50 41 -98l183 -28q13 -2 21 -12.5t8 -23.5z" /> + <glyph glyph-name="trash" unicode="" horiz-adv-x="1408" +d="M512 800v-576q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v576q0 14 9 23t23 9h64q14 0 23 -9t9 -23zM768 800v-576q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v576q0 14 9 23t23 9h64q14 0 23 -9t9 -23zM1024 800v-576q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v576 +q0 14 9 23t23 9h64q14 0 23 -9t9 -23zM1152 76v948h-896v-948q0 -22 7 -40.5t14.5 -27t10.5 -8.5h832q3 0 10.5 8.5t14.5 27t7 40.5zM480 1152h448l-48 117q-7 9 -17 11h-317q-10 -2 -17 -11zM1408 1120v-64q0 -14 -9 -23t-23 -9h-96v-948q0 -83 -47 -143.5t-113 -60.5h-832 +q-66 0 -113 58.5t-47 141.5v952h-96q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h309l70 167q15 37 54 63t79 26h320q40 0 79 -26t54 -63l70 -167h309q14 0 23 -9t9 -23z" /> + <glyph glyph-name="home" unicode="" horiz-adv-x="1664" +d="M1408 544v-480q0 -26 -19 -45t-45 -19h-384v384h-256v-384h-384q-26 0 -45 19t-19 45v480q0 1 0.5 3t0.5 3l575 474l575 -474q1 -2 1 -6zM1631 613l-62 -74q-8 -9 -21 -11h-3q-13 0 -21 7l-692 577l-692 -577q-12 -8 -24 -7q-13 2 -21 11l-62 74q-8 10 -7 23.5t11 21.5 +l719 599q32 26 76 26t76 -26l244 -204v195q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-408l219 -182q10 -8 11 -21.5t-7 -23.5z" /> + <glyph glyph-name="file_alt" unicode="" +d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z +" /> + <glyph glyph-name="time" unicode="" +d="M896 992v-448q0 -14 -9 -23t-23 -9h-320q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h224v352q0 14 9 23t23 9h64q14 0 23 -9t9 -23zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640 +q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="road" unicode="" horiz-adv-x="1920" +d="M1111 540v4l-24 320q-1 13 -11 22.5t-23 9.5h-186q-13 0 -23 -9.5t-11 -22.5l-24 -320v-4q-1 -12 8 -20t21 -8h244q12 0 21 8t8 20zM1870 73q0 -73 -46 -73h-704q13 0 22 9.5t8 22.5l-20 256q-1 13 -11 22.5t-23 9.5h-272q-13 0 -23 -9.5t-11 -22.5l-20 -256 +q-1 -13 8 -22.5t22 -9.5h-704q-46 0 -46 73q0 54 26 116l417 1044q8 19 26 33t38 14h339q-13 0 -23 -9.5t-11 -22.5l-15 -192q-1 -14 8 -23t22 -9h166q13 0 22 9t8 23l-15 192q-1 13 -11 22.5t-23 9.5h339q20 0 38 -14t26 -33l417 -1044q26 -62 26 -116z" /> + <glyph glyph-name="download_alt" unicode="" horiz-adv-x="1664" +d="M1280 192q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1536 192q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1664 416v-320q0 -40 -28 -68t-68 -28h-1472q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h465l135 -136 +q58 -56 136 -56t136 56l136 136h464q40 0 68 -28t28 -68zM1339 985q17 -41 -14 -70l-448 -448q-18 -19 -45 -19t-45 19l-448 448q-31 29 -14 70q17 39 59 39h256v448q0 26 19 45t45 19h256q26 0 45 -19t19 -45v-448h256q42 0 59 -39z" /> + <glyph glyph-name="download" unicode="" +d="M1120 608q0 -12 -10 -24l-319 -319q-11 -9 -23 -9t-23 9l-320 320q-15 16 -7 35q8 20 30 20h192v352q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-352h192q14 0 23 -9t9 -23zM768 1184q-148 0 -273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273 +t-73 273t-198 198t-273 73zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="upload" unicode="" +d="M1118 660q-8 -20 -30 -20h-192v-352q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v352h-192q-14 0 -23 9t-9 23q0 12 10 24l319 319q11 9 23 9t23 -9l320 -320q15 -16 7 -35zM768 1184q-148 0 -273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198 +t73 273t-73 273t-198 198t-273 73zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="inbox" unicode="" +d="M1023 576h316q-1 3 -2.5 8.5t-2.5 7.5l-212 496h-708l-212 -496q-1 -3 -2.5 -8.5t-2.5 -7.5h316l95 -192h320zM1536 546v-482q0 -26 -19 -45t-45 -19h-1408q-26 0 -45 19t-19 45v482q0 62 25 123l238 552q10 25 36.5 42t52.5 17h832q26 0 52.5 -17t36.5 -42l238 -552 +q25 -61 25 -123z" /> + <glyph glyph-name="play_circle" unicode="" +d="M1184 640q0 -37 -32 -55l-544 -320q-15 -9 -32 -9q-16 0 -32 8q-32 19 -32 56v640q0 37 32 56q33 18 64 -1l544 -320q32 -18 32 -55zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640 +q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="repeat" unicode="" +d="M1536 1280v-448q0 -26 -19 -45t-45 -19h-448q-42 0 -59 40q-17 39 14 69l138 138q-148 137 -349 137q-104 0 -198.5 -40.5t-163.5 -109.5t-109.5 -163.5t-40.5 -198.5t40.5 -198.5t109.5 -163.5t163.5 -109.5t198.5 -40.5q119 0 225 52t179 147q7 10 23 12q15 0 25 -9 +l137 -138q9 -8 9.5 -20.5t-7.5 -22.5q-109 -132 -264 -204.5t-327 -72.5q-156 0 -298 61t-245 164t-164 245t-61 298t61 298t164 245t245 164t298 61q147 0 284.5 -55.5t244.5 -156.5l130 129q29 31 70 14q39 -17 39 -59z" /> + <glyph glyph-name="refresh" unicode="" +d="M1511 480q0 -5 -1 -7q-64 -268 -268 -434.5t-478 -166.5q-146 0 -282.5 55t-243.5 157l-129 -129q-19 -19 -45 -19t-45 19t-19 45v448q0 26 19 45t45 19h448q26 0 45 -19t19 -45t-19 -45l-137 -137q71 -66 161 -102t187 -36q134 0 250 65t186 179q11 17 53 117 +q8 23 30 23h192q13 0 22.5 -9.5t9.5 -22.5zM1536 1280v-448q0 -26 -19 -45t-45 -19h-448q-26 0 -45 19t-19 45t19 45l138 138q-148 137 -349 137q-134 0 -250 -65t-186 -179q-11 -17 -53 -117q-8 -23 -30 -23h-199q-13 0 -22.5 9.5t-9.5 22.5v7q65 268 270 434.5t480 166.5 +q146 0 284 -55.5t245 -156.5l130 129q19 19 45 19t45 -19t19 -45z" /> + <glyph glyph-name="list_alt" unicode="" horiz-adv-x="1792" +d="M384 352v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 608v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z +M384 864v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM1536 352v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-960q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h960q13 0 22.5 -9.5t9.5 -22.5z +M1536 608v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-960q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h960q13 0 22.5 -9.5t9.5 -22.5zM1536 864v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-960q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h960q13 0 22.5 -9.5 +t9.5 -22.5zM1664 160v832q0 13 -9.5 22.5t-22.5 9.5h-1472q-13 0 -22.5 -9.5t-9.5 -22.5v-832q0 -13 9.5 -22.5t22.5 -9.5h1472q13 0 22.5 9.5t9.5 22.5zM1792 1248v-1088q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h1472q66 0 113 -47 +t47 -113z" /> + <glyph glyph-name="lock" unicode="" horiz-adv-x="1152" +d="M320 768h512v192q0 106 -75 181t-181 75t-181 -75t-75 -181v-192zM1152 672v-576q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68v576q0 40 28 68t68 28h32v192q0 184 132 316t316 132t316 -132t132 -316v-192h32q40 0 68 -28t28 -68z" /> + <glyph glyph-name="flag" unicode="" horiz-adv-x="1792" +d="M320 1280q0 -72 -64 -110v-1266q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v1266q-64 38 -64 110q0 53 37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1792 1216v-763q0 -25 -12.5 -38.5t-39.5 -27.5q-215 -116 -369 -116q-61 0 -123.5 22t-108.5 48 +t-115.5 48t-142.5 22q-192 0 -464 -146q-17 -9 -33 -9q-26 0 -45 19t-19 45v742q0 32 31 55q21 14 79 43q236 120 421 120q107 0 200 -29t219 -88q38 -19 88 -19q54 0 117.5 21t110 47t88 47t54.5 21q26 0 45 -19t19 -45z" /> + <glyph glyph-name="headphones" unicode="" horiz-adv-x="1664" +d="M1664 650q0 -166 -60 -314l-20 -49l-185 -33q-22 -83 -90.5 -136.5t-156.5 -53.5v-32q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v576q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-32q71 0 130 -35.5t93 -95.5l68 12q29 95 29 193q0 148 -88 279t-236.5 209t-315.5 78 +t-315.5 -78t-236.5 -209t-88 -279q0 -98 29 -193l68 -12q34 60 93 95.5t130 35.5v32q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-576q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v32q-88 0 -156.5 53.5t-90.5 136.5l-185 33l-20 49q-60 148 -60 314q0 151 67 291t179 242.5 +t266 163.5t320 61t320 -61t266 -163.5t179 -242.5t67 -291z" /> + <glyph glyph-name="volume_off" unicode="" horiz-adv-x="768" +d="M768 1184v-1088q0 -26 -19 -45t-45 -19t-45 19l-333 333h-262q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h262l333 333q19 19 45 19t45 -19t19 -45z" /> + <glyph glyph-name="volume_down" unicode="" horiz-adv-x="1152" +d="M768 1184v-1088q0 -26 -19 -45t-45 -19t-45 19l-333 333h-262q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h262l333 333q19 19 45 19t45 -19t19 -45zM1152 640q0 -76 -42.5 -141.5t-112.5 -93.5q-10 -5 -25 -5q-26 0 -45 18.5t-19 45.5q0 21 12 35.5t29 25t34 23t29 36 +t12 56.5t-12 56.5t-29 36t-34 23t-29 25t-12 35.5q0 27 19 45.5t45 18.5q15 0 25 -5q70 -27 112.5 -93t42.5 -142z" /> + <glyph glyph-name="volume_up" unicode="" horiz-adv-x="1664" +d="M768 1184v-1088q0 -26 -19 -45t-45 -19t-45 19l-333 333h-262q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h262l333 333q19 19 45 19t45 -19t19 -45zM1152 640q0 -76 -42.5 -141.5t-112.5 -93.5q-10 -5 -25 -5q-26 0 -45 18.5t-19 45.5q0 21 12 35.5t29 25t34 23t29 36 +t12 56.5t-12 56.5t-29 36t-34 23t-29 25t-12 35.5q0 27 19 45.5t45 18.5q15 0 25 -5q70 -27 112.5 -93t42.5 -142zM1408 640q0 -153 -85 -282.5t-225 -188.5q-13 -5 -25 -5q-27 0 -46 19t-19 45q0 39 39 59q56 29 76 44q74 54 115.5 135.5t41.5 173.5t-41.5 173.5 +t-115.5 135.5q-20 15 -76 44q-39 20 -39 59q0 26 19 45t45 19q13 0 26 -5q140 -59 225 -188.5t85 -282.5zM1664 640q0 -230 -127 -422.5t-338 -283.5q-13 -5 -26 -5q-26 0 -45 19t-19 45q0 36 39 59q7 4 22.5 10.5t22.5 10.5q46 25 82 51q123 91 192 227t69 289t-69 289 +t-192 227q-36 26 -82 51q-7 4 -22.5 10.5t-22.5 10.5q-39 23 -39 59q0 26 19 45t45 19q13 0 26 -5q211 -91 338 -283.5t127 -422.5z" /> + <glyph glyph-name="qrcode" unicode="" horiz-adv-x="1408" +d="M384 384v-128h-128v128h128zM384 1152v-128h-128v128h128zM1152 1152v-128h-128v128h128zM128 129h384v383h-384v-383zM128 896h384v384h-384v-384zM896 896h384v384h-384v-384zM640 640v-640h-640v640h640zM1152 128v-128h-128v128h128zM1408 128v-128h-128v128h128z +M1408 640v-384h-384v128h-128v-384h-128v640h384v-128h128v128h128zM640 1408v-640h-640v640h640zM1408 1408v-640h-640v640h640z" /> + <glyph glyph-name="barcode" unicode="" horiz-adv-x="1792" +d="M63 0h-63v1408h63v-1408zM126 1h-32v1407h32v-1407zM220 1h-31v1407h31v-1407zM377 1h-31v1407h31v-1407zM534 1h-62v1407h62v-1407zM660 1h-31v1407h31v-1407zM723 1h-31v1407h31v-1407zM786 1h-31v1407h31v-1407zM943 1h-63v1407h63v-1407zM1100 1h-63v1407h63v-1407z +M1226 1h-63v1407h63v-1407zM1352 1h-63v1407h63v-1407zM1446 1h-63v1407h63v-1407zM1635 1h-94v1407h94v-1407zM1698 1h-32v1407h32v-1407zM1792 0h-63v1408h63v-1408z" /> + <glyph glyph-name="tag" unicode="" +d="M448 1088q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1515 512q0 -53 -37 -90l-491 -492q-39 -37 -91 -37q-53 0 -90 37l-715 716q-38 37 -64.5 101t-26.5 117v416q0 52 38 90t90 38h416q53 0 117 -26.5t102 -64.5 +l715 -714q37 -39 37 -91z" /> + <glyph glyph-name="tags" unicode="" horiz-adv-x="1920" +d="M448 1088q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1515 512q0 -53 -37 -90l-491 -492q-39 -37 -91 -37q-53 0 -90 37l-715 716q-38 37 -64.5 101t-26.5 117v416q0 52 38 90t90 38h416q53 0 117 -26.5t102 -64.5 +l715 -714q37 -39 37 -91zM1899 512q0 -53 -37 -90l-491 -492q-39 -37 -91 -37q-36 0 -59 14t-53 45l470 470q37 37 37 90q0 52 -37 91l-715 714q-38 38 -102 64.5t-117 26.5h224q53 0 117 -26.5t102 -64.5l715 -714q37 -39 37 -91z" /> + <glyph glyph-name="book" unicode="" horiz-adv-x="1664" +d="M1639 1058q40 -57 18 -129l-275 -906q-19 -64 -76.5 -107.5t-122.5 -43.5h-923q-77 0 -148.5 53.5t-99.5 131.5q-24 67 -2 127q0 4 3 27t4 37q1 8 -3 21.5t-3 19.5q2 11 8 21t16.5 23.5t16.5 23.5q23 38 45 91.5t30 91.5q3 10 0.5 30t-0.5 28q3 11 17 28t17 23 +q21 36 42 92t25 90q1 9 -2.5 32t0.5 28q4 13 22 30.5t22 22.5q19 26 42.5 84.5t27.5 96.5q1 8 -3 25.5t-2 26.5q2 8 9 18t18 23t17 21q8 12 16.5 30.5t15 35t16 36t19.5 32t26.5 23.5t36 11.5t47.5 -5.5l-1 -3q38 9 51 9h761q74 0 114 -56t18 -130l-274 -906 +q-36 -119 -71.5 -153.5t-128.5 -34.5h-869q-27 0 -38 -15q-11 -16 -1 -43q24 -70 144 -70h923q29 0 56 15.5t35 41.5l300 987q7 22 5 57q38 -15 59 -43zM575 1056q-4 -13 2 -22.5t20 -9.5h608q13 0 25.5 9.5t16.5 22.5l21 64q4 13 -2 22.5t-20 9.5h-608q-13 0 -25.5 -9.5 +t-16.5 -22.5zM492 800q-4 -13 2 -22.5t20 -9.5h608q13 0 25.5 9.5t16.5 22.5l21 64q4 13 -2 22.5t-20 9.5h-608q-13 0 -25.5 -9.5t-16.5 -22.5z" /> + <glyph glyph-name="bookmark" unicode="" horiz-adv-x="1280" +d="M1164 1408q23 0 44 -9q33 -13 52.5 -41t19.5 -62v-1289q0 -34 -19.5 -62t-52.5 -41q-19 -8 -44 -8q-48 0 -83 32l-441 424l-441 -424q-36 -33 -83 -33q-23 0 -44 9q-33 13 -52.5 41t-19.5 62v1289q0 34 19.5 62t52.5 41q21 9 44 9h1048z" /> + <glyph glyph-name="print" unicode="" horiz-adv-x="1664" +d="M384 0h896v256h-896v-256zM384 640h896v384h-160q-40 0 -68 28t-28 68v160h-640v-640zM1536 576q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1664 576v-416q0 -13 -9.5 -22.5t-22.5 -9.5h-224v-160q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68 +v160h-224q-13 0 -22.5 9.5t-9.5 22.5v416q0 79 56.5 135.5t135.5 56.5h64v544q0 40 28 68t68 28h672q40 0 88 -20t76 -48l152 -152q28 -28 48 -76t20 -88v-256h64q79 0 135.5 -56.5t56.5 -135.5z" /> + <glyph glyph-name="camera" unicode="" horiz-adv-x="1920" +d="M960 864q119 0 203.5 -84.5t84.5 -203.5t-84.5 -203.5t-203.5 -84.5t-203.5 84.5t-84.5 203.5t84.5 203.5t203.5 84.5zM1664 1280q106 0 181 -75t75 -181v-896q0 -106 -75 -181t-181 -75h-1408q-106 0 -181 75t-75 181v896q0 106 75 181t181 75h224l51 136 +q19 49 69.5 84.5t103.5 35.5h512q53 0 103.5 -35.5t69.5 -84.5l51 -136h224zM960 128q185 0 316.5 131.5t131.5 316.5t-131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" /> + <glyph glyph-name="font" unicode="" horiz-adv-x="1664" +d="M725 977l-170 -450q33 0 136.5 -2t160.5 -2q19 0 57 2q-87 253 -184 452zM0 -128l2 79q23 7 56 12.5t57 10.5t49.5 14.5t44.5 29t31 50.5l237 616l280 724h75h53q8 -14 11 -21l205 -480q33 -78 106 -257.5t114 -274.5q15 -34 58 -144.5t72 -168.5q20 -45 35 -57 +q19 -15 88 -29.5t84 -20.5q6 -38 6 -57q0 -5 -0.5 -13.5t-0.5 -12.5q-63 0 -190 8t-191 8q-76 0 -215 -7t-178 -8q0 43 4 78l131 28q1 0 12.5 2.5t15.5 3.5t14.5 4.5t15 6.5t11 8t9 11t2.5 14q0 16 -31 96.5t-72 177.5t-42 100l-450 2q-26 -58 -76.5 -195.5t-50.5 -162.5 +q0 -22 14 -37.5t43.5 -24.5t48.5 -13.5t57 -8.5t41 -4q1 -19 1 -58q0 -9 -2 -27q-58 0 -174.5 10t-174.5 10q-8 0 -26.5 -4t-21.5 -4q-80 -14 -188 -14z" /> + <glyph glyph-name="bold" unicode="" horiz-adv-x="1408" +d="M555 15q74 -32 140 -32q376 0 376 335q0 114 -41 180q-27 44 -61.5 74t-67.5 46.5t-80.5 25t-84 10.5t-94.5 2q-73 0 -101 -10q0 -53 -0.5 -159t-0.5 -158q0 -8 -1 -67.5t-0.5 -96.5t4.5 -83.5t12 -66.5zM541 761q42 -7 109 -7q82 0 143 13t110 44.5t74.5 89.5t25.5 142 +q0 70 -29 122.5t-79 82t-108 43.5t-124 14q-50 0 -130 -13q0 -50 4 -151t4 -152q0 -27 -0.5 -80t-0.5 -79q0 -46 1 -69zM0 -128l2 94q15 4 85 16t106 27q7 12 12.5 27t8.5 33.5t5.5 32.5t3 37.5t0.5 34v35.5v30q0 982 -22 1025q-4 8 -22 14.5t-44.5 11t-49.5 7t-48.5 4.5 +t-30.5 3l-4 83q98 2 340 11.5t373 9.5q23 0 68 -0.5t68 -0.5q70 0 136.5 -13t128.5 -42t108 -71t74 -104.5t28 -137.5q0 -52 -16.5 -95.5t-39 -72t-64.5 -57.5t-73 -45t-84 -40q154 -35 256.5 -134t102.5 -248q0 -100 -35 -179.5t-93.5 -130.5t-138 -85.5t-163.5 -48.5 +t-176 -14q-44 0 -132 3t-132 3q-106 0 -307 -11t-231 -12z" /> + <glyph glyph-name="italic" unicode="" horiz-adv-x="1024" +d="M0 -126l17 85q22 7 61.5 16.5t72 19t59.5 23.5q28 35 41 101q1 7 62 289t114 543.5t52 296.5v25q-24 13 -54.5 18.5t-69.5 8t-58 5.5l19 103q33 -2 120 -6.5t149.5 -7t120.5 -2.5q48 0 98.5 2.5t121 7t98.5 6.5q-5 -39 -19 -89q-30 -10 -101.5 -28.5t-108.5 -33.5 +q-8 -19 -14 -42.5t-9 -40t-7.5 -45.5t-6.5 -42q-27 -148 -87.5 -419.5t-77.5 -355.5q-2 -9 -13 -58t-20 -90t-16 -83.5t-6 -57.5l1 -18q17 -4 185 -31q-3 -44 -16 -99q-11 0 -32.5 -1.5t-32.5 -1.5q-29 0 -87 10t-86 10q-138 2 -206 2q-51 0 -143 -9t-121 -11z" /> + <glyph glyph-name="text_height" unicode="" horiz-adv-x="1792" +d="M1744 128q33 0 42 -18.5t-11 -44.5l-126 -162q-20 -26 -49 -26t-49 26l-126 162q-20 26 -11 44.5t42 18.5h80v1024h-80q-33 0 -42 18.5t11 44.5l126 162q20 26 49 26t49 -26l126 -162q20 -26 11 -44.5t-42 -18.5h-80v-1024h80zM81 1407l54 -27q12 -5 211 -5q44 0 132 2 +t132 2q36 0 107.5 -0.5t107.5 -0.5h293q6 0 21 -0.5t20.5 0t16 3t17.5 9t15 17.5l42 1q4 0 14 -0.5t14 -0.5q2 -112 2 -336q0 -80 -5 -109q-39 -14 -68 -18q-25 44 -54 128q-3 9 -11 48t-14.5 73.5t-7.5 35.5q-6 8 -12 12.5t-15.5 6t-13 2.5t-18 0.5t-16.5 -0.5 +q-17 0 -66.5 0.5t-74.5 0.5t-64 -2t-71 -6q-9 -81 -8 -136q0 -94 2 -388t2 -455q0 -16 -2.5 -71.5t0 -91.5t12.5 -69q40 -21 124 -42.5t120 -37.5q5 -40 5 -50q0 -14 -3 -29l-34 -1q-76 -2 -218 8t-207 10q-50 0 -151 -9t-152 -9q-3 51 -3 52v9q17 27 61.5 43t98.5 29t78 27 +q19 42 19 383q0 101 -3 303t-3 303v117q0 2 0.5 15.5t0.5 25t-1 25.5t-3 24t-5 14q-11 12 -162 12q-33 0 -93 -12t-80 -26q-19 -13 -34 -72.5t-31.5 -111t-42.5 -53.5q-42 26 -56 44v383z" /> + <glyph glyph-name="text_width" unicode="" +d="M81 1407l54 -27q12 -5 211 -5q44 0 132 2t132 2q70 0 246.5 1t304.5 0.5t247 -4.5q33 -1 56 31l42 1q4 0 14 -0.5t14 -0.5q2 -112 2 -336q0 -80 -5 -109q-39 -14 -68 -18q-25 44 -54 128q-3 9 -11 47.5t-15 73.5t-7 36q-10 13 -27 19q-5 2 -66 2q-30 0 -93 1t-103 1 +t-94 -2t-96 -7q-9 -81 -8 -136l1 -152v52q0 -55 1 -154t1.5 -180t0.5 -153q0 -16 -2.5 -71.5t0 -91.5t12.5 -69q40 -21 124 -42.5t120 -37.5q5 -40 5 -50q0 -14 -3 -29l-34 -1q-76 -2 -218 8t-207 10q-50 0 -151 -9t-152 -9q-3 51 -3 52v9q17 27 61.5 43t98.5 29t78 27 +q7 16 11.5 74t6 145.5t1.5 155t-0.5 153.5t-0.5 89q0 7 -2.5 21.5t-2.5 22.5q0 7 0.5 44t1 73t0 76.5t-3 67.5t-6.5 32q-11 12 -162 12q-41 0 -163 -13.5t-138 -24.5q-19 -12 -34 -71.5t-31.5 -111.5t-42.5 -54q-42 26 -56 44v383zM1310 125q12 0 42 -19.5t57.5 -41.5 +t59.5 -49t36 -30q26 -21 26 -49t-26 -49q-4 -3 -36 -30t-59.5 -49t-57.5 -41.5t-42 -19.5q-13 0 -20.5 10.5t-10 28.5t-2.5 33.5t1.5 33t1.5 19.5h-1024q0 -2 1.5 -19.5t1.5 -33t-2.5 -33.5t-10 -28.5t-20.5 -10.5q-12 0 -42 19.5t-57.5 41.5t-59.5 49t-36 30q-26 21 -26 49 +t26 49q4 3 36 30t59.5 49t57.5 41.5t42 19.5q13 0 20.5 -10.5t10 -28.5t2.5 -33.5t-1.5 -33t-1.5 -19.5h1024q0 2 -1.5 19.5t-1.5 33t2.5 33.5t10 28.5t20.5 10.5z" /> + <glyph glyph-name="align_left" unicode="" horiz-adv-x="1792" +d="M1792 192v-128q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1408 576v-128q0 -26 -19 -45t-45 -19h-1280q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1280q26 0 45 -19t19 -45zM1664 960v-128q0 -26 -19 -45 +t-45 -19h-1536q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1536q26 0 45 -19t19 -45zM1280 1344v-128q0 -26 -19 -45t-45 -19h-1152q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1152q26 0 45 -19t19 -45z" /> + <glyph glyph-name="align_center" unicode="" horiz-adv-x="1792" +d="M1792 192v-128q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1408 576v-128q0 -26 -19 -45t-45 -19h-896q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h896q26 0 45 -19t19 -45zM1664 960v-128q0 -26 -19 -45t-45 -19 +h-1408q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1408q26 0 45 -19t19 -45zM1280 1344v-128q0 -26 -19 -45t-45 -19h-640q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h640q26 0 45 -19t19 -45z" /> + <glyph glyph-name="align_right" unicode="" horiz-adv-x="1792" +d="M1792 192v-128q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1792 576v-128q0 -26 -19 -45t-45 -19h-1280q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1280q26 0 45 -19t19 -45zM1792 960v-128q0 -26 -19 -45 +t-45 -19h-1536q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1536q26 0 45 -19t19 -45zM1792 1344v-128q0 -26 -19 -45t-45 -19h-1152q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1152q26 0 45 -19t19 -45z" /> + <glyph glyph-name="align_justify" unicode="" horiz-adv-x="1792" +d="M1792 192v-128q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1792 576v-128q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1792 960v-128q0 -26 -19 -45 +t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1792 1344v-128q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45z" /> + <glyph glyph-name="list" unicode="" horiz-adv-x="1792" +d="M256 224v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-192q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h192q13 0 22.5 -9.5t9.5 -22.5zM256 608v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-192q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h192q13 0 22.5 -9.5 +t9.5 -22.5zM256 992v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-192q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h192q13 0 22.5 -9.5t9.5 -22.5zM1792 224v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1344q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1344 +q13 0 22.5 -9.5t9.5 -22.5zM256 1376v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-192q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h192q13 0 22.5 -9.5t9.5 -22.5zM1792 608v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1344q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5 +t22.5 9.5h1344q13 0 22.5 -9.5t9.5 -22.5zM1792 992v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1344q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1344q13 0 22.5 -9.5t9.5 -22.5zM1792 1376v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1344q-13 0 -22.5 9.5t-9.5 22.5v192 +q0 13 9.5 22.5t22.5 9.5h1344q13 0 22.5 -9.5t9.5 -22.5z" /> + <glyph glyph-name="indent_left" unicode="" horiz-adv-x="1792" +d="M384 992v-576q0 -13 -9.5 -22.5t-22.5 -9.5q-14 0 -23 9l-288 288q-9 9 -9 23t9 23l288 288q9 9 23 9q13 0 22.5 -9.5t9.5 -22.5zM1792 224v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1728q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1728q13 0 22.5 -9.5 +t9.5 -22.5zM1792 608v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1088q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1088q13 0 22.5 -9.5t9.5 -22.5zM1792 992v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1088q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1088 +q13 0 22.5 -9.5t9.5 -22.5zM1792 1376v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1728q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1728q13 0 22.5 -9.5t9.5 -22.5z" /> + <glyph glyph-name="indent_right" unicode="" horiz-adv-x="1792" +d="M352 704q0 -14 -9 -23l-288 -288q-9 -9 -23 -9q-13 0 -22.5 9.5t-9.5 22.5v576q0 13 9.5 22.5t22.5 9.5q14 0 23 -9l288 -288q9 -9 9 -23zM1792 224v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1728q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1728q13 0 22.5 -9.5 +t9.5 -22.5zM1792 608v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1088q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1088q13 0 22.5 -9.5t9.5 -22.5zM1792 992v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1088q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1088 +q13 0 22.5 -9.5t9.5 -22.5zM1792 1376v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1728q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1728q13 0 22.5 -9.5t9.5 -22.5z" /> + <glyph glyph-name="facetime_video" unicode="" horiz-adv-x="1792" +d="M1792 1184v-1088q0 -42 -39 -59q-13 -5 -25 -5q-27 0 -45 19l-403 403v-166q0 -119 -84.5 -203.5t-203.5 -84.5h-704q-119 0 -203.5 84.5t-84.5 203.5v704q0 119 84.5 203.5t203.5 84.5h704q119 0 203.5 -84.5t84.5 -203.5v-165l403 402q18 19 45 19q12 0 25 -5 +q39 -17 39 -59z" /> + <glyph glyph-name="picture" unicode="" horiz-adv-x="1920" +d="M640 960q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM1664 576v-448h-1408v192l320 320l160 -160l512 512zM1760 1280h-1600q-13 0 -22.5 -9.5t-9.5 -22.5v-1216q0 -13 9.5 -22.5t22.5 -9.5h1600q13 0 22.5 9.5t9.5 22.5v1216 +q0 13 -9.5 22.5t-22.5 9.5zM1920 1248v-1216q0 -66 -47 -113t-113 -47h-1600q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1600q66 0 113 -47t47 -113z" /> + <glyph glyph-name="pencil" unicode="" +d="M363 0l91 91l-235 235l-91 -91v-107h128v-128h107zM886 928q0 22 -22 22q-10 0 -17 -7l-542 -542q-7 -7 -7 -17q0 -22 22 -22q10 0 17 7l542 542q7 7 7 17zM832 1120l416 -416l-832 -832h-416v416zM1515 1024q0 -53 -37 -90l-166 -166l-416 416l166 165q36 38 90 38 +q53 0 91 -38l235 -234q37 -39 37 -91z" /> + <glyph glyph-name="map_marker" unicode="" horiz-adv-x="1024" +d="M768 896q0 106 -75 181t-181 75t-181 -75t-75 -181t75 -181t181 -75t181 75t75 181zM1024 896q0 -109 -33 -179l-364 -774q-16 -33 -47.5 -52t-67.5 -19t-67.5 19t-46.5 52l-365 774q-33 70 -33 179q0 212 150 362t362 150t362 -150t150 -362z" /> + <glyph glyph-name="adjust" unicode="" +d="M768 96v1088q-148 0 -273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="tint" unicode="" horiz-adv-x="1024" +d="M512 384q0 36 -20 69q-1 1 -15.5 22.5t-25.5 38t-25 44t-21 50.5q-4 16 -21 16t-21 -16q-7 -23 -21 -50.5t-25 -44t-25.5 -38t-15.5 -22.5q-20 -33 -20 -69q0 -53 37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1024 512q0 -212 -150 -362t-362 -150t-362 150t-150 362 +q0 145 81 275q6 9 62.5 90.5t101 151t99.5 178t83 201.5q9 30 34 47t51 17t51.5 -17t33.5 -47q28 -93 83 -201.5t99.5 -178t101 -151t62.5 -90.5q81 -127 81 -275z" /> + <glyph glyph-name="edit" unicode="" horiz-adv-x="1792" +d="M888 352l116 116l-152 152l-116 -116v-56h96v-96h56zM1328 1072q-16 16 -33 -1l-350 -350q-17 -17 -1 -33t33 1l350 350q17 17 1 33zM1408 478v-190q0 -119 -84.5 -203.5t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h832 +q63 0 117 -25q15 -7 18 -23q3 -17 -9 -29l-49 -49q-14 -14 -32 -8q-23 6 -45 6h-832q-66 0 -113 -47t-47 -113v-832q0 -66 47 -113t113 -47h832q66 0 113 47t47 113v126q0 13 9 22l64 64q15 15 35 7t20 -29zM1312 1216l288 -288l-672 -672h-288v288zM1756 1084l-92 -92 +l-288 288l92 92q28 28 68 28t68 -28l152 -152q28 -28 28 -68t-28 -68z" /> + <glyph glyph-name="share" unicode="" horiz-adv-x="1664" +d="M1408 547v-259q0 -119 -84.5 -203.5t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h255v0q13 0 22.5 -9.5t9.5 -22.5q0 -27 -26 -32q-77 -26 -133 -60q-10 -4 -16 -4h-112q-66 0 -113 -47t-47 -113v-832q0 -66 47 -113t113 -47h832 +q66 0 113 47t47 113v214q0 19 18 29q28 13 54 37q16 16 35 8q21 -9 21 -29zM1645 1043l-384 -384q-18 -19 -45 -19q-12 0 -25 5q-39 17 -39 59v192h-160q-323 0 -438 -131q-119 -137 -74 -473q3 -23 -20 -34q-8 -2 -12 -2q-16 0 -26 13q-10 14 -21 31t-39.5 68.5t-49.5 99.5 +t-38.5 114t-17.5 122q0 49 3.5 91t14 90t28 88t47 81.5t68.5 74t94.5 61.5t124.5 48.5t159.5 30.5t196.5 11h160v192q0 42 39 59q13 5 25 5q26 0 45 -19l384 -384q19 -19 19 -45t-19 -45z" /> + <glyph glyph-name="check" unicode="" horiz-adv-x="1664" +d="M1408 606v-318q0 -119 -84.5 -203.5t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h832q63 0 117 -25q15 -7 18 -23q3 -17 -9 -29l-49 -49q-10 -10 -23 -10q-3 0 -9 2q-23 6 -45 6h-832q-66 0 -113 -47t-47 -113v-832 +q0 -66 47 -113t113 -47h832q66 0 113 47t47 113v254q0 13 9 22l64 64q10 10 23 10q6 0 12 -3q20 -8 20 -29zM1639 1095l-814 -814q-24 -24 -57 -24t-57 24l-430 430q-24 24 -24 57t24 57l110 110q24 24 57 24t57 -24l263 -263l647 647q24 24 57 24t57 -24l110 -110 +q24 -24 24 -57t-24 -57z" /> + <glyph glyph-name="move" unicode="" horiz-adv-x="1792" +d="M1792 640q0 -26 -19 -45l-256 -256q-19 -19 -45 -19t-45 19t-19 45v128h-384v-384h128q26 0 45 -19t19 -45t-19 -45l-256 -256q-19 -19 -45 -19t-45 19l-256 256q-19 19 -19 45t19 45t45 19h128v384h-384v-128q0 -26 -19 -45t-45 -19t-45 19l-256 256q-19 19 -19 45 +t19 45l256 256q19 19 45 19t45 -19t19 -45v-128h384v384h-128q-26 0 -45 19t-19 45t19 45l256 256q19 19 45 19t45 -19l256 -256q19 -19 19 -45t-19 -45t-45 -19h-128v-384h384v128q0 26 19 45t45 19t45 -19l256 -256q19 -19 19 -45z" /> + <glyph glyph-name="step_backward" unicode="" horiz-adv-x="1024" +d="M979 1395q19 19 32 13t13 -32v-1472q0 -26 -13 -32t-32 13l-710 710q-9 9 -13 19v-678q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v1408q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-678q4 10 13 19z" /> + <glyph glyph-name="fast_backward" unicode="" horiz-adv-x="1792" +d="M1747 1395q19 19 32 13t13 -32v-1472q0 -26 -13 -32t-32 13l-710 710q-9 9 -13 19v-710q0 -26 -13 -32t-32 13l-710 710q-9 9 -13 19v-678q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v1408q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-678q4 10 13 19l710 710 +q19 19 32 13t13 -32v-710q4 10 13 19z" /> + <glyph glyph-name="backward" unicode="" horiz-adv-x="1664" +d="M1619 1395q19 19 32 13t13 -32v-1472q0 -26 -13 -32t-32 13l-710 710q-9 9 -13 19v-710q0 -26 -13 -32t-32 13l-710 710q-19 19 -19 45t19 45l710 710q19 19 32 13t13 -32v-710q4 10 13 19z" /> + <glyph glyph-name="play" unicode="" horiz-adv-x="1408" +d="M1384 609l-1328 -738q-23 -13 -39.5 -3t-16.5 36v1472q0 26 16.5 36t39.5 -3l1328 -738q23 -13 23 -31t-23 -31z" /> + <glyph glyph-name="pause" unicode="" +d="M1536 1344v-1408q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19t-19 45v1408q0 26 19 45t45 19h512q26 0 45 -19t19 -45zM640 1344v-1408q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19t-19 45v1408q0 26 19 45t45 19h512q26 0 45 -19t19 -45z" /> + <glyph glyph-name="stop" unicode="" +d="M1536 1344v-1408q0 -26 -19 -45t-45 -19h-1408q-26 0 -45 19t-19 45v1408q0 26 19 45t45 19h1408q26 0 45 -19t19 -45z" /> + <glyph glyph-name="forward" unicode="" horiz-adv-x="1664" +d="M45 -115q-19 -19 -32 -13t-13 32v1472q0 26 13 32t32 -13l710 -710q9 -9 13 -19v710q0 26 13 32t32 -13l710 -710q19 -19 19 -45t-19 -45l-710 -710q-19 -19 -32 -13t-13 32v710q-4 -10 -13 -19z" /> + <glyph glyph-name="fast_forward" unicode="" horiz-adv-x="1792" +d="M45 -115q-19 -19 -32 -13t-13 32v1472q0 26 13 32t32 -13l710 -710q9 -9 13 -19v710q0 26 13 32t32 -13l710 -710q9 -9 13 -19v678q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-1408q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v678q-4 -10 -13 -19l-710 -710 +q-19 -19 -32 -13t-13 32v710q-4 -10 -13 -19z" /> + <glyph glyph-name="step_forward" unicode="" horiz-adv-x="1024" +d="M45 -115q-19 -19 -32 -13t-13 32v1472q0 26 13 32t32 -13l710 -710q9 -9 13 -19v678q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-1408q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v678q-4 -10 -13 -19z" /> + <glyph glyph-name="eject" unicode="" horiz-adv-x="1538" +d="M14 557l710 710q19 19 45 19t45 -19l710 -710q19 -19 13 -32t-32 -13h-1472q-26 0 -32 13t13 32zM1473 0h-1408q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h1408q26 0 45 -19t19 -45v-256q0 -26 -19 -45t-45 -19z" /> + <glyph glyph-name="chevron_left" unicode="" horiz-adv-x="1280" +d="M1171 1235l-531 -531l531 -531q19 -19 19 -45t-19 -45l-166 -166q-19 -19 -45 -19t-45 19l-742 742q-19 19 -19 45t19 45l742 742q19 19 45 19t45 -19l166 -166q19 -19 19 -45t-19 -45z" /> + <glyph glyph-name="chevron_right" unicode="" horiz-adv-x="1280" +d="M1107 659l-742 -742q-19 -19 -45 -19t-45 19l-166 166q-19 19 -19 45t19 45l531 531l-531 531q-19 19 -19 45t19 45l166 166q19 19 45 19t45 -19l742 -742q19 -19 19 -45t-19 -45z" /> + <glyph glyph-name="plus_sign" unicode="" +d="M1216 576v128q0 26 -19 45t-45 19h-256v256q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-256h-256q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h256v-256q0 -26 19 -45t45 -19h128q26 0 45 19t19 45v256h256q26 0 45 19t19 45zM1536 640q0 -209 -103 -385.5 +t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="minus_sign" unicode="" +d="M1216 576v128q0 26 -19 45t-45 19h-768q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h768q26 0 45 19t19 45zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5 +t103 -385.5z" /> + <glyph glyph-name="remove_sign" unicode="" +d="M1149 414q0 26 -19 45l-181 181l181 181q19 19 19 45q0 27 -19 46l-90 90q-19 19 -46 19q-26 0 -45 -19l-181 -181l-181 181q-19 19 -45 19q-27 0 -46 -19l-90 -90q-19 -19 -19 -46q0 -26 19 -45l181 -181l-181 -181q-19 -19 -19 -45q0 -27 19 -46l90 -90q19 -19 46 -19 +q26 0 45 19l181 181l181 -181q19 -19 45 -19q27 0 46 19l90 90q19 19 19 46zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="ok_sign" unicode="" +d="M1284 802q0 28 -18 46l-91 90q-19 19 -45 19t-45 -19l-408 -407l-226 226q-19 19 -45 19t-45 -19l-91 -90q-18 -18 -18 -46q0 -27 18 -45l362 -362q19 -19 45 -19q27 0 46 19l543 543q18 18 18 45zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103 +t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="question_sign" unicode="" +d="M896 160v192q0 14 -9 23t-23 9h-192q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h192q14 0 23 9t9 23zM1152 832q0 88 -55.5 163t-138.5 116t-170 41q-243 0 -371 -213q-15 -24 8 -42l132 -100q7 -6 19 -6q16 0 25 12q53 68 86 92q34 24 86 24q48 0 85.5 -26t37.5 -59 +q0 -38 -20 -61t-68 -45q-63 -28 -115.5 -86.5t-52.5 -125.5v-36q0 -14 9 -23t23 -9h192q14 0 23 9t9 23q0 19 21.5 49.5t54.5 49.5q32 18 49 28.5t46 35t44.5 48t28 60.5t12.5 81zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5 +t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="info_sign" unicode="" +d="M1024 160v160q0 14 -9 23t-23 9h-96v512q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-160q0 -14 9 -23t23 -9h96v-320h-96q-14 0 -23 -9t-9 -23v-160q0 -14 9 -23t23 -9h448q14 0 23 9t9 23zM896 1056v160q0 14 -9 23t-23 9h-192q-14 0 -23 -9t-9 -23v-160q0 -14 9 -23 +t23 -9h192q14 0 23 9t9 23zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="screenshot" unicode="" +d="M1197 512h-109q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h109q-32 108 -112.5 188.5t-188.5 112.5v-109q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v109q-108 -32 -188.5 -112.5t-112.5 -188.5h109q26 0 45 -19t19 -45v-128q0 -26 -19 -45t-45 -19h-109 +q32 -108 112.5 -188.5t188.5 -112.5v109q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-109q108 32 188.5 112.5t112.5 188.5zM1536 704v-128q0 -26 -19 -45t-45 -19h-143q-37 -161 -154.5 -278.5t-278.5 -154.5v-143q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v143 +q-161 37 -278.5 154.5t-154.5 278.5h-143q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h143q37 161 154.5 278.5t278.5 154.5v143q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-143q161 -37 278.5 -154.5t154.5 -278.5h143q26 0 45 -19t19 -45z" /> + <glyph glyph-name="remove_circle" unicode="" +d="M1097 457l-146 -146q-10 -10 -23 -10t-23 10l-137 137l-137 -137q-10 -10 -23 -10t-23 10l-146 146q-10 10 -10 23t10 23l137 137l-137 137q-10 10 -10 23t10 23l146 146q10 10 23 10t23 -10l137 -137l137 137q10 10 23 10t23 -10l146 -146q10 -10 10 -23t-10 -23 +l-137 -137l137 -137q10 -10 10 -23t-10 -23zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5 +t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="ok_circle" unicode="" +d="M1171 723l-422 -422q-19 -19 -45 -19t-45 19l-294 294q-19 19 -19 45t19 45l102 102q19 19 45 19t45 -19l147 -147l275 275q19 19 45 19t45 -19l102 -102q19 -19 19 -45t-19 -45zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273t73 -273t198 -198 +t273 -73t273 73t198 198t73 273zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="ban_circle" unicode="" +d="M1312 643q0 161 -87 295l-754 -753q137 -89 297 -89q111 0 211.5 43.5t173.5 116.5t116 174.5t43 212.5zM313 344l755 754q-135 91 -300 91q-148 0 -273 -73t-198 -199t-73 -274q0 -162 89 -299zM1536 643q0 -157 -61 -300t-163.5 -246t-245 -164t-298.5 -61t-298.5 61 +t-245 164t-163.5 246t-61 300t61 299.5t163.5 245.5t245 164t298.5 61t298.5 -61t245 -164t163.5 -245.5t61 -299.5z" /> + <glyph glyph-name="arrow_left" unicode="" +d="M1536 640v-128q0 -53 -32.5 -90.5t-84.5 -37.5h-704l293 -294q38 -36 38 -90t-38 -90l-75 -76q-37 -37 -90 -37q-52 0 -91 37l-651 652q-37 37 -37 90q0 52 37 91l651 650q38 38 91 38q52 0 90 -38l75 -74q38 -38 38 -91t-38 -91l-293 -293h704q52 0 84.5 -37.5 +t32.5 -90.5z" /> + <glyph glyph-name="arrow_right" unicode="" +d="M1472 576q0 -54 -37 -91l-651 -651q-39 -37 -91 -37q-51 0 -90 37l-75 75q-38 38 -38 91t38 91l293 293h-704q-52 0 -84.5 37.5t-32.5 90.5v128q0 53 32.5 90.5t84.5 37.5h704l-293 294q-38 36 -38 90t38 90l75 75q38 38 90 38q53 0 91 -38l651 -651q37 -35 37 -90z" /> + <glyph glyph-name="arrow_up" unicode="" horiz-adv-x="1664" +d="M1611 565q0 -51 -37 -90l-75 -75q-38 -38 -91 -38q-54 0 -90 38l-294 293v-704q0 -52 -37.5 -84.5t-90.5 -32.5h-128q-53 0 -90.5 32.5t-37.5 84.5v704l-294 -293q-36 -38 -90 -38t-90 38l-75 75q-38 38 -38 90q0 53 38 91l651 651q35 37 90 37q54 0 91 -37l651 -651 +q37 -39 37 -91z" /> + <glyph glyph-name="arrow_down" unicode="" horiz-adv-x="1664" +d="M1611 704q0 -53 -37 -90l-651 -652q-39 -37 -91 -37q-53 0 -90 37l-651 652q-38 36 -38 90q0 53 38 91l74 75q39 37 91 37q53 0 90 -37l294 -294v704q0 52 38 90t90 38h128q52 0 90 -38t38 -90v-704l294 294q37 37 90 37q52 0 91 -37l75 -75q37 -39 37 -91z" /> + <glyph glyph-name="share_alt" unicode="" horiz-adv-x="1792" +d="M1792 896q0 -26 -19 -45l-512 -512q-19 -19 -45 -19t-45 19t-19 45v256h-224q-98 0 -175.5 -6t-154 -21.5t-133 -42.5t-105.5 -69.5t-80 -101t-48.5 -138.5t-17.5 -181q0 -55 5 -123q0 -6 2.5 -23.5t2.5 -26.5q0 -15 -8.5 -25t-23.5 -10q-16 0 -28 17q-7 9 -13 22 +t-13.5 30t-10.5 24q-127 285 -127 451q0 199 53 333q162 403 875 403h224v256q0 26 19 45t45 19t45 -19l512 -512q19 -19 19 -45z" /> + <glyph glyph-name="resize_full" unicode="" +d="M755 480q0 -13 -10 -23l-332 -332l144 -144q19 -19 19 -45t-19 -45t-45 -19h-448q-26 0 -45 19t-19 45v448q0 26 19 45t45 19t45 -19l144 -144l332 332q10 10 23 10t23 -10l114 -114q10 -10 10 -23zM1536 1344v-448q0 -26 -19 -45t-45 -19t-45 19l-144 144l-332 -332 +q-10 -10 -23 -10t-23 10l-114 114q-10 10 -10 23t10 23l332 332l-144 144q-19 19 -19 45t19 45t45 19h448q26 0 45 -19t19 -45z" /> + <glyph glyph-name="resize_small" unicode="" +d="M768 576v-448q0 -26 -19 -45t-45 -19t-45 19l-144 144l-332 -332q-10 -10 -23 -10t-23 10l-114 114q-10 10 -10 23t10 23l332 332l-144 144q-19 19 -19 45t19 45t45 19h448q26 0 45 -19t19 -45zM1523 1248q0 -13 -10 -23l-332 -332l144 -144q19 -19 19 -45t-19 -45 +t-45 -19h-448q-26 0 -45 19t-19 45v448q0 26 19 45t45 19t45 -19l144 -144l332 332q10 10 23 10t23 -10l114 -114q10 -10 10 -23z" /> + <glyph glyph-name="plus" unicode="" horiz-adv-x="1408" +d="M1408 800v-192q0 -40 -28 -68t-68 -28h-416v-416q0 -40 -28 -68t-68 -28h-192q-40 0 -68 28t-28 68v416h-416q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h416v416q0 40 28 68t68 28h192q40 0 68 -28t28 -68v-416h416q40 0 68 -28t28 -68z" /> + <glyph glyph-name="minus" unicode="" horiz-adv-x="1408" +d="M1408 800v-192q0 -40 -28 -68t-68 -28h-1216q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h1216q40 0 68 -28t28 -68z" /> + <glyph glyph-name="asterisk" unicode="" horiz-adv-x="1664" +d="M1482 486q46 -26 59.5 -77.5t-12.5 -97.5l-64 -110q-26 -46 -77.5 -59.5t-97.5 12.5l-266 153v-307q0 -52 -38 -90t-90 -38h-128q-52 0 -90 38t-38 90v307l-266 -153q-46 -26 -97.5 -12.5t-77.5 59.5l-64 110q-26 46 -12.5 97.5t59.5 77.5l266 154l-266 154 +q-46 26 -59.5 77.5t12.5 97.5l64 110q26 46 77.5 59.5t97.5 -12.5l266 -153v307q0 52 38 90t90 38h128q52 0 90 -38t38 -90v-307l266 153q46 26 97.5 12.5t77.5 -59.5l64 -110q26 -46 12.5 -97.5t-59.5 -77.5l-266 -154z" /> + <glyph glyph-name="exclamation_sign" unicode="" +d="M768 1408q209 0 385.5 -103t279.5 -279.5t103 -385.5t-103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103zM896 161v190q0 14 -9 23.5t-22 9.5h-192q-13 0 -23 -10t-10 -23v-190q0 -13 10 -23t23 -10h192 +q13 0 22 9.5t9 23.5zM894 505l18 621q0 12 -10 18q-10 8 -24 8h-220q-14 0 -24 -8q-10 -6 -10 -18l17 -621q0 -10 10 -17.5t24 -7.5h185q14 0 23.5 7.5t10.5 17.5z" /> + <glyph glyph-name="gift" unicode="" +d="M928 180v56v468v192h-320v-192v-468v-56q0 -25 18 -38.5t46 -13.5h192q28 0 46 13.5t18 38.5zM472 1024h195l-126 161q-26 31 -69 31q-40 0 -68 -28t-28 -68t28 -68t68 -28zM1160 1120q0 40 -28 68t-68 28q-43 0 -69 -31l-125 -161h194q40 0 68 28t28 68zM1536 864v-320 +q0 -14 -9 -23t-23 -9h-96v-416q0 -40 -28 -68t-68 -28h-1088q-40 0 -68 28t-28 68v416h-96q-14 0 -23 9t-9 23v320q0 14 9 23t23 9h440q-93 0 -158.5 65.5t-65.5 158.5t65.5 158.5t158.5 65.5q107 0 168 -77l128 -165l128 165q61 77 168 77q93 0 158.5 -65.5t65.5 -158.5 +t-65.5 -158.5t-158.5 -65.5h440q14 0 23 -9t9 -23z" /> + <glyph glyph-name="leaf" unicode="" horiz-adv-x="1792" +d="M1280 832q0 26 -19 45t-45 19q-172 0 -318 -49.5t-259.5 -134t-235.5 -219.5q-19 -21 -19 -45q0 -26 19 -45t45 -19q24 0 45 19q27 24 74 71t67 66q137 124 268.5 176t313.5 52q26 0 45 19t19 45zM1792 1030q0 -95 -20 -193q-46 -224 -184.5 -383t-357.5 -268 +q-214 -108 -438 -108q-148 0 -286 47q-15 5 -88 42t-96 37q-16 0 -39.5 -32t-45 -70t-52.5 -70t-60 -32q-43 0 -63.5 17.5t-45.5 59.5q-2 4 -6 11t-5.5 10t-3 9.5t-1.5 13.5q0 35 31 73.5t68 65.5t68 56t31 48q0 4 -14 38t-16 44q-9 51 -9 104q0 115 43.5 220t119 184.5 +t170.5 139t204 95.5q55 18 145 25.5t179.5 9t178.5 6t163.5 24t113.5 56.5l29.5 29.5t29.5 28t27 20t36.5 16t43.5 4.5q39 0 70.5 -46t47.5 -112t24 -124t8 -96z" /> + <glyph glyph-name="fire" unicode="" horiz-adv-x="1408" +d="M1408 -160v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-1344q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h1344q13 0 22.5 -9.5t9.5 -22.5zM1152 896q0 -78 -24.5 -144t-64 -112.5t-87.5 -88t-96 -77.5t-87.5 -72t-64 -81.5t-24.5 -96.5q0 -96 67 -224l-4 1l1 -1 +q-90 41 -160 83t-138.5 100t-113.5 122.5t-72.5 150.5t-27.5 184q0 78 24.5 144t64 112.5t87.5 88t96 77.5t87.5 72t64 81.5t24.5 96.5q0 94 -66 224l3 -1l-1 1q90 -41 160 -83t138.5 -100t113.5 -122.5t72.5 -150.5t27.5 -184z" /> + <glyph glyph-name="eye_open" unicode="" horiz-adv-x="1792" +d="M1664 576q-152 236 -381 353q61 -104 61 -225q0 -185 -131.5 -316.5t-316.5 -131.5t-316.5 131.5t-131.5 316.5q0 121 61 225q-229 -117 -381 -353q133 -205 333.5 -326.5t434.5 -121.5t434.5 121.5t333.5 326.5zM944 960q0 20 -14 34t-34 14q-125 0 -214.5 -89.5 +t-89.5 -214.5q0 -20 14 -34t34 -14t34 14t14 34q0 86 61 147t147 61q20 0 34 14t14 34zM1792 576q0 -34 -20 -69q-140 -230 -376.5 -368.5t-499.5 -138.5t-499.5 139t-376.5 368q-20 35 -20 69t20 69q140 229 376.5 368t499.5 139t499.5 -139t376.5 -368q20 -35 20 -69z" /> + <glyph glyph-name="eye_close" unicode="" horiz-adv-x="1792" +d="M555 201l78 141q-87 63 -136 159t-49 203q0 121 61 225q-229 -117 -381 -353q167 -258 427 -375zM944 960q0 20 -14 34t-34 14q-125 0 -214.5 -89.5t-89.5 -214.5q0 -20 14 -34t34 -14t34 14t14 34q0 86 61 147t147 61q20 0 34 14t14 34zM1307 1151q0 -7 -1 -9 +q-106 -189 -316 -567t-315 -566l-49 -89q-10 -16 -28 -16q-12 0 -134 70q-16 10 -16 28q0 12 44 87q-143 65 -263.5 173t-208.5 245q-20 31 -20 69t20 69q153 235 380 371t496 136q89 0 180 -17l54 97q10 16 28 16q5 0 18 -6t31 -15.5t33 -18.5t31.5 -18.5t19.5 -11.5 +q16 -10 16 -27zM1344 704q0 -139 -79 -253.5t-209 -164.5l280 502q8 -45 8 -84zM1792 576q0 -35 -20 -69q-39 -64 -109 -145q-150 -172 -347.5 -267t-419.5 -95l74 132q212 18 392.5 137t301.5 307q-115 179 -282 294l63 112q95 -64 182.5 -153t144.5 -184q20 -34 20 -69z +" /> + <glyph glyph-name="warning_sign" unicode="" horiz-adv-x="1792" +d="M1024 161v190q0 14 -9.5 23.5t-22.5 9.5h-192q-13 0 -22.5 -9.5t-9.5 -23.5v-190q0 -14 9.5 -23.5t22.5 -9.5h192q13 0 22.5 9.5t9.5 23.5zM1022 535l18 459q0 12 -10 19q-13 11 -24 11h-220q-11 0 -24 -11q-10 -7 -10 -21l17 -457q0 -10 10 -16.5t24 -6.5h185 +q14 0 23.5 6.5t10.5 16.5zM1008 1469l768 -1408q35 -63 -2 -126q-17 -29 -46.5 -46t-63.5 -17h-1536q-34 0 -63.5 17t-46.5 46q-37 63 -2 126l768 1408q17 31 47 49t65 18t65 -18t47 -49z" /> + <glyph glyph-name="plane" unicode="" horiz-adv-x="1408" +d="M1376 1376q44 -52 12 -148t-108 -172l-161 -161l160 -696q5 -19 -12 -33l-128 -96q-7 -6 -19 -6q-4 0 -7 1q-15 3 -21 16l-279 508l-259 -259l53 -194q5 -17 -8 -31l-96 -96q-9 -9 -23 -9h-2q-15 2 -24 13l-189 252l-252 189q-11 7 -13 23q-1 13 9 25l96 97q9 9 23 9 +q6 0 8 -1l194 -53l259 259l-508 279q-14 8 -17 24q-2 16 9 27l128 128q14 13 30 8l665 -159l160 160q76 76 172 108t148 -12z" /> + <glyph glyph-name="calendar" unicode="" horiz-adv-x="1664" +d="M128 -128h288v288h-288v-288zM480 -128h320v288h-320v-288zM128 224h288v320h-288v-320zM480 224h320v320h-320v-320zM128 608h288v288h-288v-288zM864 -128h320v288h-320v-288zM480 608h320v288h-320v-288zM1248 -128h288v288h-288v-288zM864 224h320v320h-320v-320z +M512 1088v288q0 13 -9.5 22.5t-22.5 9.5h-64q-13 0 -22.5 -9.5t-9.5 -22.5v-288q0 -13 9.5 -22.5t22.5 -9.5h64q13 0 22.5 9.5t9.5 22.5zM1248 224h288v320h-288v-320zM864 608h320v288h-320v-288zM1248 608h288v288h-288v-288zM1280 1088v288q0 13 -9.5 22.5t-22.5 9.5h-64 +q-13 0 -22.5 -9.5t-9.5 -22.5v-288q0 -13 9.5 -22.5t22.5 -9.5h64q13 0 22.5 9.5t9.5 22.5zM1664 1152v-1280q0 -52 -38 -90t-90 -38h-1408q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h128v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h384v96q0 66 47 113t113 47 +h64q66 0 113 -47t47 -113v-96h128q52 0 90 -38t38 -90z" /> + <glyph glyph-name="random" unicode="" horiz-adv-x="1792" +d="M666 1055q-60 -92 -137 -273q-22 45 -37 72.5t-40.5 63.5t-51 56.5t-63 35t-81.5 14.5h-224q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h224q250 0 410 -225zM1792 256q0 -14 -9 -23l-320 -320q-9 -9 -23 -9q-13 0 -22.5 9.5t-9.5 22.5v192q-32 0 -85 -0.5t-81 -1t-73 1 +t-71 5t-64 10.5t-63 18.5t-58 28.5t-59 40t-55 53.5t-56 69.5q59 93 136 273q22 -45 37 -72.5t40.5 -63.5t51 -56.5t63 -35t81.5 -14.5h256v192q0 14 9 23t23 9q12 0 24 -10l319 -319q9 -9 9 -23zM1792 1152q0 -14 -9 -23l-320 -320q-9 -9 -23 -9q-13 0 -22.5 9.5t-9.5 22.5 +v192h-256q-48 0 -87 -15t-69 -45t-51 -61.5t-45 -77.5q-32 -62 -78 -171q-29 -66 -49.5 -111t-54 -105t-64 -100t-74 -83t-90 -68.5t-106.5 -42t-128 -16.5h-224q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h224q48 0 87 15t69 45t51 61.5t45 77.5q32 62 78 171q29 66 49.5 111 +t54 105t64 100t74 83t90 68.5t106.5 42t128 16.5h256v192q0 14 9 23t23 9q12 0 24 -10l319 -319q9 -9 9 -23z" /> + <glyph glyph-name="comment" unicode="" horiz-adv-x="1792" +d="M1792 640q0 -174 -120 -321.5t-326 -233t-450 -85.5q-70 0 -145 8q-198 -175 -460 -242q-49 -14 -114 -22q-17 -2 -30.5 9t-17.5 29v1q-3 4 -0.5 12t2 10t4.5 9.5l6 9t7 8.5t8 9q7 8 31 34.5t34.5 38t31 39.5t32.5 51t27 59t26 76q-157 89 -247.5 220t-90.5 281 +q0 130 71 248.5t191 204.5t286 136.5t348 50.5q244 0 450 -85.5t326 -233t120 -321.5z" /> + <glyph glyph-name="magnet" unicode="" +d="M1536 704v-128q0 -201 -98.5 -362t-274 -251.5t-395.5 -90.5t-395.5 90.5t-274 251.5t-98.5 362v128q0 26 19 45t45 19h384q26 0 45 -19t19 -45v-128q0 -52 23.5 -90t53.5 -57t71 -30t64 -13t44 -2t44 2t64 13t71 30t53.5 57t23.5 90v128q0 26 19 45t45 19h384 +q26 0 45 -19t19 -45zM512 1344v-384q0 -26 -19 -45t-45 -19h-384q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h384q26 0 45 -19t19 -45zM1536 1344v-384q0 -26 -19 -45t-45 -19h-384q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h384q26 0 45 -19t19 -45z" /> + <glyph glyph-name="chevron_up" unicode="" horiz-adv-x="1792" +d="M1683 205l-166 -165q-19 -19 -45 -19t-45 19l-531 531l-531 -531q-19 -19 -45 -19t-45 19l-166 165q-19 19 -19 45.5t19 45.5l742 741q19 19 45 19t45 -19l742 -741q19 -19 19 -45.5t-19 -45.5z" /> + <glyph glyph-name="chevron_down" unicode="" horiz-adv-x="1792" +d="M1683 728l-742 -741q-19 -19 -45 -19t-45 19l-742 741q-19 19 -19 45.5t19 45.5l166 165q19 19 45 19t45 -19l531 -531l531 531q19 19 45 19t45 -19l166 -165q19 -19 19 -45.5t-19 -45.5z" /> + <glyph glyph-name="retweet" unicode="" horiz-adv-x="1920" +d="M1280 32q0 -13 -9.5 -22.5t-22.5 -9.5h-960q-8 0 -13.5 2t-9 7t-5.5 8t-3 11.5t-1 11.5v13v11v160v416h-192q-26 0 -45 19t-19 45q0 24 15 41l320 384q19 22 49 22t49 -22l320 -384q15 -17 15 -41q0 -26 -19 -45t-45 -19h-192v-384h576q16 0 25 -11l160 -192q7 -10 7 -21 +zM1920 448q0 -24 -15 -41l-320 -384q-20 -23 -49 -23t-49 23l-320 384q-15 17 -15 41q0 26 19 45t45 19h192v384h-576q-16 0 -25 12l-160 192q-7 9 -7 20q0 13 9.5 22.5t22.5 9.5h960q8 0 13.5 -2t9 -7t5.5 -8t3 -11.5t1 -11.5v-13v-11v-160v-416h192q26 0 45 -19t19 -45z +" /> + <glyph glyph-name="shopping_cart" unicode="" horiz-adv-x="1664" +d="M640 0q0 -52 -38 -90t-90 -38t-90 38t-38 90t38 90t90 38t90 -38t38 -90zM1536 0q0 -52 -38 -90t-90 -38t-90 38t-38 90t38 90t90 38t90 -38t38 -90zM1664 1088v-512q0 -24 -16.5 -42.5t-40.5 -21.5l-1044 -122q13 -60 13 -70q0 -16 -24 -64h920q26 0 45 -19t19 -45 +t-19 -45t-45 -19h-1024q-26 0 -45 19t-19 45q0 11 8 31.5t16 36t21.5 40t15.5 29.5l-177 823h-204q-26 0 -45 19t-19 45t19 45t45 19h256q16 0 28.5 -6.5t19.5 -15.5t13 -24.5t8 -26t5.5 -29.5t4.5 -26h1201q26 0 45 -19t19 -45z" /> + <glyph glyph-name="folder_close" unicode="" horiz-adv-x="1664" +d="M1664 928v-704q0 -92 -66 -158t-158 -66h-1216q-92 0 -158 66t-66 158v960q0 92 66 158t158 66h320q92 0 158 -66t66 -158v-32h672q92 0 158 -66t66 -158z" /> + <glyph glyph-name="folder_open" unicode="" horiz-adv-x="1920" +d="M1879 584q0 -31 -31 -66l-336 -396q-43 -51 -120.5 -86.5t-143.5 -35.5h-1088q-34 0 -60.5 13t-26.5 43q0 31 31 66l336 396q43 51 120.5 86.5t143.5 35.5h1088q34 0 60.5 -13t26.5 -43zM1536 928v-160h-832q-94 0 -197 -47.5t-164 -119.5l-337 -396l-5 -6q0 4 -0.5 12.5 +t-0.5 12.5v960q0 92 66 158t158 66h320q92 0 158 -66t66 -158v-32h544q92 0 158 -66t66 -158z" /> + <glyph glyph-name="resize_vertical" unicode="" horiz-adv-x="768" +d="M704 1216q0 -26 -19 -45t-45 -19h-128v-1024h128q26 0 45 -19t19 -45t-19 -45l-256 -256q-19 -19 -45 -19t-45 19l-256 256q-19 19 -19 45t19 45t45 19h128v1024h-128q-26 0 -45 19t-19 45t19 45l256 256q19 19 45 19t45 -19l256 -256q19 -19 19 -45z" /> + <glyph glyph-name="resize_horizontal" unicode="" horiz-adv-x="1792" +d="M1792 640q0 -26 -19 -45l-256 -256q-19 -19 -45 -19t-45 19t-19 45v128h-1024v-128q0 -26 -19 -45t-45 -19t-45 19l-256 256q-19 19 -19 45t19 45l256 256q19 19 45 19t45 -19t19 -45v-128h1024v128q0 26 19 45t45 19t45 -19l256 -256q19 -19 19 -45z" /> + <glyph glyph-name="bar_chart" unicode="" horiz-adv-x="2048" +d="M640 640v-512h-256v512h256zM1024 1152v-1024h-256v1024h256zM2048 0v-128h-2048v1536h128v-1408h1920zM1408 896v-768h-256v768h256zM1792 1280v-1152h-256v1152h256z" /> + <glyph glyph-name="twitter_sign" unicode="" +d="M1280 926q-56 -25 -121 -34q68 40 93 117q-65 -38 -134 -51q-61 66 -153 66q-87 0 -148.5 -61.5t-61.5 -148.5q0 -29 5 -48q-129 7 -242 65t-192 155q-29 -50 -29 -106q0 -114 91 -175q-47 1 -100 26v-2q0 -75 50 -133.5t123 -72.5q-29 -8 -51 -8q-13 0 -39 4 +q21 -63 74.5 -104t121.5 -42q-116 -90 -261 -90q-26 0 -50 3q148 -94 322 -94q112 0 210 35.5t168 95t120.5 137t75 162t24.5 168.5q0 18 -1 27q63 45 105 109zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5 +t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="facebook_sign" unicode="" +d="M1248 1408q119 0 203.5 -84.5t84.5 -203.5v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-188v595h199l30 232h-229v148q0 56 23.5 84t91.5 28l122 1v207q-63 9 -178 9q-136 0 -217.5 -80t-81.5 -226v-171h-200v-232h200v-595h-532q-119 0 -203.5 84.5t-84.5 203.5v960 +q0 119 84.5 203.5t203.5 84.5h960z" /> + <glyph glyph-name="camera_retro" unicode="" horiz-adv-x="1792" +d="M928 704q0 14 -9 23t-23 9q-66 0 -113 -47t-47 -113q0 -14 9 -23t23 -9t23 9t9 23q0 40 28 68t68 28q14 0 23 9t9 23zM1152 574q0 -106 -75 -181t-181 -75t-181 75t-75 181t75 181t181 75t181 -75t75 -181zM128 0h1536v128h-1536v-128zM1280 574q0 159 -112.5 271.5 +t-271.5 112.5t-271.5 -112.5t-112.5 -271.5t112.5 -271.5t271.5 -112.5t271.5 112.5t112.5 271.5zM256 1216h384v128h-384v-128zM128 1024h1536v118v138h-828l-64 -128h-644v-128zM1792 1280v-1280q0 -53 -37.5 -90.5t-90.5 -37.5h-1536q-53 0 -90.5 37.5t-37.5 90.5v1280 +q0 53 37.5 90.5t90.5 37.5h1536q53 0 90.5 -37.5t37.5 -90.5z" /> + <glyph glyph-name="key" unicode="" horiz-adv-x="1792" +d="M832 1024q0 80 -56 136t-136 56t-136 -56t-56 -136q0 -42 19 -83q-41 19 -83 19q-80 0 -136 -56t-56 -136t56 -136t136 -56t136 56t56 136q0 42 -19 83q41 -19 83 -19q80 0 136 56t56 136zM1683 320q0 -17 -49 -66t-66 -49q-9 0 -28.5 16t-36.5 33t-38.5 40t-24.5 26 +l-96 -96l220 -220q28 -28 28 -68q0 -42 -39 -81t-81 -39q-40 0 -68 28l-671 671q-176 -131 -365 -131q-163 0 -265.5 102.5t-102.5 265.5q0 160 95 313t248 248t313 95q163 0 265.5 -102.5t102.5 -265.5q0 -189 -131 -365l355 -355l96 96q-3 3 -26 24.5t-40 38.5t-33 36.5 +t-16 28.5q0 17 49 66t66 49q13 0 23 -10q6 -6 46 -44.5t82 -79.5t86.5 -86t73 -78t28.5 -41z" /> + <glyph glyph-name="cogs" unicode="" horiz-adv-x="1920" +d="M896 640q0 106 -75 181t-181 75t-181 -75t-75 -181t75 -181t181 -75t181 75t75 181zM1664 128q0 52 -38 90t-90 38t-90 -38t-38 -90q0 -53 37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1664 1152q0 52 -38 90t-90 38t-90 -38t-38 -90q0 -53 37.5 -90.5t90.5 -37.5 +t90.5 37.5t37.5 90.5zM1280 731v-185q0 -10 -7 -19.5t-16 -10.5l-155 -24q-11 -35 -32 -76q34 -48 90 -115q7 -11 7 -20q0 -12 -7 -19q-23 -30 -82.5 -89.5t-78.5 -59.5q-11 0 -21 7l-115 90q-37 -19 -77 -31q-11 -108 -23 -155q-7 -24 -30 -24h-186q-11 0 -20 7.5t-10 17.5 +l-23 153q-34 10 -75 31l-118 -89q-7 -7 -20 -7q-11 0 -21 8q-144 133 -144 160q0 9 7 19q10 14 41 53t47 61q-23 44 -35 82l-152 24q-10 1 -17 9.5t-7 19.5v185q0 10 7 19.5t16 10.5l155 24q11 35 32 76q-34 48 -90 115q-7 11 -7 20q0 12 7 20q22 30 82 89t79 59q11 0 21 -7 +l115 -90q34 18 77 32q11 108 23 154q7 24 30 24h186q11 0 20 -7.5t10 -17.5l23 -153q34 -10 75 -31l118 89q8 7 20 7q11 0 21 -8q144 -133 144 -160q0 -8 -7 -19q-12 -16 -42 -54t-45 -60q23 -48 34 -82l152 -23q10 -2 17 -10.5t7 -19.5zM1920 198v-140q0 -16 -149 -31 +q-12 -27 -30 -52q51 -113 51 -138q0 -4 -4 -7q-122 -71 -124 -71q-8 0 -46 47t-52 68q-20 -2 -30 -2t-30 2q-14 -21 -52 -68t-46 -47q-2 0 -124 71q-4 3 -4 7q0 25 51 138q-18 25 -30 52q-149 15 -149 31v140q0 16 149 31q13 29 30 52q-51 113 -51 138q0 4 4 7q4 2 35 20 +t59 34t30 16q8 0 46 -46.5t52 -67.5q20 2 30 2t30 -2q51 71 92 112l6 2q4 0 124 -70q4 -3 4 -7q0 -25 -51 -138q17 -23 30 -52q149 -15 149 -31zM1920 1222v-140q0 -16 -149 -31q-12 -27 -30 -52q51 -113 51 -138q0 -4 -4 -7q-122 -71 -124 -71q-8 0 -46 47t-52 68 +q-20 -2 -30 -2t-30 2q-14 -21 -52 -68t-46 -47q-2 0 -124 71q-4 3 -4 7q0 25 51 138q-18 25 -30 52q-149 15 -149 31v140q0 16 149 31q13 29 30 52q-51 113 -51 138q0 4 4 7q4 2 35 20t59 34t30 16q8 0 46 -46.5t52 -67.5q20 2 30 2t30 -2q51 71 92 112l6 2q4 0 124 -70 +q4 -3 4 -7q0 -25 -51 -138q17 -23 30 -52q149 -15 149 -31z" /> + <glyph glyph-name="comments" unicode="" horiz-adv-x="1792" +d="M1408 768q0 -139 -94 -257t-256.5 -186.5t-353.5 -68.5q-86 0 -176 16q-124 -88 -278 -128q-36 -9 -86 -16h-3q-11 0 -20.5 8t-11.5 21q-1 3 -1 6.5t0.5 6.5t2 6l2.5 5t3.5 5.5t4 5t4.5 5t4 4.5q5 6 23 25t26 29.5t22.5 29t25 38.5t20.5 44q-124 72 -195 177t-71 224 +q0 139 94 257t256.5 186.5t353.5 68.5t353.5 -68.5t256.5 -186.5t94 -257zM1792 512q0 -120 -71 -224.5t-195 -176.5q10 -24 20.5 -44t25 -38.5t22.5 -29t26 -29.5t23 -25q1 -1 4 -4.5t4.5 -5t4 -5t3.5 -5.5l2.5 -5t2 -6t0.5 -6.5t-1 -6.5q-3 -14 -13 -22t-22 -7 +q-50 7 -86 16q-154 40 -278 128q-90 -16 -176 -16q-271 0 -472 132q58 -4 88 -4q161 0 309 45t264 129q125 92 192 212t67 254q0 77 -23 152q129 -71 204 -178t75 -230z" /> + <glyph glyph-name="thumbs_up_alt" unicode="" +d="M256 192q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1408 768q0 51 -39 89.5t-89 38.5h-352q0 58 48 159.5t48 160.5q0 98 -32 145t-128 47q-26 -26 -38 -85t-30.5 -125.5t-59.5 -109.5q-22 -23 -77 -91q-4 -5 -23 -30t-31.5 -41t-34.5 -42.5 +t-40 -44t-38.5 -35.5t-40 -27t-35.5 -9h-32v-640h32q13 0 31.5 -3t33 -6.5t38 -11t35 -11.5t35.5 -12.5t29 -10.5q211 -73 342 -73h121q192 0 192 167q0 26 -5 56q30 16 47.5 52.5t17.5 73.5t-18 69q53 50 53 119q0 25 -10 55.5t-25 47.5q32 1 53.5 47t21.5 81zM1536 769 +q0 -89 -49 -163q9 -33 9 -69q0 -77 -38 -144q3 -21 3 -43q0 -101 -60 -178q1 -139 -85 -219.5t-227 -80.5h-36h-93q-96 0 -189.5 22.5t-216.5 65.5q-116 40 -138 40h-288q-53 0 -90.5 37.5t-37.5 90.5v640q0 53 37.5 90.5t90.5 37.5h274q36 24 137 155q58 75 107 128 +q24 25 35.5 85.5t30.5 126.5t62 108q39 37 90 37q84 0 151 -32.5t102 -101.5t35 -186q0 -93 -48 -192h176q104 0 180 -76t76 -179z" /> + <glyph glyph-name="thumbs_down_alt" unicode="" +d="M256 1088q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1408 512q0 35 -21.5 81t-53.5 47q15 17 25 47.5t10 55.5q0 69 -53 119q18 31 18 69q0 37 -17.5 73.5t-47.5 52.5q5 30 5 56q0 85 -49 126t-136 41h-128q-131 0 -342 -73q-5 -2 -29 -10.5 +t-35.5 -12.5t-35 -11.5t-38 -11t-33 -6.5t-31.5 -3h-32v-640h32q16 0 35.5 -9t40 -27t38.5 -35.5t40 -44t34.5 -42.5t31.5 -41t23 -30q55 -68 77 -91q41 -43 59.5 -109.5t30.5 -125.5t38 -85q96 0 128 47t32 145q0 59 -48 160.5t-48 159.5h352q50 0 89 38.5t39 89.5z +M1536 511q0 -103 -76 -179t-180 -76h-176q48 -99 48 -192q0 -118 -35 -186q-35 -69 -102 -101.5t-151 -32.5q-51 0 -90 37q-34 33 -54 82t-25.5 90.5t-17.5 84.5t-31 64q-48 50 -107 127q-101 131 -137 155h-274q-53 0 -90.5 37.5t-37.5 90.5v640q0 53 37.5 90.5t90.5 37.5 +h288q22 0 138 40q128 44 223 66t200 22h112q140 0 226.5 -79t85.5 -216v-5q60 -77 60 -178q0 -22 -3 -43q38 -67 38 -144q0 -36 -9 -69q49 -73 49 -163z" /> + <glyph glyph-name="star_half" unicode="" horiz-adv-x="896" +d="M832 1504v-1339l-449 -236q-22 -12 -40 -12q-21 0 -31.5 14.5t-10.5 35.5q0 6 2 20l86 500l-364 354q-25 27 -25 48q0 37 56 46l502 73l225 455q19 41 49 41z" /> + <glyph glyph-name="heart_empty" unicode="" horiz-adv-x="1792" +d="M1664 940q0 81 -21.5 143t-55 98.5t-81.5 59.5t-94 31t-98 8t-112 -25.5t-110.5 -64t-86.5 -72t-60 -61.5q-18 -22 -49 -22t-49 22q-24 28 -60 61.5t-86.5 72t-110.5 64t-112 25.5t-98 -8t-94 -31t-81.5 -59.5t-55 -98.5t-21.5 -143q0 -168 187 -355l581 -560l580 559 +q188 188 188 356zM1792 940q0 -221 -229 -450l-623 -600q-18 -18 -44 -18t-44 18l-624 602q-10 8 -27.5 26t-55.5 65.5t-68 97.5t-53.5 121t-23.5 138q0 220 127 344t351 124q62 0 126.5 -21.5t120 -58t95.5 -68.5t76 -68q36 36 76 68t95.5 68.5t120 58t126.5 21.5 +q224 0 351 -124t127 -344z" /> + <glyph glyph-name="signout" unicode="" horiz-adv-x="1664" +d="M640 96q0 -4 1 -20t0.5 -26.5t-3 -23.5t-10 -19.5t-20.5 -6.5h-320q-119 0 -203.5 84.5t-84.5 203.5v704q0 119 84.5 203.5t203.5 84.5h320q13 0 22.5 -9.5t9.5 -22.5q0 -4 1 -20t0.5 -26.5t-3 -23.5t-10 -19.5t-20.5 -6.5h-320q-66 0 -113 -47t-47 -113v-704 +q0 -66 47 -113t113 -47h288h11h13t11.5 -1t11.5 -3t8 -5.5t7 -9t2 -13.5zM1568 640q0 -26 -19 -45l-544 -544q-19 -19 -45 -19t-45 19t-19 45v288h-448q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h448v288q0 26 19 45t45 19t45 -19l544 -544q19 -19 19 -45z" /> + <glyph glyph-name="linkedin_sign" unicode="" +d="M237 122h231v694h-231v-694zM483 1030q-1 52 -36 86t-93 34t-94.5 -34t-36.5 -86q0 -51 35.5 -85.5t92.5 -34.5h1q59 0 95 34.5t36 85.5zM1068 122h231v398q0 154 -73 233t-193 79q-136 0 -209 -117h2v101h-231q3 -66 0 -694h231v388q0 38 7 56q15 35 45 59.5t74 24.5 +q116 0 116 -157v-371zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="pushpin" unicode="" horiz-adv-x="1152" +d="M480 672v448q0 14 -9 23t-23 9t-23 -9t-9 -23v-448q0 -14 9 -23t23 -9t23 9t9 23zM1152 320q0 -26 -19 -45t-45 -19h-429l-51 -483q-2 -12 -10.5 -20.5t-20.5 -8.5h-1q-27 0 -32 27l-76 485h-404q-26 0 -45 19t-19 45q0 123 78.5 221.5t177.5 98.5v512q-52 0 -90 38 +t-38 90t38 90t90 38h640q52 0 90 -38t38 -90t-38 -90t-90 -38v-512q99 0 177.5 -98.5t78.5 -221.5z" /> + <glyph glyph-name="external_link" unicode="" horiz-adv-x="1792" +d="M1408 608v-320q0 -119 -84.5 -203.5t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h704q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-704q-66 0 -113 -47t-47 -113v-832q0 -66 47 -113t113 -47h832q66 0 113 47t47 113v320 +q0 14 9 23t23 9h64q14 0 23 -9t9 -23zM1792 1472v-512q0 -26 -19 -45t-45 -19t-45 19l-176 176l-652 -652q-10 -10 -23 -10t-23 10l-114 114q-10 10 -10 23t10 23l652 652l-176 176q-19 19 -19 45t19 45t45 19h512q26 0 45 -19t19 -45z" /> + <glyph glyph-name="signin" unicode="" +d="M1184 640q0 -26 -19 -45l-544 -544q-19 -19 -45 -19t-45 19t-19 45v288h-448q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h448v288q0 26 19 45t45 19t45 -19l544 -544q19 -19 19 -45zM1536 992v-704q0 -119 -84.5 -203.5t-203.5 -84.5h-320q-13 0 -22.5 9.5t-9.5 22.5 +q0 4 -1 20t-0.5 26.5t3 23.5t10 19.5t20.5 6.5h320q66 0 113 47t47 113v704q0 66 -47 113t-113 47h-288h-11h-13t-11.5 1t-11.5 3t-8 5.5t-7 9t-2 13.5q0 4 -1 20t-0.5 26.5t3 23.5t10 19.5t20.5 6.5h320q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="trophy" unicode="" horiz-adv-x="1664" +d="M458 653q-74 162 -74 371h-256v-96q0 -78 94.5 -162t235.5 -113zM1536 928v96h-256q0 -209 -74 -371q141 29 235.5 113t94.5 162zM1664 1056v-128q0 -71 -41.5 -143t-112 -130t-173 -97.5t-215.5 -44.5q-42 -54 -95 -95q-38 -34 -52.5 -72.5t-14.5 -89.5q0 -54 30.5 -91 +t97.5 -37q75 0 133.5 -45.5t58.5 -114.5v-64q0 -14 -9 -23t-23 -9h-832q-14 0 -23 9t-9 23v64q0 69 58.5 114.5t133.5 45.5q67 0 97.5 37t30.5 91q0 51 -14.5 89.5t-52.5 72.5q-53 41 -95 95q-113 5 -215.5 44.5t-173 97.5t-112 130t-41.5 143v128q0 40 28 68t68 28h288v96 +q0 66 47 113t113 47h576q66 0 113 -47t47 -113v-96h288q40 0 68 -28t28 -68z" /> + <glyph glyph-name="github_sign" unicode="" +d="M519 336q4 6 -3 13q-9 7 -14 2q-4 -6 3 -13q9 -7 14 -2zM491 377q-5 7 -12 4q-6 -4 0 -12q7 -8 12 -5q6 4 0 13zM450 417q2 4 -5 8q-7 2 -8 -2q-3 -5 4 -8q8 -2 9 2zM471 394q2 1 1.5 4.5t-3.5 5.5q-6 7 -10 3t1 -11q6 -6 11 -2zM557 319q2 7 -9 11q-9 3 -13 -4 +q-2 -7 9 -11q9 -3 13 4zM599 316q0 8 -12 8q-10 0 -10 -8t11 -8t11 8zM638 323q-2 7 -13 5t-9 -9q2 -8 12 -6t10 10zM1280 640q0 212 -150 362t-362 150t-362 -150t-150 -362q0 -167 98 -300.5t252 -185.5q18 -3 26.5 5t8.5 20q0 52 -1 95q-6 -1 -15.5 -2.5t-35.5 -2t-48 4 +t-43.5 20t-29.5 41.5q-23 59 -57 74q-2 1 -4.5 3.5l-8 8t-7 9.5t4 7.5t19.5 3.5q6 0 15 -2t30 -15.5t33 -35.5q16 -28 37.5 -42t43.5 -14t38 3.5t30 9.5q7 47 33 69q-49 6 -86 18.5t-73 39t-55.5 76t-19.5 119.5q0 79 53 137q-24 62 5 136q19 6 54.5 -7.5t60.5 -29.5l26 -16 +q58 17 128 17t128 -17q11 7 28.5 18t55.5 26t57 9q29 -74 5 -136q53 -58 53 -137q0 -57 -14 -100.5t-35.5 -70t-53.5 -44.5t-62.5 -26t-68.5 -12q35 -31 35 -95q0 -40 -0.5 -89t-0.5 -51q0 -12 8.5 -20t26.5 -5q154 52 252 185.5t98 300.5zM1536 1120v-960 +q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="upload_alt" unicode="" horiz-adv-x="1664" +d="M1280 64q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1536 64q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1664 288v-320q0 -40 -28 -68t-68 -28h-1472q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h427q21 -56 70.5 -92 +t110.5 -36h256q61 0 110.5 36t70.5 92h427q40 0 68 -28t28 -68zM1339 936q-17 -40 -59 -40h-256v-448q0 -26 -19 -45t-45 -19h-256q-26 0 -45 19t-19 45v448h-256q-42 0 -59 40q-17 39 14 69l448 448q18 19 45 19t45 -19l448 -448q31 -30 14 -69z" /> + <glyph glyph-name="lemon" unicode="" +d="M1407 710q0 44 -7 113.5t-18 96.5q-12 30 -17 44t-9 36.5t-4 48.5q0 23 5 68.5t5 67.5q0 37 -10 55q-4 1 -13 1q-19 0 -58 -4.5t-59 -4.5q-60 0 -176 24t-175 24q-43 0 -94.5 -11.5t-85 -23.5t-89.5 -34q-137 -54 -202 -103q-96 -73 -159.5 -189.5t-88 -236t-24.5 -248.5 +q0 -40 12.5 -120t12.5 -121q0 -23 -11 -66.5t-11 -65.5t12 -36.5t34 -14.5q24 0 72.5 11t73.5 11q57 0 169.5 -15.5t169.5 -15.5q181 0 284 36q129 45 235.5 152.5t166 245.5t59.5 275zM1535 712q0 -165 -70 -327.5t-196 -288t-281 -180.5q-124 -44 -326 -44 +q-57 0 -170 14.5t-169 14.5q-24 0 -72.5 -14.5t-73.5 -14.5q-73 0 -123.5 55.5t-50.5 128.5q0 24 11 68t11 67q0 40 -12.5 120.5t-12.5 121.5q0 111 18 217.5t54.5 209.5t100.5 194t150 156q78 59 232 120q194 78 316 78q60 0 175.5 -24t173.5 -24q19 0 57 5t58 5 +q81 0 118 -50.5t37 -134.5q0 -23 -5 -68t-5 -68q0 -13 2 -25t3.5 -16.5t7.5 -20.5t8 -20q16 -40 25 -118.5t9 -136.5z" /> + <glyph glyph-name="phone" unicode="" horiz-adv-x="1408" +d="M1408 296q0 -27 -10 -70.5t-21 -68.5q-21 -50 -122 -106q-94 -51 -186 -51q-27 0 -53 3.5t-57.5 12.5t-47 14.5t-55.5 20.5t-49 18q-98 35 -175 83q-127 79 -264 216t-216 264q-48 77 -83 175q-3 9 -18 49t-20.5 55.5t-14.5 47t-12.5 57.5t-3.5 53q0 92 51 186 +q56 101 106 122q25 11 68.5 21t70.5 10q14 0 21 -3q18 -6 53 -76q11 -19 30 -54t35 -63.5t31 -53.5q3 -4 17.5 -25t21.5 -35.5t7 -28.5q0 -20 -28.5 -50t-62 -55t-62 -53t-28.5 -46q0 -9 5 -22.5t8.5 -20.5t14 -24t11.5 -19q76 -137 174 -235t235 -174q2 -1 19 -11.5t24 -14 +t20.5 -8.5t22.5 -5q18 0 46 28.5t53 62t55 62t50 28.5q14 0 28.5 -7t35.5 -21.5t25 -17.5q25 -15 53.5 -31t63.5 -35t54 -30q70 -35 76 -53q3 -7 3 -21z" /> + <glyph glyph-name="check_empty" unicode="" horiz-adv-x="1408" +d="M1120 1280h-832q-66 0 -113 -47t-47 -113v-832q0 -66 47 -113t113 -47h832q66 0 113 47t47 113v832q0 66 -47 113t-113 47zM1408 1120v-832q0 -119 -84.5 -203.5t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h832 +q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="bookmark_empty" unicode="" horiz-adv-x="1280" +d="M1152 1280h-1024v-1242l423 406l89 85l89 -85l423 -406v1242zM1164 1408q23 0 44 -9q33 -13 52.5 -41t19.5 -62v-1289q0 -34 -19.5 -62t-52.5 -41q-19 -8 -44 -8q-48 0 -83 32l-441 424l-441 -424q-36 -33 -83 -33q-23 0 -44 9q-33 13 -52.5 41t-19.5 62v1289 +q0 34 19.5 62t52.5 41q21 9 44 9h1048z" /> + <glyph glyph-name="phone_sign" unicode="" +d="M1280 343q0 11 -2 16t-18 16.5t-40.5 25t-47.5 26.5t-45.5 25t-28.5 15q-5 3 -19 13t-25 15t-21 5q-15 0 -36.5 -20.5t-39.5 -45t-38.5 -45t-33.5 -20.5q-7 0 -16.5 3.5t-15.5 6.5t-17 9.5t-14 8.5q-99 55 -170 126.5t-127 170.5q-2 3 -8.5 14t-9.5 17t-6.5 15.5 +t-3.5 16.5q0 13 20.5 33.5t45 38.5t45 39.5t20.5 36.5q0 10 -5 21t-15 25t-13 19q-3 6 -15 28.5t-25 45.5t-26.5 47.5t-25 40.5t-16.5 18t-16 2q-48 0 -101 -22q-46 -21 -80 -94.5t-34 -130.5q0 -16 2.5 -34t5 -30.5t9 -33t10 -29.5t12.5 -33t11 -30q60 -164 216.5 -320.5 +t320.5 -216.5q6 -2 30 -11t33 -12.5t29.5 -10t33 -9t30.5 -5t34 -2.5q57 0 130.5 34t94.5 80q22 53 22 101zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z +" /> + <glyph glyph-name="twitter" unicode="" horiz-adv-x="1664" +d="M1620 1128q-67 -98 -162 -167q1 -14 1 -42q0 -130 -38 -259.5t-115.5 -248.5t-184.5 -210.5t-258 -146t-323 -54.5q-271 0 -496 145q35 -4 78 -4q225 0 401 138q-105 2 -188 64.5t-114 159.5q33 -5 61 -5q43 0 85 11q-112 23 -185.5 111.5t-73.5 205.5v4q68 -38 146 -41 +q-66 44 -105 115t-39 154q0 88 44 163q121 -149 294.5 -238.5t371.5 -99.5q-8 38 -8 74q0 134 94.5 228.5t228.5 94.5q140 0 236 -102q109 21 205 78q-37 -115 -142 -178q93 10 186 50z" /> + <glyph glyph-name="facebook" unicode="" horiz-adv-x="1024" +d="M959 1524v-264h-157q-86 0 -116 -36t-30 -108v-189h293l-39 -296h-254v-759h-306v759h-255v296h255v218q0 186 104 288.5t277 102.5q147 0 228 -12z" /> + <glyph glyph-name="github" unicode="" +d="M768 1408q209 0 385.5 -103t279.5 -279.5t103 -385.5q0 -251 -146.5 -451.5t-378.5 -277.5q-27 -5 -40 7t-13 30q0 3 0.5 76.5t0.5 134.5q0 97 -52 142q57 6 102.5 18t94 39t81 66.5t53 105t20.5 150.5q0 119 -79 206q37 91 -8 204q-28 9 -81 -11t-92 -44l-38 -24 +q-93 26 -192 26t-192 -26q-16 11 -42.5 27t-83.5 38.5t-85 13.5q-45 -113 -8 -204q-79 -87 -79 -206q0 -85 20.5 -150t52.5 -105t80.5 -67t94 -39t102.5 -18q-39 -36 -49 -103q-21 -10 -45 -15t-57 -5t-65.5 21.5t-55.5 62.5q-19 32 -48.5 52t-49.5 24l-20 3q-21 0 -29 -4.5 +t-5 -11.5t9 -14t13 -12l7 -5q22 -10 43.5 -38t31.5 -51l10 -23q13 -38 44 -61.5t67 -30t69.5 -7t55.5 3.5l23 4q0 -38 0.5 -88.5t0.5 -54.5q0 -18 -13 -30t-40 -7q-232 77 -378.5 277.5t-146.5 451.5q0 209 103 385.5t279.5 279.5t385.5 103zM291 305q3 7 -7 12 +q-10 3 -13 -2q-3 -7 7 -12q9 -6 13 2zM322 271q7 5 -2 16q-10 9 -16 3q-7 -5 2 -16q10 -10 16 -3zM352 226q9 7 0 19q-8 13 -17 6q-9 -5 0 -18t17 -7zM394 184q8 8 -4 19q-12 12 -20 3q-9 -8 4 -19q12 -12 20 -3zM451 159q3 11 -13 16q-15 4 -19 -7t13 -15q15 -6 19 6z +M514 154q0 13 -17 11q-16 0 -16 -11q0 -13 17 -11q16 0 16 11zM572 164q-2 11 -18 9q-16 -3 -14 -15t18 -8t14 14z" /> + <glyph glyph-name="unlock" unicode="" horiz-adv-x="1664" +d="M1664 960v-256q0 -26 -19 -45t-45 -19h-64q-26 0 -45 19t-19 45v256q0 106 -75 181t-181 75t-181 -75t-75 -181v-192h96q40 0 68 -28t28 -68v-576q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68v576q0 40 28 68t68 28h672v192q0 185 131.5 316.5t316.5 131.5 +t316.5 -131.5t131.5 -316.5z" /> + <glyph glyph-name="credit_card" unicode="" horiz-adv-x="1920" +d="M1760 1408q66 0 113 -47t47 -113v-1216q0 -66 -47 -113t-113 -47h-1600q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1600zM160 1280q-13 0 -22.5 -9.5t-9.5 -22.5v-224h1664v224q0 13 -9.5 22.5t-22.5 9.5h-1600zM1760 0q13 0 22.5 9.5t9.5 22.5v608h-1664v-608 +q0 -13 9.5 -22.5t22.5 -9.5h1600zM256 128v128h256v-128h-256zM640 128v128h384v-128h-384z" /> + <glyph glyph-name="rss" unicode="" horiz-adv-x="1408" +d="M384 192q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM896 69q2 -28 -17 -48q-18 -21 -47 -21h-135q-25 0 -43 16.5t-20 41.5q-22 229 -184.5 391.5t-391.5 184.5q-25 2 -41.5 20t-16.5 43v135q0 29 21 47q17 17 43 17h5q160 -13 306 -80.5 +t259 -181.5q114 -113 181.5 -259t80.5 -306zM1408 67q2 -27 -18 -47q-18 -20 -46 -20h-143q-26 0 -44.5 17.5t-19.5 42.5q-12 215 -101 408.5t-231.5 336t-336 231.5t-408.5 102q-25 1 -42.5 19.5t-17.5 43.5v143q0 28 20 46q18 18 44 18h3q262 -13 501.5 -120t425.5 -294 +q187 -186 294 -425.5t120 -501.5z" /> + <glyph glyph-name="hdd" unicode="" +d="M1040 320q0 -33 -23.5 -56.5t-56.5 -23.5t-56.5 23.5t-23.5 56.5t23.5 56.5t56.5 23.5t56.5 -23.5t23.5 -56.5zM1296 320q0 -33 -23.5 -56.5t-56.5 -23.5t-56.5 23.5t-23.5 56.5t23.5 56.5t56.5 23.5t56.5 -23.5t23.5 -56.5zM1408 160v320q0 13 -9.5 22.5t-22.5 9.5 +h-1216q-13 0 -22.5 -9.5t-9.5 -22.5v-320q0 -13 9.5 -22.5t22.5 -9.5h1216q13 0 22.5 9.5t9.5 22.5zM178 640h1180l-157 482q-4 13 -16 21.5t-26 8.5h-782q-14 0 -26 -8.5t-16 -21.5zM1536 480v-320q0 -66 -47 -113t-113 -47h-1216q-66 0 -113 47t-47 113v320q0 25 16 75 +l197 606q17 53 63 86t101 33h782q55 0 101 -33t63 -86l197 -606q16 -50 16 -75z" /> + <glyph glyph-name="bullhorn" unicode="" horiz-adv-x="1792" +d="M1664 896q53 0 90.5 -37.5t37.5 -90.5t-37.5 -90.5t-90.5 -37.5v-384q0 -52 -38 -90t-90 -38q-417 347 -812 380q-58 -19 -91 -66t-31 -100.5t40 -92.5q-20 -33 -23 -65.5t6 -58t33.5 -55t48 -50t61.5 -50.5q-29 -58 -111.5 -83t-168.5 -11.5t-132 55.5q-7 23 -29.5 87.5 +t-32 94.5t-23 89t-15 101t3.5 98.5t22 110.5h-122q-66 0 -113 47t-47 113v192q0 66 47 113t113 47h480q435 0 896 384q52 0 90 -38t38 -90v-384zM1536 292v954q-394 -302 -768 -343v-270q377 -42 768 -341z" /> + <glyph glyph-name="bell" unicode="" horiz-adv-x="1792" +d="M912 -160q0 16 -16 16q-59 0 -101.5 42.5t-42.5 101.5q0 16 -16 16t-16 -16q0 -73 51.5 -124.5t124.5 -51.5q16 0 16 16zM246 128h1300q-266 300 -266 832q0 51 -24 105t-69 103t-121.5 80.5t-169.5 31.5t-169.5 -31.5t-121.5 -80.5t-69 -103t-24 -105q0 -532 -266 -832z +M1728 128q0 -52 -38 -90t-90 -38h-448q0 -106 -75 -181t-181 -75t-181 75t-75 181h-448q-52 0 -90 38t-38 90q50 42 91 88t85 119.5t74.5 158.5t50 206t19.5 260q0 152 117 282.5t307 158.5q-8 19 -8 39q0 40 28 68t68 28t68 -28t28 -68q0 -20 -8 -39q190 -28 307 -158.5 +t117 -282.5q0 -139 19.5 -260t50 -206t74.5 -158.5t85 -119.5t91 -88z" /> + <glyph glyph-name="certificate" unicode="" +d="M1376 640l138 -135q30 -28 20 -70q-12 -41 -52 -51l-188 -48l53 -186q12 -41 -19 -70q-29 -31 -70 -19l-186 53l-48 -188q-10 -40 -51 -52q-12 -2 -19 -2q-31 0 -51 22l-135 138l-135 -138q-28 -30 -70 -20q-41 11 -51 52l-48 188l-186 -53q-41 -12 -70 19q-31 29 -19 70 +l53 186l-188 48q-40 10 -52 51q-10 42 20 70l138 135l-138 135q-30 28 -20 70q12 41 52 51l188 48l-53 186q-12 41 19 70q29 31 70 19l186 -53l48 188q10 41 51 51q41 12 70 -19l135 -139l135 139q29 30 70 19q41 -10 51 -51l48 -188l186 53q41 12 70 -19q31 -29 19 -70 +l-53 -186l188 -48q40 -10 52 -51q10 -42 -20 -70z" /> + <glyph glyph-name="hand_right" unicode="" horiz-adv-x="1792" +d="M256 192q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1664 768q0 51 -39 89.5t-89 38.5h-576q0 20 15 48.5t33 55t33 68t15 84.5q0 67 -44.5 97.5t-115.5 30.5q-24 0 -90 -139q-24 -44 -37 -65q-40 -64 -112 -145q-71 -81 -101 -106 +q-69 -57 -140 -57h-32v-640h32q72 0 167 -32t193.5 -64t179.5 -32q189 0 189 167q0 26 -5 56q30 16 47.5 52.5t17.5 73.5t-18 69q53 50 53 119q0 25 -10 55.5t-25 47.5h331q52 0 90 38t38 90zM1792 769q0 -105 -75.5 -181t-180.5 -76h-169q-4 -62 -37 -119q3 -21 3 -43 +q0 -101 -60 -178q1 -139 -85 -219.5t-227 -80.5q-133 0 -322 69q-164 59 -223 59h-288q-53 0 -90.5 37.5t-37.5 90.5v640q0 53 37.5 90.5t90.5 37.5h288q10 0 21.5 4.5t23.5 14t22.5 18t24 22.5t20.5 21.5t19 21.5t14 17q65 74 100 129q13 21 33 62t37 72t40.5 63t55 49.5 +t69.5 17.5q125 0 206.5 -67t81.5 -189q0 -68 -22 -128h374q104 0 180 -76t76 -179z" /> + <glyph glyph-name="hand_left" unicode="" horiz-adv-x="1792" +d="M1376 128h32v640h-32q-35 0 -67.5 12t-62.5 37t-50 46t-49 54q-8 9 -12 14q-72 81 -112 145q-14 22 -38 68q-1 3 -10.5 22.5t-18.5 36t-20 35.5t-21.5 30.5t-18.5 11.5q-71 0 -115.5 -30.5t-44.5 -97.5q0 -43 15 -84.5t33 -68t33 -55t15 -48.5h-576q-50 0 -89 -38.5 +t-39 -89.5q0 -52 38 -90t90 -38h331q-15 -17 -25 -47.5t-10 -55.5q0 -69 53 -119q-18 -32 -18 -69t17.5 -73.5t47.5 -52.5q-4 -24 -4 -56q0 -85 48.5 -126t135.5 -41q84 0 183 32t194 64t167 32zM1664 192q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45z +M1792 768v-640q0 -53 -37.5 -90.5t-90.5 -37.5h-288q-59 0 -223 -59q-190 -69 -317 -69q-142 0 -230 77.5t-87 217.5l1 5q-61 76 -61 178q0 22 3 43q-33 57 -37 119h-169q-105 0 -180.5 76t-75.5 181q0 103 76 179t180 76h374q-22 60 -22 128q0 122 81.5 189t206.5 67 +q38 0 69.5 -17.5t55 -49.5t40.5 -63t37 -72t33 -62q35 -55 100 -129q2 -3 14 -17t19 -21.5t20.5 -21.5t24 -22.5t22.5 -18t23.5 -14t21.5 -4.5h288q53 0 90.5 -37.5t37.5 -90.5z" /> + <glyph glyph-name="hand_up" unicode="" +d="M1280 -64q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1408 700q0 189 -167 189q-26 0 -56 -5q-16 30 -52.5 47.5t-73.5 17.5t-69 -18q-50 53 -119 53q-25 0 -55.5 -10t-47.5 -25v331q0 52 -38 90t-90 38q-51 0 -89.5 -39t-38.5 -89v-576 +q-20 0 -48.5 15t-55 33t-68 33t-84.5 15q-67 0 -97.5 -44.5t-30.5 -115.5q0 -24 139 -90q44 -24 65 -37q64 -40 145 -112q81 -71 106 -101q57 -69 57 -140v-32h640v32q0 72 32 167t64 193.5t32 179.5zM1536 705q0 -133 -69 -322q-59 -164 -59 -223v-288q0 -53 -37.5 -90.5 +t-90.5 -37.5h-640q-53 0 -90.5 37.5t-37.5 90.5v288q0 10 -4.5 21.5t-14 23.5t-18 22.5t-22.5 24t-21.5 20.5t-21.5 19t-17 14q-74 65 -129 100q-21 13 -62 33t-72 37t-63 40.5t-49.5 55t-17.5 69.5q0 125 67 206.5t189 81.5q68 0 128 -22v374q0 104 76 180t179 76 +q105 0 181 -75.5t76 -180.5v-169q62 -4 119 -37q21 3 43 3q101 0 178 -60q139 1 219.5 -85t80.5 -227z" /> + <glyph glyph-name="hand_down" unicode="" +d="M1408 576q0 84 -32 183t-64 194t-32 167v32h-640v-32q0 -35 -12 -67.5t-37 -62.5t-46 -50t-54 -49q-9 -8 -14 -12q-81 -72 -145 -112q-22 -14 -68 -38q-3 -1 -22.5 -10.5t-36 -18.5t-35.5 -20t-30.5 -21.5t-11.5 -18.5q0 -71 30.5 -115.5t97.5 -44.5q43 0 84.5 15t68 33 +t55 33t48.5 15v-576q0 -50 38.5 -89t89.5 -39q52 0 90 38t38 90v331q46 -35 103 -35q69 0 119 53q32 -18 69 -18t73.5 17.5t52.5 47.5q24 -4 56 -4q85 0 126 48.5t41 135.5zM1280 1344q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1536 580 +q0 -142 -77.5 -230t-217.5 -87l-5 1q-76 -61 -178 -61q-22 0 -43 3q-54 -30 -119 -37v-169q0 -105 -76 -180.5t-181 -75.5q-103 0 -179 76t-76 180v374q-54 -22 -128 -22q-121 0 -188.5 81.5t-67.5 206.5q0 38 17.5 69.5t49.5 55t63 40.5t72 37t62 33q55 35 129 100 +q3 2 17 14t21.5 19t21.5 20.5t22.5 24t18 22.5t14 23.5t4.5 21.5v288q0 53 37.5 90.5t90.5 37.5h640q53 0 90.5 -37.5t37.5 -90.5v-288q0 -59 59 -223q69 -190 69 -317z" /> + <glyph glyph-name="circle_arrow_left" unicode="" +d="M1280 576v128q0 26 -19 45t-45 19h-502l189 189q19 19 19 45t-19 45l-91 91q-18 18 -45 18t-45 -18l-362 -362l-91 -91q-18 -18 -18 -45t18 -45l91 -91l362 -362q18 -18 45 -18t45 18l91 91q18 18 18 45t-18 45l-189 189h502q26 0 45 19t19 45zM1536 640 +q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="circle_arrow_right" unicode="" +d="M1285 640q0 27 -18 45l-91 91l-362 362q-18 18 -45 18t-45 -18l-91 -91q-18 -18 -18 -45t18 -45l189 -189h-502q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h502l-189 -189q-19 -19 -19 -45t19 -45l91 -91q18 -18 45 -18t45 18l362 362l91 91q18 18 18 45zM1536 640 +q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="circle_arrow_up" unicode="" +d="M1284 641q0 27 -18 45l-362 362l-91 91q-18 18 -45 18t-45 -18l-91 -91l-362 -362q-18 -18 -18 -45t18 -45l91 -91q18 -18 45 -18t45 18l189 189v-502q0 -26 19 -45t45 -19h128q26 0 45 19t19 45v502l189 -189q19 -19 45 -19t45 19l91 91q18 18 18 45zM1536 640 +q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="circle_arrow_down" unicode="" +d="M1284 639q0 27 -18 45l-91 91q-18 18 -45 18t-45 -18l-189 -189v502q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-502l-189 189q-19 19 -45 19t-45 -19l-91 -91q-18 -18 -18 -45t18 -45l362 -362l91 -91q18 -18 45 -18t45 18l91 91l362 362q18 18 18 45zM1536 640 +q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="globe" unicode="" +d="M768 1408q209 0 385.5 -103t279.5 -279.5t103 -385.5t-103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103zM1042 887q-2 -1 -9.5 -9.5t-13.5 -9.5q2 0 4.5 5t5 11t3.5 7q6 7 22 15q14 6 52 12q34 8 51 -11 +q-2 2 9.5 13t14.5 12q3 2 15 4.5t15 7.5l2 22q-12 -1 -17.5 7t-6.5 21q0 -2 -6 -8q0 7 -4.5 8t-11.5 -1t-9 -1q-10 3 -15 7.5t-8 16.5t-4 15q-2 5 -9.5 11t-9.5 10q-1 2 -2.5 5.5t-3 6.5t-4 5.5t-5.5 2.5t-7 -5t-7.5 -10t-4.5 -5q-3 2 -6 1.5t-4.5 -1t-4.5 -3t-5 -3.5 +q-3 -2 -8.5 -3t-8.5 -2q15 5 -1 11q-10 4 -16 3q9 4 7.5 12t-8.5 14h5q-1 4 -8.5 8.5t-17.5 8.5t-13 6q-8 5 -34 9.5t-33 0.5q-5 -6 -4.5 -10.5t4 -14t3.5 -12.5q1 -6 -5.5 -13t-6.5 -12q0 -7 14 -15.5t10 -21.5q-3 -8 -16 -16t-16 -12q-5 -8 -1.5 -18.5t10.5 -16.5 +q2 -2 1.5 -4t-3.5 -4.5t-5.5 -4t-6.5 -3.5l-3 -2q-11 -5 -20.5 6t-13.5 26q-7 25 -16 30q-23 8 -29 -1q-5 13 -41 26q-25 9 -58 4q6 1 0 15q-7 15 -19 12q3 6 4 17.5t1 13.5q3 13 12 23q1 1 7 8.5t9.5 13.5t0.5 6q35 -4 50 11q5 5 11.5 17t10.5 17q9 6 14 5.5t14.5 -5.5 +t14.5 -5q14 -1 15.5 11t-7.5 20q12 -1 3 17q-4 7 -8 9q-12 4 -27 -5q-8 -4 2 -8q-1 1 -9.5 -10.5t-16.5 -17.5t-16 5q-1 1 -5.5 13.5t-9.5 13.5q-8 0 -16 -15q3 8 -11 15t-24 8q19 12 -8 27q-7 4 -20.5 5t-19.5 -4q-5 -7 -5.5 -11.5t5 -8t10.5 -5.5t11.5 -4t8.5 -3 +q14 -10 8 -14q-2 -1 -8.5 -3.5t-11.5 -4.5t-6 -4q-3 -4 0 -14t-2 -14q-5 5 -9 17.5t-7 16.5q7 -9 -25 -6l-10 1q-4 0 -16 -2t-20.5 -1t-13.5 8q-4 8 0 20q1 4 4 2q-4 3 -11 9.5t-10 8.5q-46 -15 -94 -41q6 -1 12 1q5 2 13 6.5t10 5.5q34 14 42 7l5 5q14 -16 20 -25 +q-7 4 -30 1q-20 -6 -22 -12q7 -12 5 -18q-4 3 -11.5 10t-14.5 11t-15 5q-16 0 -22 -1q-146 -80 -235 -222q7 -7 12 -8q4 -1 5 -9t2.5 -11t11.5 3q9 -8 3 -19q1 1 44 -27q19 -17 21 -21q3 -11 -10 -18q-1 2 -9 9t-9 4q-3 -5 0.5 -18.5t10.5 -12.5q-7 0 -9.5 -16t-2.5 -35.5 +t-1 -23.5l2 -1q-3 -12 5.5 -34.5t21.5 -19.5q-13 -3 20 -43q6 -8 8 -9q3 -2 12 -7.5t15 -10t10 -10.5q4 -5 10 -22.5t14 -23.5q-2 -6 9.5 -20t10.5 -23q-1 0 -2.5 -1t-2.5 -1q3 -7 15.5 -14t15.5 -13q1 -3 2 -10t3 -11t8 -2q2 20 -24 62q-15 25 -17 29q-3 5 -5.5 15.5 +t-4.5 14.5q2 0 6 -1.5t8.5 -3.5t7.5 -4t2 -3q-3 -7 2 -17.5t12 -18.5t17 -19t12 -13q6 -6 14 -19.5t0 -13.5q9 0 20 -10.5t17 -19.5q5 -8 8 -26t5 -24q2 -7 8.5 -13.5t12.5 -9.5l16 -8t13 -7q5 -2 18.5 -10.5t21.5 -11.5q10 -4 16 -4t14.5 2.5t13.5 3.5q15 2 29 -15t21 -21 +q36 -19 55 -11q-2 -1 0.5 -7.5t8 -15.5t9 -14.5t5.5 -8.5q5 -6 18 -15t18 -15q6 4 7 9q-3 -8 7 -20t18 -10q14 3 14 32q-31 -15 -49 18q0 1 -2.5 5.5t-4 8.5t-2.5 8.5t0 7.5t5 3q9 0 10 3.5t-2 12.5t-4 13q-1 8 -11 20t-12 15q-5 -9 -16 -8t-16 9q0 -1 -1.5 -5.5t-1.5 -6.5 +q-13 0 -15 1q1 3 2.5 17.5t3.5 22.5q1 4 5.5 12t7.5 14.5t4 12.5t-4.5 9.5t-17.5 2.5q-19 -1 -26 -20q-1 -3 -3 -10.5t-5 -11.5t-9 -7q-7 -3 -24 -2t-24 5q-13 8 -22.5 29t-9.5 37q0 10 2.5 26.5t3 25t-5.5 24.5q3 2 9 9.5t10 10.5q2 1 4.5 1.5t4.5 0t4 1.5t3 6q-1 1 -4 3 +q-3 3 -4 3q7 -3 28.5 1.5t27.5 -1.5q15 -11 22 2q0 1 -2.5 9.5t-0.5 13.5q5 -27 29 -9q3 -3 15.5 -5t17.5 -5q3 -2 7 -5.5t5.5 -4.5t5 0.5t8.5 6.5q10 -14 12 -24q11 -40 19 -44q7 -3 11 -2t4.5 9.5t0 14t-1.5 12.5l-1 8v18l-1 8q-15 3 -18.5 12t1.5 18.5t15 18.5q1 1 8 3.5 +t15.5 6.5t12.5 8q21 19 15 35q7 0 11 9q-1 0 -5 3t-7.5 5t-4.5 2q9 5 2 16q5 3 7.5 11t7.5 10q9 -12 21 -2q8 8 1 16q5 7 20.5 10.5t18.5 9.5q7 -2 8 2t1 12t3 12q4 5 15 9t13 5l17 11q3 4 0 4q18 -2 31 11q10 11 -6 20q3 6 -3 9.5t-15 5.5q3 1 11.5 0.5t10.5 1.5 +q15 10 -7 16q-17 5 -43 -12zM879 10q206 36 351 189q-3 3 -12.5 4.5t-12.5 3.5q-18 7 -24 8q1 7 -2.5 13t-8 9t-12.5 8t-11 7q-2 2 -7 6t-7 5.5t-7.5 4.5t-8.5 2t-10 -1l-3 -1q-3 -1 -5.5 -2.5t-5.5 -3t-4 -3t0 -2.5q-21 17 -36 22q-5 1 -11 5.5t-10.5 7t-10 1.5t-11.5 -7 +q-5 -5 -6 -15t-2 -13q-7 5 0 17.5t2 18.5q-3 6 -10.5 4.5t-12 -4.5t-11.5 -8.5t-9 -6.5t-8.5 -5.5t-8.5 -7.5q-3 -4 -6 -12t-5 -11q-2 4 -11.5 6.5t-9.5 5.5q2 -10 4 -35t5 -38q7 -31 -12 -48q-27 -25 -29 -40q-4 -22 12 -26q0 -7 -8 -20.5t-7 -21.5q0 -6 2 -16z" /> + <glyph glyph-name="wrench" unicode="" horiz-adv-x="1664" +d="M384 64q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1028 484l-682 -682q-37 -37 -90 -37q-52 0 -91 37l-106 108q-38 36 -38 90q0 53 38 91l681 681q39 -98 114.5 -173.5t173.5 -114.5zM1662 919q0 -39 -23 -106q-47 -134 -164.5 -217.5 +t-258.5 -83.5q-185 0 -316.5 131.5t-131.5 316.5t131.5 316.5t316.5 131.5q58 0 121.5 -16.5t107.5 -46.5q16 -11 16 -28t-16 -28l-293 -169v-224l193 -107q5 3 79 48.5t135.5 81t70.5 35.5q15 0 23.5 -10t8.5 -25z" /> + <glyph glyph-name="tasks" unicode="" horiz-adv-x="1792" +d="M1024 128h640v128h-640v-128zM640 640h1024v128h-1024v-128zM1280 1152h384v128h-384v-128zM1792 320v-256q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1792 832v-256q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19 +t-19 45v256q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1792 1344v-256q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h1664q26 0 45 -19t19 -45z" /> + <glyph glyph-name="filter" unicode="" horiz-adv-x="1408" +d="M1403 1241q17 -41 -14 -70l-493 -493v-742q0 -42 -39 -59q-13 -5 -25 -5q-27 0 -45 19l-256 256q-19 19 -19 45v486l-493 493q-31 29 -14 70q17 39 59 39h1280q42 0 59 -39z" /> + <glyph glyph-name="briefcase" unicode="" horiz-adv-x="1792" +d="M640 1280h512v128h-512v-128zM1792 640v-480q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v480h672v-160q0 -26 19 -45t45 -19h320q26 0 45 19t19 45v160h672zM1024 640v-128h-256v128h256zM1792 1120v-384h-1792v384q0 66 47 113t113 47h352v160q0 40 28 68 +t68 28h576q40 0 68 -28t28 -68v-160h352q66 0 113 -47t47 -113z" /> + <glyph glyph-name="fullscreen" unicode="" +d="M1283 995l-355 -355l355 -355l144 144q29 31 70 14q39 -17 39 -59v-448q0 -26 -19 -45t-45 -19h-448q-42 0 -59 40q-17 39 14 69l144 144l-355 355l-355 -355l144 -144q31 -30 14 -69q-17 -40 -59 -40h-448q-26 0 -45 19t-19 45v448q0 42 40 59q39 17 69 -14l144 -144 +l355 355l-355 355l-144 -144q-19 -19 -45 -19q-12 0 -24 5q-40 17 -40 59v448q0 26 19 45t45 19h448q42 0 59 -40q17 -39 -14 -69l-144 -144l355 -355l355 355l-144 144q-31 30 -14 69q17 40 59 40h448q26 0 45 -19t19 -45v-448q0 -42 -39 -59q-13 -5 -25 -5q-26 0 -45 19z +" /> + <glyph glyph-name="group" unicode="" horiz-adv-x="1920" +d="M593 640q-162 -5 -265 -128h-134q-82 0 -138 40.5t-56 118.5q0 353 124 353q6 0 43.5 -21t97.5 -42.5t119 -21.5q67 0 133 23q-5 -37 -5 -66q0 -139 81 -256zM1664 3q0 -120 -73 -189.5t-194 -69.5h-874q-121 0 -194 69.5t-73 189.5q0 53 3.5 103.5t14 109t26.5 108.5 +t43 97.5t62 81t85.5 53.5t111.5 20q10 0 43 -21.5t73 -48t107 -48t135 -21.5t135 21.5t107 48t73 48t43 21.5q61 0 111.5 -20t85.5 -53.5t62 -81t43 -97.5t26.5 -108.5t14 -109t3.5 -103.5zM640 1280q0 -106 -75 -181t-181 -75t-181 75t-75 181t75 181t181 75t181 -75 +t75 -181zM1344 896q0 -159 -112.5 -271.5t-271.5 -112.5t-271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5t271.5 -112.5t112.5 -271.5zM1920 671q0 -78 -56 -118.5t-138 -40.5h-134q-103 123 -265 128q81 117 81 256q0 29 -5 66q66 -23 133 -23q59 0 119 21.5t97.5 42.5 +t43.5 21q124 0 124 -353zM1792 1280q0 -106 -75 -181t-181 -75t-181 75t-75 181t75 181t181 75t181 -75t75 -181z" /> + <glyph glyph-name="link" unicode="" horiz-adv-x="1664" +d="M1456 320q0 40 -28 68l-208 208q-28 28 -68 28q-42 0 -72 -32q3 -3 19 -18.5t21.5 -21.5t15 -19t13 -25.5t3.5 -27.5q0 -40 -28 -68t-68 -28q-15 0 -27.5 3.5t-25.5 13t-19 15t-21.5 21.5t-18.5 19q-33 -31 -33 -73q0 -40 28 -68l206 -207q27 -27 68 -27q40 0 68 26 +l147 146q28 28 28 67zM753 1025q0 40 -28 68l-206 207q-28 28 -68 28q-39 0 -68 -27l-147 -146q-28 -28 -28 -67q0 -40 28 -68l208 -208q27 -27 68 -27q42 0 72 31q-3 3 -19 18.5t-21.5 21.5t-15 19t-13 25.5t-3.5 27.5q0 40 28 68t68 28q15 0 27.5 -3.5t25.5 -13t19 -15 +t21.5 -21.5t18.5 -19q33 31 33 73zM1648 320q0 -120 -85 -203l-147 -146q-83 -83 -203 -83q-121 0 -204 85l-206 207q-83 83 -83 203q0 123 88 209l-88 88q-86 -88 -208 -88q-120 0 -204 84l-208 208q-84 84 -84 204t85 203l147 146q83 83 203 83q121 0 204 -85l206 -207 +q83 -83 83 -203q0 -123 -88 -209l88 -88q86 88 208 88q120 0 204 -84l208 -208q84 -84 84 -204z" /> + <glyph glyph-name="cloud" unicode="" horiz-adv-x="1920" +d="M1920 384q0 -159 -112.5 -271.5t-271.5 -112.5h-1088q-185 0 -316.5 131.5t-131.5 316.5q0 132 71 241.5t187 163.5q-2 28 -2 43q0 212 150 362t362 150q158 0 286.5 -88t187.5 -230q70 62 166 62q106 0 181 -75t75 -181q0 -75 -41 -138q129 -30 213 -134.5t84 -239.5z +" /> + <glyph glyph-name="beaker" unicode="" horiz-adv-x="1664" +d="M1527 88q56 -89 21.5 -152.5t-140.5 -63.5h-1152q-106 0 -140.5 63.5t21.5 152.5l503 793v399h-64q-26 0 -45 19t-19 45t19 45t45 19h512q26 0 45 -19t19 -45t-19 -45t-45 -19h-64v-399zM748 813l-272 -429h712l-272 429l-20 31v37v399h-128v-399v-37z" /> + <glyph glyph-name="cut" unicode="" horiz-adv-x="1792" +d="M960 640q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1260 576l507 -398q28 -20 25 -56q-5 -35 -35 -51l-128 -64q-13 -7 -29 -7q-17 0 -31 8l-690 387l-110 -66q-8 -4 -12 -5q14 -49 10 -97q-7 -77 -56 -147.5t-132 -123.5q-132 -84 -277 -84 +q-136 0 -222 78q-90 84 -79 207q7 76 56 147t131 124q132 84 278 84q83 0 151 -31q9 13 22 22l122 73l-122 73q-13 9 -22 22q-68 -31 -151 -31q-146 0 -278 84q-82 53 -131 124t-56 147q-5 59 15.5 113t63.5 93q85 79 222 79q145 0 277 -84q83 -52 132 -123t56 -148 +q4 -48 -10 -97q4 -1 12 -5l110 -66l690 387q14 8 31 8q16 0 29 -7l128 -64q30 -16 35 -51q3 -36 -25 -56zM579 836q46 42 21 108t-106 117q-92 59 -192 59q-74 0 -113 -36q-46 -42 -21 -108t106 -117q92 -59 192 -59q74 0 113 36zM494 91q81 51 106 117t-21 108 +q-39 36 -113 36q-100 0 -192 -59q-81 -51 -106 -117t21 -108q39 -36 113 -36q100 0 192 59zM672 704l96 -58v11q0 36 33 56l14 8l-79 47l-26 -26q-3 -3 -10 -11t-12 -12q-2 -2 -4 -3.5t-3 -2.5zM896 480l96 -32l736 576l-128 64l-768 -431v-113l-160 -96l9 -8q2 -2 7 -6 +q4 -4 11 -12t11 -12l26 -26zM1600 64l128 64l-520 408l-177 -138q-2 -3 -13 -7z" /> + <glyph glyph-name="copy" unicode="" horiz-adv-x="1792" +d="M1696 1152q40 0 68 -28t28 -68v-1216q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68v288h-544q-40 0 -68 28t-28 68v672q0 40 20 88t48 76l408 408q28 28 76 48t88 20h416q40 0 68 -28t28 -68v-328q68 40 128 40h416zM1152 939l-299 -299h299v299zM512 1323l-299 -299 +h299v299zM708 676l316 316v416h-384v-416q0 -40 -28 -68t-68 -28h-416v-640h512v256q0 40 20 88t48 76zM1664 -128v1152h-384v-416q0 -40 -28 -68t-68 -28h-416v-640h896z" /> + <glyph glyph-name="paper_clip" unicode="" horiz-adv-x="1408" +d="M1404 151q0 -117 -79 -196t-196 -79q-135 0 -235 100l-777 776q-113 115 -113 271q0 159 110 270t269 111q158 0 273 -113l605 -606q10 -10 10 -22q0 -16 -30.5 -46.5t-46.5 -30.5q-13 0 -23 10l-606 607q-79 77 -181 77q-106 0 -179 -75t-73 -181q0 -105 76 -181 +l776 -777q63 -63 145 -63q64 0 106 42t42 106q0 82 -63 145l-581 581q-26 24 -60 24q-29 0 -48 -19t-19 -48q0 -32 25 -59l410 -410q10 -10 10 -22q0 -16 -31 -47t-47 -31q-12 0 -22 10l-410 410q-63 61 -63 149q0 82 57 139t139 57q88 0 149 -63l581 -581q100 -98 100 -235 +z" /> + <glyph glyph-name="save" unicode="" +d="M384 0h768v384h-768v-384zM1280 0h128v896q0 14 -10 38.5t-20 34.5l-281 281q-10 10 -34 20t-39 10v-416q0 -40 -28 -68t-68 -28h-576q-40 0 -68 28t-28 68v416h-128v-1280h128v416q0 40 28 68t68 28h832q40 0 68 -28t28 -68v-416zM896 928v320q0 13 -9.5 22.5t-22.5 9.5 +h-192q-13 0 -22.5 -9.5t-9.5 -22.5v-320q0 -13 9.5 -22.5t22.5 -9.5h192q13 0 22.5 9.5t9.5 22.5zM1536 896v-928q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1344q0 40 28 68t68 28h928q40 0 88 -20t76 -48l280 -280q28 -28 48 -76t20 -88z" /> + <glyph glyph-name="sign_blank" unicode="" +d="M1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="reorder" unicode="" +d="M1536 192v-128q0 -26 -19 -45t-45 -19h-1408q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1408q26 0 45 -19t19 -45zM1536 704v-128q0 -26 -19 -45t-45 -19h-1408q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1408q26 0 45 -19t19 -45zM1536 1216v-128q0 -26 -19 -45 +t-45 -19h-1408q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1408q26 0 45 -19t19 -45z" /> + <glyph glyph-name="ul" unicode="" horiz-adv-x="1792" +d="M384 128q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM384 640q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM1792 224v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1216q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5 +t22.5 9.5h1216q13 0 22.5 -9.5t9.5 -22.5zM384 1152q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM1792 736v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1216q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1216q13 0 22.5 -9.5t9.5 -22.5z +M1792 1248v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1216q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1216q13 0 22.5 -9.5t9.5 -22.5z" /> + <glyph glyph-name="ol" unicode="" horiz-adv-x="1792" +d="M381 -84q0 -80 -54.5 -126t-135.5 -46q-106 0 -172 66l57 88q49 -45 106 -45q29 0 50.5 14.5t21.5 42.5q0 64 -105 56l-26 56q8 10 32.5 43.5t42.5 54t37 38.5v1q-16 0 -48.5 -1t-48.5 -1v-53h-106v152h333v-88l-95 -115q51 -12 81 -49t30 -88zM383 543v-159h-362 +q-6 36 -6 54q0 51 23.5 93t56.5 68t66 47.5t56.5 43.5t23.5 45q0 25 -14.5 38.5t-39.5 13.5q-46 0 -81 -58l-85 59q24 51 71.5 79.5t105.5 28.5q73 0 123 -41.5t50 -112.5q0 -50 -34 -91.5t-75 -64.5t-75.5 -50.5t-35.5 -52.5h127v60h105zM1792 224v-192q0 -13 -9.5 -22.5 +t-22.5 -9.5h-1216q-13 0 -22.5 9.5t-9.5 22.5v192q0 14 9 23t23 9h1216q13 0 22.5 -9.5t9.5 -22.5zM384 1123v-99h-335v99h107q0 41 0.5 121.5t0.5 121.5v12h-2q-8 -17 -50 -54l-71 76l136 127h106v-404h108zM1792 736v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1216 +q-13 0 -22.5 9.5t-9.5 22.5v192q0 14 9 23t23 9h1216q13 0 22.5 -9.5t9.5 -22.5zM1792 1248v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1216q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1216q13 0 22.5 -9.5t9.5 -22.5z" /> + <glyph glyph-name="strikethrough" unicode="" horiz-adv-x="1792" +d="M1760 640q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-1728q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h1728zM483 704q-28 35 -51 80q-48 98 -48 188q0 181 134 309q133 127 393 127q50 0 167 -19q66 -12 177 -48q10 -38 21 -118q14 -123 14 -183q0 -18 -5 -45l-12 -3l-84 6 +l-14 2q-50 149 -103 205q-88 91 -210 91q-114 0 -182 -59q-67 -58 -67 -146q0 -73 66 -140t279 -129q69 -20 173 -66q58 -28 95 -52h-743zM990 448h411q7 -39 7 -92q0 -111 -41 -212q-23 -56 -71 -104q-37 -35 -109 -81q-80 -48 -153 -66q-80 -21 -203 -21q-114 0 -195 23 +l-140 40q-57 16 -72 28q-8 8 -8 22v13q0 108 -2 156q-1 30 0 68l2 37v44l102 2q15 -34 30 -71t22.5 -56t12.5 -27q35 -57 80 -94q43 -36 105 -57q59 -22 132 -22q64 0 139 27q77 26 122 86q47 61 47 129q0 84 -81 157q-34 29 -137 71z" /> + <glyph glyph-name="underline" unicode="" +d="M48 1313q-37 2 -45 4l-3 88q13 1 40 1q60 0 112 -4q132 -7 166 -7q86 0 168 3q116 4 146 5q56 0 86 2l-1 -14l2 -64v-9q-60 -9 -124 -9q-60 0 -79 -25q-13 -14 -13 -132q0 -13 0.5 -32.5t0.5 -25.5l1 -229l14 -280q6 -124 51 -202q35 -59 96 -92q88 -47 177 -47 +q104 0 191 28q56 18 99 51q48 36 65 64q36 56 53 114q21 73 21 229q0 79 -3.5 128t-11 122.5t-13.5 159.5l-4 59q-5 67 -24 88q-34 35 -77 34l-100 -2l-14 3l2 86h84l205 -10q76 -3 196 10l18 -2q6 -38 6 -51q0 -7 -4 -31q-45 -12 -84 -13q-73 -11 -79 -17q-15 -15 -15 -41 +q0 -7 1.5 -27t1.5 -31q8 -19 22 -396q6 -195 -15 -304q-15 -76 -41 -122q-38 -65 -112 -123q-75 -57 -182 -89q-109 -33 -255 -33q-167 0 -284 46q-119 47 -179 122q-61 76 -83 195q-16 80 -16 237v333q0 188 -17 213q-25 36 -147 39zM1536 -96v64q0 14 -9 23t-23 9h-1472 +q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h1472q14 0 23 9t9 23z" /> + <glyph glyph-name="table" unicode="" horiz-adv-x="1664" +d="M512 160v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM512 544v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM1024 160v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23 +v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM512 928v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM1024 544v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM1536 160v192 +q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM1024 928v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM1536 544v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-192 +q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM1536 928v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM1664 1248v-1088q0 -66 -47 -113t-113 -47h-1344q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h1344q66 0 113 -47t47 -113 +z" /> + <glyph glyph-name="magic" unicode="" horiz-adv-x="1664" +d="M1190 955l293 293l-107 107l-293 -293zM1637 1248q0 -27 -18 -45l-1286 -1286q-18 -18 -45 -18t-45 18l-198 198q-18 18 -18 45t18 45l1286 1286q18 18 45 18t45 -18l198 -198q18 -18 18 -45zM286 1438l98 -30l-98 -30l-30 -98l-30 98l-98 30l98 30l30 98zM636 1276 +l196 -60l-196 -60l-60 -196l-60 196l-196 60l196 60l60 196zM1566 798l98 -30l-98 -30l-30 -98l-30 98l-98 30l98 30l30 98zM926 1438l98 -30l-98 -30l-30 -98l-30 98l-98 30l98 30l30 98z" /> + <glyph glyph-name="truck" unicode="" horiz-adv-x="1792" +d="M640 128q0 52 -38 90t-90 38t-90 -38t-38 -90t38 -90t90 -38t90 38t38 90zM256 640h384v256h-158q-13 0 -22 -9l-195 -195q-9 -9 -9 -22v-30zM1536 128q0 52 -38 90t-90 38t-90 -38t-38 -90t38 -90t90 -38t90 38t38 90zM1792 1216v-1024q0 -15 -4 -26.5t-13.5 -18.5 +t-16.5 -11.5t-23.5 -6t-22.5 -2t-25.5 0t-22.5 0.5q0 -106 -75 -181t-181 -75t-181 75t-75 181h-384q0 -106 -75 -181t-181 -75t-181 75t-75 181h-64q-3 0 -22.5 -0.5t-25.5 0t-22.5 2t-23.5 6t-16.5 11.5t-13.5 18.5t-4 26.5q0 26 19 45t45 19v320q0 8 -0.5 35t0 38 +t2.5 34.5t6.5 37t14 30.5t22.5 30l198 198q19 19 50.5 32t58.5 13h160v192q0 26 19 45t45 19h1024q26 0 45 -19t19 -45z" /> + <glyph glyph-name="pinterest" unicode="" +d="M1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103q-111 0 -218 32q59 93 78 164q9 34 54 211q20 -39 73 -67.5t114 -28.5q121 0 216 68.5t147 188.5t52 270q0 114 -59.5 214t-172.5 163t-255 63q-105 0 -196 -29t-154.5 -77t-109 -110.5t-67 -129.5t-21.5 -134 +q0 -104 40 -183t117 -111q30 -12 38 20q2 7 8 31t8 30q6 23 -11 43q-51 61 -51 151q0 151 104.5 259.5t273.5 108.5q151 0 235.5 -82t84.5 -213q0 -170 -68.5 -289t-175.5 -119q-61 0 -98 43.5t-23 104.5q8 35 26.5 93.5t30 103t11.5 75.5q0 50 -27 83t-77 33 +q-62 0 -105 -57t-43 -142q0 -73 25 -122l-99 -418q-17 -70 -13 -177q-206 91 -333 281t-127 423q0 209 103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="pinterest_sign" unicode="" +d="M1248 1408q119 0 203.5 -84.5t84.5 -203.5v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-725q85 122 108 210q9 34 53 209q21 -39 73.5 -67t112.5 -28q181 0 295.5 147.5t114.5 373.5q0 84 -35 162.5t-96.5 139t-152.5 97t-197 36.5q-104 0 -194.5 -28.5t-153 -76.5 +t-107.5 -109.5t-66.5 -128t-21.5 -132.5q0 -102 39.5 -180t116.5 -110q13 -5 23.5 0t14.5 19q10 44 15 61q6 23 -11 42q-50 62 -50 150q0 150 103.5 256.5t270.5 106.5q149 0 232.5 -81t83.5 -210q0 -168 -67.5 -286t-173.5 -118q-60 0 -97 43.5t-23 103.5q8 34 26.5 92.5 +t29.5 102t11 74.5q0 49 -26.5 81.5t-75.5 32.5q-61 0 -103.5 -56.5t-42.5 -139.5q0 -72 24 -121l-98 -414q-24 -100 -7 -254h-183q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960z" /> + <glyph glyph-name="google_plus_sign" unicode="" +d="M917 631q0 26 -6 64h-362v-132h217q-3 -24 -16.5 -50t-37.5 -53t-66.5 -44.5t-96.5 -17.5q-99 0 -169 71t-70 171t70 171t169 71q92 0 153 -59l104 101q-108 100 -257 100q-160 0 -272 -112.5t-112 -271.5t112 -271.5t272 -112.5q165 0 266.5 105t101.5 270zM1262 585 +h109v110h-109v110h-110v-110h-110v-110h110v-110h110v110zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="google_plus" unicode="" horiz-adv-x="2304" +d="M1437 623q0 -208 -87 -370.5t-248 -254t-369 -91.5q-149 0 -285 58t-234 156t-156 234t-58 285t58 285t156 234t234 156t285 58q286 0 491 -192l-199 -191q-117 113 -292 113q-123 0 -227.5 -62t-165.5 -168.5t-61 -232.5t61 -232.5t165.5 -168.5t227.5 -62 +q83 0 152.5 23t114.5 57.5t78.5 78.5t49 83t21.5 74h-416v252h692q12 -63 12 -122zM2304 745v-210h-209v-209h-210v209h-209v210h209v209h210v-209h209z" /> + <glyph glyph-name="money" unicode="" horiz-adv-x="1920" +d="M768 384h384v96h-128v448h-114l-148 -137l77 -80q42 37 55 57h2v-288h-128v-96zM1280 640q0 -70 -21 -142t-59.5 -134t-101.5 -101t-138 -39t-138 39t-101.5 101t-59.5 134t-21 142t21 142t59.5 134t101.5 101t138 39t138 -39t101.5 -101t59.5 -134t21 -142zM1792 384 +v512q-106 0 -181 75t-75 181h-1152q0 -106 -75 -181t-181 -75v-512q106 0 181 -75t75 -181h1152q0 106 75 181t181 75zM1920 1216v-1152q0 -26 -19 -45t-45 -19h-1792q-26 0 -45 19t-19 45v1152q0 26 19 45t45 19h1792q26 0 45 -19t19 -45z" /> + <glyph glyph-name="caret_down" unicode="" horiz-adv-x="1024" +d="M1024 832q0 -26 -19 -45l-448 -448q-19 -19 -45 -19t-45 19l-448 448q-19 19 -19 45t19 45t45 19h896q26 0 45 -19t19 -45z" /> + <glyph glyph-name="caret_up" unicode="" horiz-adv-x="1024" +d="M1024 320q0 -26 -19 -45t-45 -19h-896q-26 0 -45 19t-19 45t19 45l448 448q19 19 45 19t45 -19l448 -448q19 -19 19 -45z" /> + <glyph glyph-name="caret_left" unicode="" horiz-adv-x="640" +d="M640 1088v-896q0 -26 -19 -45t-45 -19t-45 19l-448 448q-19 19 -19 45t19 45l448 448q19 19 45 19t45 -19t19 -45z" /> + <glyph glyph-name="caret_right" unicode="" horiz-adv-x="640" +d="M576 640q0 -26 -19 -45l-448 -448q-19 -19 -45 -19t-45 19t-19 45v896q0 26 19 45t45 19t45 -19l448 -448q19 -19 19 -45z" /> + <glyph glyph-name="columns" unicode="" horiz-adv-x="1664" +d="M160 0h608v1152h-640v-1120q0 -13 9.5 -22.5t22.5 -9.5zM1536 32v1120h-640v-1152h608q13 0 22.5 9.5t9.5 22.5zM1664 1248v-1216q0 -66 -47 -113t-113 -47h-1344q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1344q66 0 113 -47t47 -113z" /> + <glyph glyph-name="sort" unicode="" horiz-adv-x="1024" +d="M1024 448q0 -26 -19 -45l-448 -448q-19 -19 -45 -19t-45 19l-448 448q-19 19 -19 45t19 45t45 19h896q26 0 45 -19t19 -45zM1024 832q0 -26 -19 -45t-45 -19h-896q-26 0 -45 19t-19 45t19 45l448 448q19 19 45 19t45 -19l448 -448q19 -19 19 -45z" /> + <glyph glyph-name="sort_down" unicode="" horiz-adv-x="1024" +d="M1024 448q0 -26 -19 -45l-448 -448q-19 -19 -45 -19t-45 19l-448 448q-19 19 -19 45t19 45t45 19h896q26 0 45 -19t19 -45z" /> + <glyph glyph-name="sort_up" unicode="" horiz-adv-x="1024" +d="M1024 832q0 -26 -19 -45t-45 -19h-896q-26 0 -45 19t-19 45t19 45l448 448q19 19 45 19t45 -19l448 -448q19 -19 19 -45z" /> + <glyph glyph-name="envelope_alt" unicode="" horiz-adv-x="1792" +d="M1792 826v-794q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v794q44 -49 101 -87q362 -246 497 -345q57 -42 92.5 -65.5t94.5 -48t110 -24.5h1h1q51 0 110 24.5t94.5 48t92.5 65.5q170 123 498 345q57 39 100 87zM1792 1120q0 -79 -49 -151t-122 -123 +q-376 -261 -468 -325q-10 -7 -42.5 -30.5t-54 -38t-52 -32.5t-57.5 -27t-50 -9h-1h-1q-23 0 -50 9t-57.5 27t-52 32.5t-54 38t-42.5 30.5q-91 64 -262 182.5t-205 142.5q-62 42 -117 115.5t-55 136.5q0 78 41.5 130t118.5 52h1472q65 0 112.5 -47t47.5 -113z" /> + <glyph glyph-name="linkedin" unicode="" +d="M349 911v-991h-330v991h330zM370 1217q1 -73 -50.5 -122t-135.5 -49h-2q-82 0 -132 49t-50 122q0 74 51.5 122.5t134.5 48.5t133 -48.5t51 -122.5zM1536 488v-568h-329v530q0 105 -40.5 164.5t-126.5 59.5q-63 0 -105.5 -34.5t-63.5 -85.5q-11 -30 -11 -81v-553h-329 +q2 399 2 647t-1 296l-1 48h329v-144h-2q20 32 41 56t56.5 52t87 43.5t114.5 15.5q171 0 275 -113.5t104 -332.5z" /> + <glyph glyph-name="undo" unicode="" +d="M1536 640q0 -156 -61 -298t-164 -245t-245 -164t-298 -61q-172 0 -327 72.5t-264 204.5q-7 10 -6.5 22.5t8.5 20.5l137 138q10 9 25 9q16 -2 23 -12q73 -95 179 -147t225 -52q104 0 198.5 40.5t163.5 109.5t109.5 163.5t40.5 198.5t-40.5 198.5t-109.5 163.5 +t-163.5 109.5t-198.5 40.5q-98 0 -188 -35.5t-160 -101.5l137 -138q31 -30 14 -69q-17 -40 -59 -40h-448q-26 0 -45 19t-19 45v448q0 42 40 59q39 17 69 -14l130 -129q107 101 244.5 156.5t284.5 55.5q156 0 298 -61t245 -164t164 -245t61 -298z" /> + <glyph glyph-name="legal" unicode="" horiz-adv-x="1792" +d="M1771 0q0 -53 -37 -90l-107 -108q-39 -37 -91 -37q-53 0 -90 37l-363 364q-38 36 -38 90q0 53 43 96l-256 256l-126 -126q-14 -14 -34 -14t-34 14q2 -2 12.5 -12t12.5 -13t10 -11.5t10 -13.5t6 -13.5t5.5 -16.5t1.5 -18q0 -38 -28 -68q-3 -3 -16.5 -18t-19 -20.5 +t-18.5 -16.5t-22 -15.5t-22 -9t-26 -4.5q-40 0 -68 28l-408 408q-28 28 -28 68q0 13 4.5 26t9 22t15.5 22t16.5 18.5t20.5 19t18 16.5q30 28 68 28q10 0 18 -1.5t16.5 -5.5t13.5 -6t13.5 -10t11.5 -10t13 -12.5t12 -12.5q-14 14 -14 34t14 34l348 348q14 14 34 14t34 -14 +q-2 2 -12.5 12t-12.5 13t-10 11.5t-10 13.5t-6 13.5t-5.5 16.5t-1.5 18q0 38 28 68q3 3 16.5 18t19 20.5t18.5 16.5t22 15.5t22 9t26 4.5q40 0 68 -28l408 -408q28 -28 28 -68q0 -13 -4.5 -26t-9 -22t-15.5 -22t-16.5 -18.5t-20.5 -19t-18 -16.5q-30 -28 -68 -28 +q-10 0 -18 1.5t-16.5 5.5t-13.5 6t-13.5 10t-11.5 10t-13 12.5t-12 12.5q14 -14 14 -34t-14 -34l-126 -126l256 -256q43 43 96 43q52 0 91 -37l363 -363q37 -39 37 -91z" /> + <glyph glyph-name="dashboard" unicode="" horiz-adv-x="1792" +d="M384 384q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM576 832q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1004 351l101 382q6 26 -7.5 48.5t-38.5 29.5 +t-48 -6.5t-30 -39.5l-101 -382q-60 -5 -107 -43.5t-63 -98.5q-20 -77 20 -146t117 -89t146 20t89 117q16 60 -6 117t-72 91zM1664 384q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1024 1024q0 53 -37.5 90.5 +t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1472 832q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1792 384q0 -261 -141 -483q-19 -29 -54 -29h-1402q-35 0 -54 29 +q-141 221 -141 483q0 182 71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" /> + <glyph glyph-name="comment_alt" unicode="" horiz-adv-x="1792" +d="M896 1152q-204 0 -381.5 -69.5t-282 -187.5t-104.5 -255q0 -112 71.5 -213.5t201.5 -175.5l87 -50l-27 -96q-24 -91 -70 -172q152 63 275 171l43 38l57 -6q69 -8 130 -8q204 0 381.5 69.5t282 187.5t104.5 255t-104.5 255t-282 187.5t-381.5 69.5zM1792 640 +q0 -174 -120 -321.5t-326 -233t-450 -85.5q-70 0 -145 8q-198 -175 -460 -242q-49 -14 -114 -22h-5q-15 0 -27 10.5t-16 27.5v1q-3 4 -0.5 12t2 10t4.5 9.5l6 9t7 8.5t8 9q7 8 31 34.5t34.5 38t31 39.5t32.5 51t27 59t26 76q-157 89 -247.5 220t-90.5 281q0 174 120 321.5 +t326 233t450 85.5t450 -85.5t326 -233t120 -321.5z" /> + <glyph glyph-name="comments_alt" unicode="" horiz-adv-x="1792" +d="M704 1152q-153 0 -286 -52t-211.5 -141t-78.5 -191q0 -82 53 -158t149 -132l97 -56l-35 -84q34 20 62 39l44 31l53 -10q78 -14 153 -14q153 0 286 52t211.5 141t78.5 191t-78.5 191t-211.5 141t-286 52zM704 1280q191 0 353.5 -68.5t256.5 -186.5t94 -257t-94 -257 +t-256.5 -186.5t-353.5 -68.5q-86 0 -176 16q-124 -88 -278 -128q-36 -9 -86 -16h-3q-11 0 -20.5 8t-11.5 21q-1 3 -1 6.5t0.5 6.5t2 6l2.5 5t3.5 5.5t4 5t4.5 5t4 4.5q5 6 23 25t26 29.5t22.5 29t25 38.5t20.5 44q-124 72 -195 177t-71 224q0 139 94 257t256.5 186.5 +t353.5 68.5zM1526 111q10 -24 20.5 -44t25 -38.5t22.5 -29t26 -29.5t23 -25q1 -1 4 -4.5t4.5 -5t4 -5t3.5 -5.5l2.5 -5t2 -6t0.5 -6.5t-1 -6.5q-3 -14 -13 -22t-22 -7q-50 7 -86 16q-154 40 -278 128q-90 -16 -176 -16q-271 0 -472 132q58 -4 88 -4q161 0 309 45t264 129 +q125 92 192 212t67 254q0 77 -23 152q129 -71 204 -178t75 -230q0 -120 -71 -224.5t-195 -176.5z" /> + <glyph glyph-name="bolt" unicode="" horiz-adv-x="896" +d="M885 970q18 -20 7 -44l-540 -1157q-13 -25 -42 -25q-4 0 -14 2q-17 5 -25.5 19t-4.5 30l197 808l-406 -101q-4 -1 -12 -1q-18 0 -31 11q-18 15 -13 39l201 825q4 14 16 23t28 9h328q19 0 32 -12.5t13 -29.5q0 -8 -5 -18l-171 -463l396 98q8 2 12 2q19 0 34 -15z" /> + <glyph glyph-name="sitemap" unicode="" horiz-adv-x="1792" +d="M1792 288v-320q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h96v192h-512v-192h96q40 0 68 -28t28 -68v-320q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h96v192h-512v-192h96q40 0 68 -28t28 -68v-320 +q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h96v192q0 52 38 90t90 38h512v192h-96q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h320q40 0 68 -28t28 -68v-320q0 -40 -28 -68t-68 -28h-96v-192h512q52 0 90 -38t38 -90v-192h96q40 0 68 -28t28 -68 +z" /> + <glyph glyph-name="umbrella" unicode="" horiz-adv-x="1664" +d="M896 708v-580q0 -104 -76 -180t-180 -76t-180 76t-76 180q0 26 19 45t45 19t45 -19t19 -45q0 -50 39 -89t89 -39t89 39t39 89v580q33 11 64 11t64 -11zM1664 681q0 -13 -9.5 -22.5t-22.5 -9.5q-11 0 -23 10q-49 46 -93 69t-102 23q-68 0 -128 -37t-103 -97 +q-7 -10 -17.5 -28t-14.5 -24q-11 -17 -28 -17q-18 0 -29 17q-4 6 -14.5 24t-17.5 28q-43 60 -102.5 97t-127.5 37t-127.5 -37t-102.5 -97q-7 -10 -17.5 -28t-14.5 -24q-11 -17 -29 -17q-17 0 -28 17q-4 6 -14.5 24t-17.5 28q-43 60 -103 97t-128 37q-58 0 -102 -23t-93 -69 +q-12 -10 -23 -10q-13 0 -22.5 9.5t-9.5 22.5q0 5 1 7q45 183 172.5 319.5t298 204.5t360.5 68q140 0 274.5 -40t246.5 -113.5t194.5 -187t115.5 -251.5q1 -2 1 -7zM896 1408v-98q-42 2 -64 2t-64 -2v98q0 26 19 45t45 19t45 -19t19 -45z" /> + <glyph glyph-name="paste" unicode="" horiz-adv-x="1792" +d="M768 -128h896v640h-416q-40 0 -68 28t-28 68v416h-384v-1152zM1024 1312v64q0 13 -9.5 22.5t-22.5 9.5h-704q-13 0 -22.5 -9.5t-9.5 -22.5v-64q0 -13 9.5 -22.5t22.5 -9.5h704q13 0 22.5 9.5t9.5 22.5zM1280 640h299l-299 299v-299zM1792 512v-672q0 -40 -28 -68t-68 -28 +h-960q-40 0 -68 28t-28 68v160h-544q-40 0 -68 28t-28 68v1344q0 40 28 68t68 28h1088q40 0 68 -28t28 -68v-328q21 -13 36 -28l408 -408q28 -28 48 -76t20 -88z" /> + <glyph glyph-name="light_bulb" unicode="" horiz-adv-x="1024" +d="M736 960q0 -13 -9.5 -22.5t-22.5 -9.5t-22.5 9.5t-9.5 22.5q0 46 -54 71t-106 25q-13 0 -22.5 9.5t-9.5 22.5t9.5 22.5t22.5 9.5q50 0 99.5 -16t87 -54t37.5 -90zM896 960q0 72 -34.5 134t-90 101.5t-123 62t-136.5 22.5t-136.5 -22.5t-123 -62t-90 -101.5t-34.5 -134 +q0 -101 68 -180q10 -11 30.5 -33t30.5 -33q128 -153 141 -298h228q13 145 141 298q10 11 30.5 33t30.5 33q68 79 68 180zM1024 960q0 -155 -103 -268q-45 -49 -74.5 -87t-59.5 -95.5t-34 -107.5q47 -28 47 -82q0 -37 -25 -64q25 -27 25 -64q0 -52 -45 -81q13 -23 13 -47 +q0 -46 -31.5 -71t-77.5 -25q-20 -44 -60 -70t-87 -26t-87 26t-60 70q-46 0 -77.5 25t-31.5 71q0 24 13 47q-45 29 -45 81q0 37 25 64q-25 27 -25 64q0 54 47 82q-4 50 -34 107.5t-59.5 95.5t-74.5 87q-103 113 -103 268q0 99 44.5 184.5t117 142t164 89t186.5 32.5 +t186.5 -32.5t164 -89t117 -142t44.5 -184.5z" /> + <glyph glyph-name="exchange" unicode="" horiz-adv-x="1792" +d="M1792 352v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1376v-192q0 -13 -9.5 -22.5t-22.5 -9.5q-12 0 -24 10l-319 320q-9 9 -9 22q0 14 9 23l320 320q9 9 23 9q13 0 22.5 -9.5t9.5 -22.5v-192h1376q13 0 22.5 -9.5t9.5 -22.5zM1792 896q0 -14 -9 -23l-320 -320q-9 -9 -23 -9 +q-13 0 -22.5 9.5t-9.5 22.5v192h-1376q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1376v192q0 14 9 23t23 9q12 0 24 -10l319 -319q9 -9 9 -23z" /> + <glyph glyph-name="cloud_download" unicode="" horiz-adv-x="1920" +d="M1280 608q0 14 -9 23t-23 9h-224v352q0 13 -9.5 22.5t-22.5 9.5h-192q-13 0 -22.5 -9.5t-9.5 -22.5v-352h-224q-13 0 -22.5 -9.5t-9.5 -22.5q0 -14 9 -23l352 -352q9 -9 23 -9t23 9l351 351q10 12 10 24zM1920 384q0 -159 -112.5 -271.5t-271.5 -112.5h-1088 +q-185 0 -316.5 131.5t-131.5 316.5q0 130 70 240t188 165q-2 30 -2 43q0 212 150 362t362 150q156 0 285.5 -87t188.5 -231q71 62 166 62q106 0 181 -75t75 -181q0 -76 -41 -138q130 -31 213.5 -135.5t83.5 -238.5z" /> + <glyph glyph-name="cloud_upload" unicode="" horiz-adv-x="1920" +d="M1280 672q0 14 -9 23l-352 352q-9 9 -23 9t-23 -9l-351 -351q-10 -12 -10 -24q0 -14 9 -23t23 -9h224v-352q0 -13 9.5 -22.5t22.5 -9.5h192q13 0 22.5 9.5t9.5 22.5v352h224q13 0 22.5 9.5t9.5 22.5zM1920 384q0 -159 -112.5 -271.5t-271.5 -112.5h-1088 +q-185 0 -316.5 131.5t-131.5 316.5q0 130 70 240t188 165q-2 30 -2 43q0 212 150 362t362 150q156 0 285.5 -87t188.5 -231q71 62 166 62q106 0 181 -75t75 -181q0 -76 -41 -138q130 -31 213.5 -135.5t83.5 -238.5z" /> + <glyph glyph-name="user_md" unicode="" horiz-adv-x="1408" +d="M384 192q0 -26 -19 -45t-45 -19t-45 19t-19 45t19 45t45 19t45 -19t19 -45zM1408 131q0 -121 -73 -190t-194 -69h-874q-121 0 -194 69t-73 190q0 68 5.5 131t24 138t47.5 132.5t81 103t120 60.5q-22 -52 -22 -120v-203q-58 -20 -93 -70t-35 -111q0 -80 56 -136t136 -56 +t136 56t56 136q0 61 -35.5 111t-92.5 70v203q0 62 25 93q132 -104 295 -104t295 104q25 -31 25 -93v-64q-106 0 -181 -75t-75 -181v-89q-32 -29 -32 -71q0 -40 28 -68t68 -28t68 28t28 68q0 42 -32 71v89q0 52 38 90t90 38t90 -38t38 -90v-89q-32 -29 -32 -71q0 -40 28 -68 +t68 -28t68 28t28 68q0 42 -32 71v89q0 68 -34.5 127.5t-93.5 93.5q0 10 0.5 42.5t0 48t-2.5 41.5t-7 47t-13 40q68 -15 120 -60.5t81 -103t47.5 -132.5t24 -138t5.5 -131zM1088 1024q0 -159 -112.5 -271.5t-271.5 -112.5t-271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5 +t271.5 -112.5t112.5 -271.5z" /> + <glyph glyph-name="stethoscope" unicode="" horiz-adv-x="1408" +d="M1280 832q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1408 832q0 -62 -35.5 -111t-92.5 -70v-395q0 -159 -131.5 -271.5t-316.5 -112.5t-316.5 112.5t-131.5 271.5v132q-164 20 -274 128t-110 252v512q0 26 19 45t45 19q6 0 16 -2q17 30 47 48 +t65 18q53 0 90.5 -37.5t37.5 -90.5t-37.5 -90.5t-90.5 -37.5q-33 0 -64 18v-402q0 -106 94 -181t226 -75t226 75t94 181v402q-31 -18 -64 -18q-53 0 -90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5q35 0 65 -18t47 -48q10 2 16 2q26 0 45 -19t19 -45v-512q0 -144 -110 -252 +t-274 -128v-132q0 -106 94 -181t226 -75t226 75t94 181v395q-57 21 -92.5 70t-35.5 111q0 80 56 136t136 56t136 -56t56 -136z" /> + <glyph glyph-name="suitcase" unicode="" horiz-adv-x="1792" +d="M640 1152h512v128h-512v-128zM288 1152v-1280h-64q-92 0 -158 66t-66 158v832q0 92 66 158t158 66h64zM1408 1152v-1280h-1024v1280h128v160q0 40 28 68t68 28h576q40 0 68 -28t28 -68v-160h128zM1792 928v-832q0 -92 -66 -158t-158 -66h-64v1280h64q92 0 158 -66 +t66 -158z" /> + <glyph glyph-name="bell_alt" unicode="" horiz-adv-x="1792" +d="M912 -160q0 16 -16 16q-59 0 -101.5 42.5t-42.5 101.5q0 16 -16 16t-16 -16q0 -73 51.5 -124.5t124.5 -51.5q16 0 16 16zM1728 128q0 -52 -38 -90t-90 -38h-448q0 -106 -75 -181t-181 -75t-181 75t-75 181h-448q-52 0 -90 38t-38 90q50 42 91 88t85 119.5t74.5 158.5 +t50 206t19.5 260q0 152 117 282.5t307 158.5q-8 19 -8 39q0 40 28 68t68 28t68 -28t28 -68q0 -20 -8 -39q190 -28 307 -158.5t117 -282.5q0 -139 19.5 -260t50 -206t74.5 -158.5t85 -119.5t91 -88z" /> + <glyph glyph-name="coffee" unicode="" horiz-adv-x="1920" +d="M1664 896q0 80 -56 136t-136 56h-64v-384h64q80 0 136 56t56 136zM0 128h1792q0 -106 -75 -181t-181 -75h-1280q-106 0 -181 75t-75 181zM1856 896q0 -159 -112.5 -271.5t-271.5 -112.5h-64v-32q0 -92 -66 -158t-158 -66h-704q-92 0 -158 66t-66 158v736q0 26 19 45 +t45 19h1152q159 0 271.5 -112.5t112.5 -271.5z" /> + <glyph glyph-name="food" unicode="" horiz-adv-x="1408" +d="M640 1472v-640q0 -61 -35.5 -111t-92.5 -70v-779q0 -52 -38 -90t-90 -38h-128q-52 0 -90 38t-38 90v779q-57 20 -92.5 70t-35.5 111v640q0 26 19 45t45 19t45 -19t19 -45v-416q0 -26 19 -45t45 -19t45 19t19 45v416q0 26 19 45t45 19t45 -19t19 -45v-416q0 -26 19 -45 +t45 -19t45 19t19 45v416q0 26 19 45t45 19t45 -19t19 -45zM1408 1472v-1600q0 -52 -38 -90t-90 -38h-128q-52 0 -90 38t-38 90v512h-224q-13 0 -22.5 9.5t-9.5 22.5v800q0 132 94 226t226 94h256q26 0 45 -19t19 -45z" /> + <glyph glyph-name="file_text_alt" unicode="" +d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z +M384 736q0 14 9 23t23 9h704q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-704q-14 0 -23 9t-9 23v64zM1120 512q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-704q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h704zM1120 256q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-704 +q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h704z" /> + <glyph glyph-name="building" unicode="" horiz-adv-x="1408" +d="M384 224v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z +M640 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z +M1152 224v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM896 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z +M640 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 992v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z +M1152 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM896 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z +M640 992v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 1248v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z +M1152 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM896 992v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z +M640 1248v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM1152 992v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z +M896 1248v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM1152 1248v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z +M896 -128h384v1536h-1152v-1536h384v224q0 13 9.5 22.5t22.5 9.5h320q13 0 22.5 -9.5t9.5 -22.5v-224zM1408 1472v-1664q0 -26 -19 -45t-45 -19h-1280q-26 0 -45 19t-19 45v1664q0 26 19 45t45 19h1280q26 0 45 -19t19 -45z" /> + <glyph glyph-name="hospital" unicode="" horiz-adv-x="1408" +d="M384 224v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z +M640 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z +M1152 224v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM896 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z +M640 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM1152 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z +M896 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM1152 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z +M896 -128h384v1152h-256v-32q0 -40 -28 -68t-68 -28h-448q-40 0 -68 28t-28 68v32h-256v-1152h384v224q0 13 9.5 22.5t22.5 9.5h320q13 0 22.5 -9.5t9.5 -22.5v-224zM896 1056v320q0 13 -9.5 22.5t-22.5 9.5h-64q-13 0 -22.5 -9.5t-9.5 -22.5v-96h-128v96q0 13 -9.5 22.5 +t-22.5 9.5h-64q-13 0 -22.5 -9.5t-9.5 -22.5v-320q0 -13 9.5 -22.5t22.5 -9.5h64q13 0 22.5 9.5t9.5 22.5v96h128v-96q0 -13 9.5 -22.5t22.5 -9.5h64q13 0 22.5 9.5t9.5 22.5zM1408 1088v-1280q0 -26 -19 -45t-45 -19h-1280q-26 0 -45 19t-19 45v1280q0 26 19 45t45 19h320 +v288q0 40 28 68t68 28h448q40 0 68 -28t28 -68v-288h320q26 0 45 -19t19 -45z" /> + <glyph glyph-name="ambulance" unicode="" horiz-adv-x="1920" +d="M640 128q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM256 640h384v256h-158q-14 -2 -22 -9l-195 -195q-7 -12 -9 -22v-30zM1536 128q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5 +t90.5 37.5t37.5 90.5zM1664 800v192q0 14 -9 23t-23 9h-224v224q0 14 -9 23t-23 9h-192q-14 0 -23 -9t-9 -23v-224h-224q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h224v-224q0 -14 9 -23t23 -9h192q14 0 23 9t9 23v224h224q14 0 23 9t9 23zM1920 1344v-1152 +q0 -26 -19 -45t-45 -19h-192q0 -106 -75 -181t-181 -75t-181 75t-75 181h-384q0 -106 -75 -181t-181 -75t-181 75t-75 181h-128q-26 0 -45 19t-19 45t19 45t45 19v416q0 26 13 58t32 51l198 198q19 19 51 32t58 13h160v320q0 26 19 45t45 19h1152q26 0 45 -19t19 -45z" /> + <glyph glyph-name="medkit" unicode="" horiz-adv-x="1792" +d="M1280 416v192q0 14 -9 23t-23 9h-224v224q0 14 -9 23t-23 9h-192q-14 0 -23 -9t-9 -23v-224h-224q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h224v-224q0 -14 9 -23t23 -9h192q14 0 23 9t9 23v224h224q14 0 23 9t9 23zM640 1152h512v128h-512v-128zM256 1152v-1280h-32 +q-92 0 -158 66t-66 158v832q0 92 66 158t158 66h32zM1440 1152v-1280h-1088v1280h160v160q0 40 28 68t68 28h576q40 0 68 -28t28 -68v-160h160zM1792 928v-832q0 -92 -66 -158t-158 -66h-32v1280h32q92 0 158 -66t66 -158z" /> + <glyph glyph-name="fighter_jet" unicode="" horiz-adv-x="1920" +d="M1920 576q-1 -32 -288 -96l-352 -32l-224 -64h-64l-293 -352h69q26 0 45 -4.5t19 -11.5t-19 -11.5t-45 -4.5h-96h-160h-64v32h64v416h-160l-192 -224h-96l-32 32v192h32v32h128v8l-192 24v128l192 24v8h-128v32h-32v192l32 32h96l192 -224h160v416h-64v32h64h160h96 +q26 0 45 -4.5t19 -11.5t-19 -11.5t-45 -4.5h-69l293 -352h64l224 -64l352 -32q128 -28 200 -52t80 -34z" /> + <glyph glyph-name="beer" unicode="" horiz-adv-x="1664" +d="M640 640v384h-256v-256q0 -53 37.5 -90.5t90.5 -37.5h128zM1664 192v-192h-1152v192l128 192h-128q-159 0 -271.5 112.5t-112.5 271.5v320l-64 64l32 128h480l32 128h960l32 -192l-64 -32v-800z" /> + <glyph glyph-name="h_sign" unicode="" +d="M1280 192v896q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-320h-512v320q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-896q0 -26 19 -45t45 -19h128q26 0 45 19t19 45v320h512v-320q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM1536 1120v-960 +q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="f0fe" unicode="" +d="M1280 576v128q0 26 -19 45t-45 19h-320v320q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-320h-320q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h320v-320q0 -26 19 -45t45 -19h128q26 0 45 19t19 45v320h320q26 0 45 19t19 45zM1536 1120v-960 +q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="double_angle_left" unicode="" horiz-adv-x="1024" +d="M627 160q0 -13 -10 -23l-50 -50q-10 -10 -23 -10t-23 10l-466 466q-10 10 -10 23t10 23l466 466q10 10 23 10t23 -10l50 -50q10 -10 10 -23t-10 -23l-393 -393l393 -393q10 -10 10 -23zM1011 160q0 -13 -10 -23l-50 -50q-10 -10 -23 -10t-23 10l-466 466q-10 10 -10 23 +t10 23l466 466q10 10 23 10t23 -10l50 -50q10 -10 10 -23t-10 -23l-393 -393l393 -393q10 -10 10 -23z" /> + <glyph glyph-name="double_angle_right" unicode="" horiz-adv-x="1024" +d="M595 576q0 -13 -10 -23l-466 -466q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23l393 393l-393 393q-10 10 -10 23t10 23l50 50q10 10 23 10t23 -10l466 -466q10 -10 10 -23zM979 576q0 -13 -10 -23l-466 -466q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23 +l393 393l-393 393q-10 10 -10 23t10 23l50 50q10 10 23 10t23 -10l466 -466q10 -10 10 -23z" /> + <glyph glyph-name="double_angle_up" unicode="" horiz-adv-x="1152" +d="M1075 224q0 -13 -10 -23l-50 -50q-10 -10 -23 -10t-23 10l-393 393l-393 -393q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23l466 466q10 10 23 10t23 -10l466 -466q10 -10 10 -23zM1075 608q0 -13 -10 -23l-50 -50q-10 -10 -23 -10t-23 10l-393 393l-393 -393 +q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23l466 466q10 10 23 10t23 -10l466 -466q10 -10 10 -23z" /> + <glyph glyph-name="double_angle_down" unicode="" horiz-adv-x="1152" +d="M1075 672q0 -13 -10 -23l-466 -466q-10 -10 -23 -10t-23 10l-466 466q-10 10 -10 23t10 23l50 50q10 10 23 10t23 -10l393 -393l393 393q10 10 23 10t23 -10l50 -50q10 -10 10 -23zM1075 1056q0 -13 -10 -23l-466 -466q-10 -10 -23 -10t-23 10l-466 466q-10 10 -10 23 +t10 23l50 50q10 10 23 10t23 -10l393 -393l393 393q10 10 23 10t23 -10l50 -50q10 -10 10 -23z" /> + <glyph glyph-name="angle_left" unicode="" horiz-adv-x="640" +d="M627 992q0 -13 -10 -23l-393 -393l393 -393q10 -10 10 -23t-10 -23l-50 -50q-10 -10 -23 -10t-23 10l-466 466q-10 10 -10 23t10 23l466 466q10 10 23 10t23 -10l50 -50q10 -10 10 -23z" /> + <glyph glyph-name="angle_right" unicode="" horiz-adv-x="640" +d="M595 576q0 -13 -10 -23l-466 -466q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23l393 393l-393 393q-10 10 -10 23t10 23l50 50q10 10 23 10t23 -10l466 -466q10 -10 10 -23z" /> + <glyph glyph-name="angle_up" unicode="" horiz-adv-x="1152" +d="M1075 352q0 -13 -10 -23l-50 -50q-10 -10 -23 -10t-23 10l-393 393l-393 -393q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23l466 466q10 10 23 10t23 -10l466 -466q10 -10 10 -23z" /> + <glyph glyph-name="angle_down" unicode="" horiz-adv-x="1152" +d="M1075 800q0 -13 -10 -23l-466 -466q-10 -10 -23 -10t-23 10l-466 466q-10 10 -10 23t10 23l50 50q10 10 23 10t23 -10l393 -393l393 393q10 10 23 10t23 -10l50 -50q10 -10 10 -23z" /> + <glyph glyph-name="desktop" unicode="" horiz-adv-x="1920" +d="M1792 544v832q0 13 -9.5 22.5t-22.5 9.5h-1600q-13 0 -22.5 -9.5t-9.5 -22.5v-832q0 -13 9.5 -22.5t22.5 -9.5h1600q13 0 22.5 9.5t9.5 22.5zM1920 1376v-1088q0 -66 -47 -113t-113 -47h-544q0 -37 16 -77.5t32 -71t16 -43.5q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19 +t-19 45q0 14 16 44t32 70t16 78h-544q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h1600q66 0 113 -47t47 -113z" /> + <glyph glyph-name="laptop" unicode="" horiz-adv-x="1920" +d="M416 256q-66 0 -113 47t-47 113v704q0 66 47 113t113 47h1088q66 0 113 -47t47 -113v-704q0 -66 -47 -113t-113 -47h-1088zM384 1120v-704q0 -13 9.5 -22.5t22.5 -9.5h1088q13 0 22.5 9.5t9.5 22.5v704q0 13 -9.5 22.5t-22.5 9.5h-1088q-13 0 -22.5 -9.5t-9.5 -22.5z +M1760 192h160v-96q0 -40 -47 -68t-113 -28h-1600q-66 0 -113 28t-47 68v96h160h1600zM1040 96q16 0 16 16t-16 16h-160q-16 0 -16 -16t16 -16h160z" /> + <glyph glyph-name="tablet" unicode="" horiz-adv-x="1152" +d="M640 128q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1024 288v960q0 13 -9.5 22.5t-22.5 9.5h-832q-13 0 -22.5 -9.5t-9.5 -22.5v-960q0 -13 9.5 -22.5t22.5 -9.5h832q13 0 22.5 9.5t9.5 22.5zM1152 1248v-1088q0 -66 -47 -113t-113 -47h-832 +q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h832q66 0 113 -47t47 -113z" /> + <glyph glyph-name="mobile_phone" unicode="" horiz-adv-x="768" +d="M464 128q0 33 -23.5 56.5t-56.5 23.5t-56.5 -23.5t-23.5 -56.5t23.5 -56.5t56.5 -23.5t56.5 23.5t23.5 56.5zM672 288v704q0 13 -9.5 22.5t-22.5 9.5h-512q-13 0 -22.5 -9.5t-9.5 -22.5v-704q0 -13 9.5 -22.5t22.5 -9.5h512q13 0 22.5 9.5t9.5 22.5zM480 1136 +q0 16 -16 16h-160q-16 0 -16 -16t16 -16h160q16 0 16 16zM768 1152v-1024q0 -52 -38 -90t-90 -38h-512q-52 0 -90 38t-38 90v1024q0 52 38 90t90 38h512q52 0 90 -38t38 -90z" /> + <glyph glyph-name="circle_blank" unicode="" +d="M768 1184q-148 0 -273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273t-73 273t-198 198t-273 73zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103 +t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="quote_left" unicode="" horiz-adv-x="1664" +d="M768 576v-384q0 -80 -56 -136t-136 -56h-384q-80 0 -136 56t-56 136v704q0 104 40.5 198.5t109.5 163.5t163.5 109.5t198.5 40.5h64q26 0 45 -19t19 -45v-128q0 -26 -19 -45t-45 -19h-64q-106 0 -181 -75t-75 -181v-32q0 -40 28 -68t68 -28h224q80 0 136 -56t56 -136z +M1664 576v-384q0 -80 -56 -136t-136 -56h-384q-80 0 -136 56t-56 136v704q0 104 40.5 198.5t109.5 163.5t163.5 109.5t198.5 40.5h64q26 0 45 -19t19 -45v-128q0 -26 -19 -45t-45 -19h-64q-106 0 -181 -75t-75 -181v-32q0 -40 28 -68t68 -28h224q80 0 136 -56t56 -136z" /> + <glyph glyph-name="quote_right" unicode="" horiz-adv-x="1664" +d="M768 1216v-704q0 -104 -40.5 -198.5t-109.5 -163.5t-163.5 -109.5t-198.5 -40.5h-64q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h64q106 0 181 75t75 181v32q0 40 -28 68t-68 28h-224q-80 0 -136 56t-56 136v384q0 80 56 136t136 56h384q80 0 136 -56t56 -136zM1664 1216 +v-704q0 -104 -40.5 -198.5t-109.5 -163.5t-163.5 -109.5t-198.5 -40.5h-64q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h64q106 0 181 75t75 181v32q0 40 -28 68t-68 28h-224q-80 0 -136 56t-56 136v384q0 80 56 136t136 56h384q80 0 136 -56t56 -136z" /> + <glyph glyph-name="spinner" unicode="" horiz-adv-x="1792" +d="M526 142q0 -53 -37.5 -90.5t-90.5 -37.5q-52 0 -90 38t-38 90q0 53 37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1024 -64q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM320 640q0 -53 -37.5 -90.5t-90.5 -37.5 +t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1522 142q0 -52 -38 -90t-90 -38q-53 0 -90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM558 1138q0 -66 -47 -113t-113 -47t-113 47t-47 113t47 113t113 47t113 -47t47 -113z +M1728 640q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1088 1344q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM1618 1138q0 -93 -66 -158.5t-158 -65.5q-93 0 -158.5 65.5t-65.5 158.5 +q0 92 65.5 158t158.5 66q92 0 158 -66t66 -158z" /> + <glyph glyph-name="circle" unicode="" +d="M1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="reply" unicode="" horiz-adv-x="1792" +d="M1792 416q0 -166 -127 -451q-3 -7 -10.5 -24t-13.5 -30t-13 -22q-12 -17 -28 -17q-15 0 -23.5 10t-8.5 25q0 9 2.5 26.5t2.5 23.5q5 68 5 123q0 101 -17.5 181t-48.5 138.5t-80 101t-105.5 69.5t-133 42.5t-154 21.5t-175.5 6h-224v-256q0 -26 -19 -45t-45 -19t-45 19 +l-512 512q-19 19 -19 45t19 45l512 512q19 19 45 19t45 -19t19 -45v-256h224q713 0 875 -403q53 -134 53 -333z" /> + <glyph glyph-name="github_alt" unicode="" horiz-adv-x="1664" +d="M640 320q0 -40 -12.5 -82t-43 -76t-72.5 -34t-72.5 34t-43 76t-12.5 82t12.5 82t43 76t72.5 34t72.5 -34t43 -76t12.5 -82zM1280 320q0 -40 -12.5 -82t-43 -76t-72.5 -34t-72.5 34t-43 76t-12.5 82t12.5 82t43 76t72.5 34t72.5 -34t43 -76t12.5 -82zM1440 320 +q0 120 -69 204t-187 84q-41 0 -195 -21q-71 -11 -157 -11t-157 11q-152 21 -195 21q-118 0 -187 -84t-69 -204q0 -88 32 -153.5t81 -103t122 -60t140 -29.5t149 -7h168q82 0 149 7t140 29.5t122 60t81 103t32 153.5zM1664 496q0 -207 -61 -331q-38 -77 -105.5 -133t-141 -86 +t-170 -47.5t-171.5 -22t-167 -4.5q-78 0 -142 3t-147.5 12.5t-152.5 30t-137 51.5t-121 81t-86 115q-62 123 -62 331q0 237 136 396q-27 82 -27 170q0 116 51 218q108 0 190 -39.5t189 -123.5q147 35 309 35q148 0 280 -32q105 82 187 121t189 39q51 -102 51 -218 +q0 -87 -27 -168q136 -160 136 -398z" /> + <glyph glyph-name="folder_close_alt" unicode="" horiz-adv-x="1664" +d="M1536 224v704q0 40 -28 68t-68 28h-704q-40 0 -68 28t-28 68v64q0 40 -28 68t-68 28h-320q-40 0 -68 -28t-28 -68v-960q0 -40 28 -68t68 -28h1216q40 0 68 28t28 68zM1664 928v-704q0 -92 -66 -158t-158 -66h-1216q-92 0 -158 66t-66 158v960q0 92 66 158t158 66h320 +q92 0 158 -66t66 -158v-32h672q92 0 158 -66t66 -158z" /> + <glyph glyph-name="folder_open_alt" unicode="" horiz-adv-x="1920" +d="M1781 605q0 35 -53 35h-1088q-40 0 -85.5 -21.5t-71.5 -52.5l-294 -363q-18 -24 -18 -40q0 -35 53 -35h1088q40 0 86 22t71 53l294 363q18 22 18 39zM640 768h768v160q0 40 -28 68t-68 28h-576q-40 0 -68 28t-28 68v64q0 40 -28 68t-68 28h-320q-40 0 -68 -28t-28 -68 +v-853l256 315q44 53 116 87.5t140 34.5zM1909 605q0 -62 -46 -120l-295 -363q-43 -53 -116 -87.5t-140 -34.5h-1088q-92 0 -158 66t-66 158v960q0 92 66 158t158 66h320q92 0 158 -66t66 -158v-32h544q92 0 158 -66t66 -158v-160h192q54 0 99 -24.5t67 -70.5q15 -32 15 -68z +" /> + <glyph glyph-name="expand_alt" unicode="" horiz-adv-x="1792" + /> + <glyph glyph-name="collapse_alt" unicode="" horiz-adv-x="1792" + /> + <glyph glyph-name="smile" unicode="" +d="M1134 461q-37 -121 -138 -195t-228 -74t-228 74t-138 195q-8 25 4 48.5t38 31.5q25 8 48.5 -4t31.5 -38q25 -80 92.5 -129.5t151.5 -49.5t151.5 49.5t92.5 129.5q8 26 32 38t49 4t37 -31.5t4 -48.5zM640 896q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5 +t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1152 896q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1408 640q0 130 -51 248.5t-136.5 204t-204 136.5t-248.5 51t-248.5 -51t-204 -136.5t-136.5 -204t-51 -248.5 +t51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5t136.5 204t51 248.5zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="frown" unicode="" +d="M1134 307q8 -25 -4 -48.5t-37 -31.5t-49 4t-32 38q-25 80 -92.5 129.5t-151.5 49.5t-151.5 -49.5t-92.5 -129.5q-8 -26 -31.5 -38t-48.5 -4q-26 8 -38 31.5t-4 48.5q37 121 138 195t228 74t228 -74t138 -195zM640 896q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5 +t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1152 896q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1408 640q0 130 -51 248.5t-136.5 204t-204 136.5t-248.5 51t-248.5 -51t-204 -136.5t-136.5 -204 +t-51 -248.5t51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5t136.5 204t51 248.5zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="meh" unicode="" +d="M1152 448q0 -26 -19 -45t-45 -19h-640q-26 0 -45 19t-19 45t19 45t45 19h640q26 0 45 -19t19 -45zM640 896q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1152 896q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5 +t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1408 640q0 130 -51 248.5t-136.5 204t-204 136.5t-248.5 51t-248.5 -51t-204 -136.5t-136.5 -204t-51 -248.5t51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5t136.5 204t51 248.5zM1536 640 +q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="gamepad" unicode="" horiz-adv-x="1920" +d="M832 448v128q0 14 -9 23t-23 9h-192v192q0 14 -9 23t-23 9h-128q-14 0 -23 -9t-9 -23v-192h-192q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h192v-192q0 -14 9 -23t23 -9h128q14 0 23 9t9 23v192h192q14 0 23 9t9 23zM1408 384q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5 +t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1664 640q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1920 512q0 -212 -150 -362t-362 -150q-192 0 -338 128h-220q-146 -128 -338 -128q-212 0 -362 150 +t-150 362t150 362t362 150h896q212 0 362 -150t150 -362z" /> + <glyph glyph-name="keyboard" unicode="" horiz-adv-x="1920" +d="M384 368v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM512 624v-96q0 -16 -16 -16h-224q-16 0 -16 16v96q0 16 16 16h224q16 0 16 -16zM384 880v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM1408 368v-96q0 -16 -16 -16 +h-864q-16 0 -16 16v96q0 16 16 16h864q16 0 16 -16zM768 624v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM640 880v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM1024 624v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16 +h96q16 0 16 -16zM896 880v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM1280 624v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM1664 368v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM1152 880v-96 +q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM1408 880v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM1664 880v-352q0 -16 -16 -16h-224q-16 0 -16 16v96q0 16 16 16h112v240q0 16 16 16h96q16 0 16 -16zM1792 128v896h-1664v-896 +h1664zM1920 1024v-896q0 -53 -37.5 -90.5t-90.5 -37.5h-1664q-53 0 -90.5 37.5t-37.5 90.5v896q0 53 37.5 90.5t90.5 37.5h1664q53 0 90.5 -37.5t37.5 -90.5z" /> + <glyph glyph-name="flag_alt" unicode="" horiz-adv-x="1792" +d="M1664 491v616q-169 -91 -306 -91q-82 0 -145 32q-100 49 -184 76.5t-178 27.5q-173 0 -403 -127v-599q245 113 433 113q55 0 103.5 -7.5t98 -26t77 -31t82.5 -39.5l28 -14q44 -22 101 -22q120 0 293 92zM320 1280q0 -35 -17.5 -64t-46.5 -46v-1266q0 -14 -9 -23t-23 -9 +h-64q-14 0 -23 9t-9 23v1266q-29 17 -46.5 46t-17.5 64q0 53 37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1792 1216v-763q0 -39 -35 -57q-10 -5 -17 -9q-218 -116 -369 -116q-88 0 -158 35l-28 14q-64 33 -99 48t-91 29t-114 14q-102 0 -235.5 -44t-228.5 -102 +q-15 -9 -33 -9q-16 0 -32 8q-32 19 -32 56v742q0 35 31 55q35 21 78.5 42.5t114 52t152.5 49.5t155 19q112 0 209 -31t209 -86q38 -19 89 -19q122 0 310 112q22 12 31 17q31 16 62 -2q31 -20 31 -55z" /> + <glyph glyph-name="flag_checkered" unicode="" horiz-adv-x="1792" +d="M832 536v192q-181 -16 -384 -117v-185q205 96 384 110zM832 954v197q-172 -8 -384 -126v-189q215 111 384 118zM1664 491v184q-235 -116 -384 -71v224q-20 6 -39 15q-5 3 -33 17t-34.5 17t-31.5 15t-34.5 15.5t-32.5 13t-36 12.5t-35 8.5t-39.5 7.5t-39.5 4t-44 2 +q-23 0 -49 -3v-222h19q102 0 192.5 -29t197.5 -82q19 -9 39 -15v-188q42 -17 91 -17q120 0 293 92zM1664 918v189q-169 -91 -306 -91q-45 0 -78 8v-196q148 -42 384 90zM320 1280q0 -35 -17.5 -64t-46.5 -46v-1266q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v1266 +q-29 17 -46.5 46t-17.5 64q0 53 37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1792 1216v-763q0 -39 -35 -57q-10 -5 -17 -9q-218 -116 -369 -116q-88 0 -158 35l-28 14q-64 33 -99 48t-91 29t-114 14q-102 0 -235.5 -44t-228.5 -102q-15 -9 -33 -9q-16 0 -32 8 +q-32 19 -32 56v742q0 35 31 55q35 21 78.5 42.5t114 52t152.5 49.5t155 19q112 0 209 -31t209 -86q38 -19 89 -19q122 0 310 112q22 12 31 17q31 16 62 -2q31 -20 31 -55z" /> + <glyph glyph-name="terminal" unicode="" horiz-adv-x="1664" +d="M585 553l-466 -466q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23l393 393l-393 393q-10 10 -10 23t10 23l50 50q10 10 23 10t23 -10l466 -466q10 -10 10 -23t-10 -23zM1664 96v-64q0 -14 -9 -23t-23 -9h-960q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h960q14 0 23 -9 +t9 -23z" /> + <glyph glyph-name="code" unicode="" horiz-adv-x="1920" +d="M617 137l-50 -50q-10 -10 -23 -10t-23 10l-466 466q-10 10 -10 23t10 23l466 466q10 10 23 10t23 -10l50 -50q10 -10 10 -23t-10 -23l-393 -393l393 -393q10 -10 10 -23t-10 -23zM1208 1204l-373 -1291q-4 -13 -15.5 -19.5t-23.5 -2.5l-62 17q-13 4 -19.5 15.5t-2.5 24.5 +l373 1291q4 13 15.5 19.5t23.5 2.5l62 -17q13 -4 19.5 -15.5t2.5 -24.5zM1865 553l-466 -466q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23l393 393l-393 393q-10 10 -10 23t10 23l50 50q10 10 23 10t23 -10l466 -466q10 -10 10 -23t-10 -23z" /> + <glyph glyph-name="reply_all" unicode="" horiz-adv-x="1792" +d="M640 454v-70q0 -42 -39 -59q-13 -5 -25 -5q-27 0 -45 19l-512 512q-19 19 -19 45t19 45l512 512q29 31 70 14q39 -17 39 -59v-69l-397 -398q-19 -19 -19 -45t19 -45zM1792 416q0 -58 -17 -133.5t-38.5 -138t-48 -125t-40.5 -90.5l-20 -40q-8 -17 -28 -17q-6 0 -9 1 +q-25 8 -23 34q43 400 -106 565q-64 71 -170.5 110.5t-267.5 52.5v-251q0 -42 -39 -59q-13 -5 -25 -5q-27 0 -45 19l-512 512q-19 19 -19 45t19 45l512 512q29 31 70 14q39 -17 39 -59v-262q411 -28 599 -221q169 -173 169 -509z" /> + <glyph glyph-name="star_half_empty" unicode="" horiz-adv-x="1664" +d="M1186 579l257 250l-356 52l-66 10l-30 60l-159 322v-963l59 -31l318 -168l-60 355l-12 66zM1638 841l-363 -354l86 -500q5 -33 -6 -51.5t-34 -18.5q-17 0 -40 12l-449 236l-449 -236q-23 -12 -40 -12q-23 0 -34 18.5t-6 51.5l86 500l-364 354q-32 32 -23 59.5t54 34.5 +l502 73l225 455q20 41 49 41q28 0 49 -41l225 -455l502 -73q45 -7 54 -34.5t-24 -59.5z" /> + <glyph glyph-name="location_arrow" unicode="" horiz-adv-x="1408" +d="M1401 1187l-640 -1280q-17 -35 -57 -35q-5 0 -15 2q-22 5 -35.5 22.5t-13.5 39.5v576h-576q-22 0 -39.5 13.5t-22.5 35.5t4 42t29 30l1280 640q13 7 29 7q27 0 45 -19q15 -14 18.5 -34.5t-6.5 -39.5z" /> + <glyph glyph-name="crop" unicode="" horiz-adv-x="1664" +d="M557 256h595v595zM512 301l595 595h-595v-595zM1664 224v-192q0 -14 -9 -23t-23 -9h-224v-224q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v224h-864q-14 0 -23 9t-9 23v864h-224q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h224v224q0 14 9 23t23 9h192q14 0 23 -9t9 -23 +v-224h851l246 247q10 9 23 9t23 -9q9 -10 9 -23t-9 -23l-247 -246v-851h224q14 0 23 -9t9 -23z" /> + <glyph glyph-name="code_fork" unicode="" horiz-adv-x="1024" +d="M288 64q0 40 -28 68t-68 28t-68 -28t-28 -68t28 -68t68 -28t68 28t28 68zM288 1216q0 40 -28 68t-68 28t-68 -28t-28 -68t28 -68t68 -28t68 28t28 68zM928 1088q0 40 -28 68t-68 28t-68 -28t-28 -68t28 -68t68 -28t68 28t28 68zM1024 1088q0 -52 -26 -96.5t-70 -69.5 +q-2 -287 -226 -414q-67 -38 -203 -81q-128 -40 -169.5 -71t-41.5 -100v-26q44 -25 70 -69.5t26 -96.5q0 -80 -56 -136t-136 -56t-136 56t-56 136q0 52 26 96.5t70 69.5v820q-44 25 -70 69.5t-26 96.5q0 80 56 136t136 56t136 -56t56 -136q0 -52 -26 -96.5t-70 -69.5v-497 +q54 26 154 57q55 17 87.5 29.5t70.5 31t59 39.5t40.5 51t28 69.5t8.5 91.5q-44 25 -70 69.5t-26 96.5q0 80 56 136t136 56t136 -56t56 -136z" /> + <glyph glyph-name="unlink" unicode="" horiz-adv-x="1664" +d="M439 265l-256 -256q-11 -9 -23 -9t-23 9q-9 10 -9 23t9 23l256 256q10 9 23 9t23 -9q9 -10 9 -23t-9 -23zM608 224v-320q0 -14 -9 -23t-23 -9t-23 9t-9 23v320q0 14 9 23t23 9t23 -9t9 -23zM384 448q0 -14 -9 -23t-23 -9h-320q-14 0 -23 9t-9 23t9 23t23 9h320 +q14 0 23 -9t9 -23zM1648 320q0 -120 -85 -203l-147 -146q-83 -83 -203 -83q-121 0 -204 85l-334 335q-21 21 -42 56l239 18l273 -274q27 -27 68 -27.5t68 26.5l147 146q28 28 28 67q0 40 -28 68l-274 275l18 239q35 -21 56 -42l336 -336q84 -86 84 -204zM1031 1044l-239 -18 +l-273 274q-28 28 -68 28q-39 0 -68 -27l-147 -146q-28 -28 -28 -67q0 -40 28 -68l274 -274l-18 -240q-35 21 -56 42l-336 336q-84 86 -84 204q0 120 85 203l147 146q83 83 203 83q121 0 204 -85l334 -335q21 -21 42 -56zM1664 960q0 -14 -9 -23t-23 -9h-320q-14 0 -23 9 +t-9 23t9 23t23 9h320q14 0 23 -9t9 -23zM1120 1504v-320q0 -14 -9 -23t-23 -9t-23 9t-9 23v320q0 14 9 23t23 9t23 -9t9 -23zM1527 1353l-256 -256q-11 -9 -23 -9t-23 9q-9 10 -9 23t9 23l256 256q10 9 23 9t23 -9q9 -10 9 -23t-9 -23z" /> + <glyph glyph-name="question" unicode="" horiz-adv-x="1024" +d="M704 280v-240q0 -16 -12 -28t-28 -12h-240q-16 0 -28 12t-12 28v240q0 16 12 28t28 12h240q16 0 28 -12t12 -28zM1020 880q0 -54 -15.5 -101t-35 -76.5t-55 -59.5t-57.5 -43.5t-61 -35.5q-41 -23 -68.5 -65t-27.5 -67q0 -17 -12 -32.5t-28 -15.5h-240q-15 0 -25.5 18.5 +t-10.5 37.5v45q0 83 65 156.5t143 108.5q59 27 84 56t25 76q0 42 -46.5 74t-107.5 32q-65 0 -108 -29q-35 -25 -107 -115q-13 -16 -31 -16q-12 0 -25 8l-164 125q-13 10 -15.5 25t5.5 28q160 266 464 266q80 0 161 -31t146 -83t106 -127.5t41 -158.5z" /> + <glyph glyph-name="_279" unicode="" horiz-adv-x="640" +d="M640 192v-128q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h64v384h-64q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h384q26 0 45 -19t19 -45v-576h64q26 0 45 -19t19 -45zM512 1344v-192q0 -26 -19 -45t-45 -19h-256q-26 0 -45 19t-19 45v192 +q0 26 19 45t45 19h256q26 0 45 -19t19 -45z" /> + <glyph glyph-name="exclamation" unicode="" horiz-adv-x="640" +d="M512 288v-224q0 -26 -19 -45t-45 -19h-256q-26 0 -45 19t-19 45v224q0 26 19 45t45 19h256q26 0 45 -19t19 -45zM542 1344l-28 -768q-1 -26 -20.5 -45t-45.5 -19h-256q-26 0 -45.5 19t-20.5 45l-28 768q-1 26 17.5 45t44.5 19h320q26 0 44.5 -19t17.5 -45z" /> + <glyph glyph-name="superscript" unicode="" +d="M897 167v-167h-248l-159 252l-24 42q-8 9 -11 21h-3q-1 -3 -2.5 -6.5t-3.5 -8t-3 -6.5q-10 -20 -25 -44l-155 -250h-258v167h128l197 291l-185 272h-137v168h276l139 -228q2 -4 23 -42q8 -9 11 -21h3q3 9 11 21l25 42l140 228h257v-168h-125l-184 -267l204 -296h109z +M1534 846v-206h-514l-3 27q-4 28 -4 46q0 64 26 117t65 86.5t84 65t84 54.5t65 54t26 64q0 38 -29.5 62.5t-70.5 24.5q-51 0 -97 -39q-14 -11 -36 -38l-105 92q26 37 63 66q83 65 188 65q110 0 178 -59.5t68 -158.5q0 -56 -24.5 -103t-62 -76.5t-81.5 -58.5t-82 -50.5 +t-65.5 -51.5t-30.5 -63h232v80h126z" /> + <glyph glyph-name="subscript" unicode="" +d="M897 167v-167h-248l-159 252l-24 42q-8 9 -11 21h-3q-1 -3 -2.5 -6.5t-3.5 -8t-3 -6.5q-10 -20 -25 -44l-155 -250h-258v167h128l197 291l-185 272h-137v168h276l139 -228q2 -4 23 -42q8 -9 11 -21h3q3 9 11 21l25 42l140 228h257v-168h-125l-184 -267l204 -296h109z +M1536 -50v-206h-514l-4 27q-3 45 -3 46q0 64 26 117t65 86.5t84 65t84 54.5t65 54t26 64q0 38 -29.5 62.5t-70.5 24.5q-51 0 -97 -39q-14 -11 -36 -38l-105 92q26 37 63 66q80 65 188 65q110 0 178 -59.5t68 -158.5q0 -66 -34.5 -118.5t-84 -86t-99.5 -62.5t-87 -63t-41 -73 +h232v80h126z" /> + <glyph glyph-name="_283" unicode="" horiz-adv-x="1920" +d="M896 128l336 384h-768l-336 -384h768zM1909 1205q15 -34 9.5 -71.5t-30.5 -65.5l-896 -1024q-38 -44 -96 -44h-768q-38 0 -69.5 20.5t-47.5 54.5q-15 34 -9.5 71.5t30.5 65.5l896 1024q38 44 96 44h768q38 0 69.5 -20.5t47.5 -54.5z" /> + <glyph glyph-name="puzzle_piece" unicode="" horiz-adv-x="1664" +d="M1664 438q0 -81 -44.5 -135t-123.5 -54q-41 0 -77.5 17.5t-59 38t-56.5 38t-71 17.5q-110 0 -110 -124q0 -39 16 -115t15 -115v-5q-22 0 -33 -1q-34 -3 -97.5 -11.5t-115.5 -13.5t-98 -5q-61 0 -103 26.5t-42 83.5q0 37 17.5 71t38 56.5t38 59t17.5 77.5q0 79 -54 123.5 +t-135 44.5q-84 0 -143 -45.5t-59 -127.5q0 -43 15 -83t33.5 -64.5t33.5 -53t15 -50.5q0 -45 -46 -89q-37 -35 -117 -35q-95 0 -245 24q-9 2 -27.5 4t-27.5 4l-13 2q-1 0 -3 1q-2 0 -2 1v1024q2 -1 17.5 -3.5t34 -5t21.5 -3.5q150 -24 245 -24q80 0 117 35q46 44 46 89 +q0 22 -15 50.5t-33.5 53t-33.5 64.5t-15 83q0 82 59 127.5t144 45.5q80 0 134 -44.5t54 -123.5q0 -41 -17.5 -77.5t-38 -59t-38 -56.5t-17.5 -71q0 -57 42 -83.5t103 -26.5q64 0 180 15t163 17v-2q-1 -2 -3.5 -17.5t-5 -34t-3.5 -21.5q-24 -150 -24 -245q0 -80 35 -117 +q44 -46 89 -46q22 0 50.5 15t53 33.5t64.5 33.5t83 15q82 0 127.5 -59t45.5 -143z" /> + <glyph glyph-name="microphone" unicode="" horiz-adv-x="1152" +d="M1152 832v-128q0 -221 -147.5 -384.5t-364.5 -187.5v-132h256q26 0 45 -19t19 -45t-19 -45t-45 -19h-640q-26 0 -45 19t-19 45t19 45t45 19h256v132q-217 24 -364.5 187.5t-147.5 384.5v128q0 26 19 45t45 19t45 -19t19 -45v-128q0 -185 131.5 -316.5t316.5 -131.5 +t316.5 131.5t131.5 316.5v128q0 26 19 45t45 19t45 -19t19 -45zM896 1216v-512q0 -132 -94 -226t-226 -94t-226 94t-94 226v512q0 132 94 226t226 94t226 -94t94 -226z" /> + <glyph glyph-name="microphone_off" unicode="" horiz-adv-x="1408" +d="M271 591l-101 -101q-42 103 -42 214v128q0 26 19 45t45 19t45 -19t19 -45v-128q0 -53 15 -113zM1385 1193l-361 -361v-128q0 -132 -94 -226t-226 -94q-55 0 -109 19l-96 -96q97 -51 205 -51q185 0 316.5 131.5t131.5 316.5v128q0 26 19 45t45 19t45 -19t19 -45v-128 +q0 -221 -147.5 -384.5t-364.5 -187.5v-132h256q26 0 45 -19t19 -45t-19 -45t-45 -19h-640q-26 0 -45 19t-19 45t19 45t45 19h256v132q-125 13 -235 81l-254 -254q-10 -10 -23 -10t-23 10l-82 82q-10 10 -10 23t10 23l1234 1234q10 10 23 10t23 -10l82 -82q10 -10 10 -23 +t-10 -23zM1005 1325l-621 -621v512q0 132 94 226t226 94q102 0 184.5 -59t116.5 -152z" /> + <glyph glyph-name="shield" unicode="" horiz-adv-x="1280" +d="M1088 576v640h-448v-1137q119 63 213 137q235 184 235 360zM1280 1344v-768q0 -86 -33.5 -170.5t-83 -150t-118 -127.5t-126.5 -103t-121 -77.5t-89.5 -49.5t-42.5 -20q-12 -6 -26 -6t-26 6q-16 7 -42.5 20t-89.5 49.5t-121 77.5t-126.5 103t-118 127.5t-83 150 +t-33.5 170.5v768q0 26 19 45t45 19h1152q26 0 45 -19t19 -45z" /> + <glyph glyph-name="calendar_empty" unicode="" horiz-adv-x="1664" +d="M128 -128h1408v1024h-1408v-1024zM512 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1280 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1664 1152v-1280 +q0 -52 -38 -90t-90 -38h-1408q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h128v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h384v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h128q52 0 90 -38t38 -90z" /> + <glyph glyph-name="fire_extinguisher" unicode="" horiz-adv-x="1408" +d="M512 1344q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1408 1376v-320q0 -16 -12 -25q-8 -7 -20 -7q-4 0 -7 1l-448 96q-11 2 -18 11t-7 20h-256v-102q111 -23 183.5 -111t72.5 -203v-800q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19t-19 45v800 +q0 106 62.5 190.5t161.5 114.5v111h-32q-59 0 -115 -23.5t-91.5 -53t-66 -66.5t-40.5 -53.5t-14 -24.5q-17 -35 -57 -35q-16 0 -29 7q-23 12 -31.5 37t3.5 49q5 10 14.5 26t37.5 53.5t60.5 70t85 67t108.5 52.5q-25 42 -25 86q0 66 47 113t113 47t113 -47t47 -113 +q0 -33 -14 -64h302q0 11 7 20t18 11l448 96q3 1 7 1q12 0 20 -7q12 -9 12 -25z" /> + <glyph glyph-name="rocket" unicode="" horiz-adv-x="1664" +d="M1440 1088q0 40 -28 68t-68 28t-68 -28t-28 -68t28 -68t68 -28t68 28t28 68zM1664 1376q0 -249 -75.5 -430.5t-253.5 -360.5q-81 -80 -195 -176l-20 -379q-2 -16 -16 -26l-384 -224q-7 -4 -16 -4q-12 0 -23 9l-64 64q-13 14 -8 32l85 276l-281 281l-276 -85q-3 -1 -9 -1 +q-14 0 -23 9l-64 64q-17 19 -5 39l224 384q10 14 26 16l379 20q96 114 176 195q188 187 358 258t431 71q14 0 24 -9.5t10 -22.5z" /> + <glyph glyph-name="maxcdn" unicode="" horiz-adv-x="1792" +d="M1745 763l-164 -763h-334l178 832q13 56 -15 88q-27 33 -83 33h-169l-204 -953h-334l204 953h-286l-204 -953h-334l204 953l-153 327h1276q101 0 189.5 -40.5t147.5 -113.5q60 -73 81 -168.5t0 -194.5z" /> + <glyph glyph-name="chevron_sign_left" unicode="" +d="M909 141l102 102q19 19 19 45t-19 45l-307 307l307 307q19 19 19 45t-19 45l-102 102q-19 19 -45 19t-45 -19l-454 -454q-19 -19 -19 -45t19 -45l454 -454q19 -19 45 -19t45 19zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5 +t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="chevron_sign_right" unicode="" +d="M717 141l454 454q19 19 19 45t-19 45l-454 454q-19 19 -45 19t-45 -19l-102 -102q-19 -19 -19 -45t19 -45l307 -307l-307 -307q-19 -19 -19 -45t19 -45l102 -102q19 -19 45 -19t45 19zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5 +t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="chevron_sign_up" unicode="" +d="M1165 397l102 102q19 19 19 45t-19 45l-454 454q-19 19 -45 19t-45 -19l-454 -454q-19 -19 -19 -45t19 -45l102 -102q19 -19 45 -19t45 19l307 307l307 -307q19 -19 45 -19t45 19zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5 +t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="chevron_sign_down" unicode="" +d="M813 237l454 454q19 19 19 45t-19 45l-102 102q-19 19 -45 19t-45 -19l-307 -307l-307 307q-19 19 -45 19t-45 -19l-102 -102q-19 -19 -19 -45t19 -45l454 -454q19 -19 45 -19t45 19zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5 +t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="html5" unicode="" horiz-adv-x="1408" +d="M1130 939l16 175h-884l47 -534h612l-22 -228l-197 -53l-196 53l-13 140h-175l22 -278l362 -100h4v1l359 99l50 544h-644l-15 181h674zM0 1408h1408l-128 -1438l-578 -162l-574 162z" /> + <glyph glyph-name="css3" unicode="" horiz-adv-x="1792" +d="M275 1408h1505l-266 -1333l-804 -267l-698 267l71 356h297l-29 -147l422 -161l486 161l68 339h-1208l58 297h1209l38 191h-1208z" /> + <glyph glyph-name="anchor" unicode="" horiz-adv-x="1792" +d="M960 1280q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1792 352v-352q0 -22 -20 -30q-8 -2 -12 -2q-12 0 -23 9l-93 93q-119 -143 -318.5 -226.5t-429.5 -83.5t-429.5 83.5t-318.5 226.5l-93 -93q-9 -9 -23 -9q-4 0 -12 2q-20 8 -20 30v352 +q0 14 9 23t23 9h352q22 0 30 -20q8 -19 -7 -35l-100 -100q67 -91 189.5 -153.5t271.5 -82.5v647h-192q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h192v163q-58 34 -93 92.5t-35 128.5q0 106 75 181t181 75t181 -75t75 -181q0 -70 -35 -128.5t-93 -92.5v-163h192q26 0 45 -19 +t19 -45v-128q0 -26 -19 -45t-45 -19h-192v-647q149 20 271.5 82.5t189.5 153.5l-100 100q-15 16 -7 35q8 20 30 20h352q14 0 23 -9t9 -23z" /> + <glyph glyph-name="unlock_alt" unicode="" horiz-adv-x="1152" +d="M1056 768q40 0 68 -28t28 -68v-576q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68v576q0 40 28 68t68 28h32v320q0 185 131.5 316.5t316.5 131.5t316.5 -131.5t131.5 -316.5q0 -26 -19 -45t-45 -19h-64q-26 0 -45 19t-19 45q0 106 -75 181t-181 75t-181 -75t-75 -181 +v-320h736z" /> + <glyph glyph-name="bullseye" unicode="" +d="M1024 640q0 -106 -75 -181t-181 -75t-181 75t-75 181t75 181t181 75t181 -75t75 -181zM1152 640q0 159 -112.5 271.5t-271.5 112.5t-271.5 -112.5t-112.5 -271.5t112.5 -271.5t271.5 -112.5t271.5 112.5t112.5 271.5zM1280 640q0 -212 -150 -362t-362 -150t-362 150 +t-150 362t150 362t362 150t362 -150t150 -362zM1408 640q0 130 -51 248.5t-136.5 204t-204 136.5t-248.5 51t-248.5 -51t-204 -136.5t-136.5 -204t-51 -248.5t51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5t136.5 204t51 248.5zM1536 640 +q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="ellipsis_horizontal" unicode="" horiz-adv-x="1408" +d="M384 800v-192q0 -40 -28 -68t-68 -28h-192q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h192q40 0 68 -28t28 -68zM896 800v-192q0 -40 -28 -68t-68 -28h-192q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h192q40 0 68 -28t28 -68zM1408 800v-192q0 -40 -28 -68t-68 -28h-192 +q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h192q40 0 68 -28t28 -68z" /> + <glyph glyph-name="ellipsis_vertical" unicode="" horiz-adv-x="384" +d="M384 288v-192q0 -40 -28 -68t-68 -28h-192q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h192q40 0 68 -28t28 -68zM384 800v-192q0 -40 -28 -68t-68 -28h-192q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h192q40 0 68 -28t28 -68zM384 1312v-192q0 -40 -28 -68t-68 -28h-192 +q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h192q40 0 68 -28t28 -68z" /> + <glyph glyph-name="_303" unicode="" +d="M512 256q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM863 162q-13 233 -176.5 396.5t-396.5 176.5q-14 1 -24 -9t-10 -23v-128q0 -13 8.5 -22t21.5 -10q154 -11 264 -121t121 -264q1 -13 10 -21.5t22 -8.5h128 +q13 0 23 10t9 24zM1247 161q-5 154 -56 297.5t-139.5 260t-205 205t-260 139.5t-297.5 56q-14 1 -23 -9q-10 -10 -10 -23v-128q0 -13 9 -22t22 -10q204 -7 378 -111.5t278.5 -278.5t111.5 -378q1 -13 10 -22t22 -9h128q13 0 23 10q11 9 9 23zM1536 1120v-960 +q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="play_sign" unicode="" +d="M768 1408q209 0 385.5 -103t279.5 -279.5t103 -385.5t-103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103zM1152 585q32 18 32 55t-32 55l-544 320q-31 19 -64 1q-32 -19 -32 -56v-640q0 -37 32 -56 +q16 -8 32 -8q17 0 32 9z" /> + <glyph glyph-name="ticket" unicode="" horiz-adv-x="1792" +d="M1024 1084l316 -316l-572 -572l-316 316zM813 105l618 618q19 19 19 45t-19 45l-362 362q-18 18 -45 18t-45 -18l-618 -618q-19 -19 -19 -45t19 -45l362 -362q18 -18 45 -18t45 18zM1702 742l-907 -908q-37 -37 -90.5 -37t-90.5 37l-126 126q56 56 56 136t-56 136 +t-136 56t-136 -56l-125 126q-37 37 -37 90.5t37 90.5l907 906q37 37 90.5 37t90.5 -37l125 -125q-56 -56 -56 -136t56 -136t136 -56t136 56l126 -125q37 -37 37 -90.5t-37 -90.5z" /> + <glyph glyph-name="minus_sign_alt" unicode="" +d="M1280 576v128q0 26 -19 45t-45 19h-896q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h896q26 0 45 19t19 45zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5 +t84.5 -203.5z" /> + <glyph glyph-name="check_minus" unicode="" horiz-adv-x="1408" +d="M1152 736v-64q0 -14 -9 -23t-23 -9h-832q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h832q14 0 23 -9t9 -23zM1280 288v832q0 66 -47 113t-113 47h-832q-66 0 -113 -47t-47 -113v-832q0 -66 47 -113t113 -47h832q66 0 113 47t47 113zM1408 1120v-832q0 -119 -84.5 -203.5 +t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h832q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="level_up" unicode="" horiz-adv-x="1024" +d="M1018 933q-18 -37 -58 -37h-192v-864q0 -14 -9 -23t-23 -9h-704q-21 0 -29 18q-8 20 4 35l160 192q9 11 25 11h320v640h-192q-40 0 -58 37q-17 37 9 68l320 384q18 22 49 22t49 -22l320 -384q27 -32 9 -68z" /> + <glyph glyph-name="level_down" unicode="" horiz-adv-x="1024" +d="M32 1280h704q13 0 22.5 -9.5t9.5 -23.5v-863h192q40 0 58 -37t-9 -69l-320 -384q-18 -22 -49 -22t-49 22l-320 384q-26 31 -9 69q18 37 58 37h192v640h-320q-14 0 -25 11l-160 192q-13 14 -4 34q9 19 29 19z" /> + <glyph glyph-name="check_sign" unicode="" +d="M685 237l614 614q19 19 19 45t-19 45l-102 102q-19 19 -45 19t-45 -19l-467 -467l-211 211q-19 19 -45 19t-45 -19l-102 -102q-19 -19 -19 -45t19 -45l358 -358q19 -19 45 -19t45 19zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5 +t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="edit_sign" unicode="" +d="M404 428l152 -152l-52 -52h-56v96h-96v56zM818 818q14 -13 -3 -30l-291 -291q-17 -17 -30 -3q-14 13 3 30l291 291q17 17 30 3zM544 128l544 544l-288 288l-544 -544v-288h288zM1152 736l92 92q28 28 28 68t-28 68l-152 152q-28 28 -68 28t-68 -28l-92 -92zM1536 1120 +v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="_312" unicode="" +d="M1280 608v480q0 26 -19 45t-45 19h-480q-42 0 -59 -39q-17 -41 14 -70l144 -144l-534 -534q-19 -19 -19 -45t19 -45l102 -102q19 -19 45 -19t45 19l534 534l144 -144q18 -19 45 -19q12 0 25 5q39 17 39 59zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960 +q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="share_sign" unicode="" +d="M1005 435l352 352q19 19 19 45t-19 45l-352 352q-30 31 -69 14q-40 -17 -40 -59v-160q-119 0 -216 -19.5t-162.5 -51t-114 -79t-76.5 -95.5t-44.5 -109t-21.5 -111.5t-5 -110.5q0 -181 167 -404q11 -12 25 -12q7 0 13 3q22 9 19 33q-44 354 62 473q46 52 130 75.5 +t224 23.5v-160q0 -42 40 -59q12 -5 24 -5q26 0 45 19zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="compass" unicode="" +d="M640 448l256 128l-256 128v-256zM1024 1039v-542l-512 -256v542zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103 +t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="collapse" unicode="" +d="M1145 861q18 -35 -5 -66l-320 -448q-19 -27 -52 -27t-52 27l-320 448q-23 31 -5 66q17 35 57 35h640q40 0 57 -35zM1280 160v960q0 13 -9.5 22.5t-22.5 9.5h-960q-13 0 -22.5 -9.5t-9.5 -22.5v-960q0 -13 9.5 -22.5t22.5 -9.5h960q13 0 22.5 9.5t9.5 22.5zM1536 1120 +v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="collapse_top" unicode="" +d="M1145 419q-17 -35 -57 -35h-640q-40 0 -57 35q-18 35 5 66l320 448q19 27 52 27t52 -27l320 -448q23 -31 5 -66zM1280 160v960q0 13 -9.5 22.5t-22.5 9.5h-960q-13 0 -22.5 -9.5t-9.5 -22.5v-960q0 -13 9.5 -22.5t22.5 -9.5h960q13 0 22.5 9.5t9.5 22.5zM1536 1120v-960 +q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="_317" unicode="" +d="M1088 640q0 -33 -27 -52l-448 -320q-31 -23 -66 -5q-35 17 -35 57v640q0 40 35 57q35 18 66 -5l448 -320q27 -19 27 -52zM1280 160v960q0 14 -9 23t-23 9h-960q-14 0 -23 -9t-9 -23v-960q0 -14 9 -23t23 -9h960q14 0 23 9t9 23zM1536 1120v-960q0 -119 -84.5 -203.5 +t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="eur" unicode="" horiz-adv-x="1024" +d="M976 229l35 -159q3 -12 -3 -22.5t-17 -14.5l-5 -1q-4 -2 -10.5 -3.5t-16 -4.5t-21.5 -5.5t-25.5 -5t-30 -5t-33.5 -4.5t-36.5 -3t-38.5 -1q-234 0 -409 130.5t-238 351.5h-95q-13 0 -22.5 9.5t-9.5 22.5v113q0 13 9.5 22.5t22.5 9.5h66q-2 57 1 105h-67q-14 0 -23 9 +t-9 23v114q0 14 9 23t23 9h98q67 210 243.5 338t400.5 128q102 0 194 -23q11 -3 20 -15q6 -11 3 -24l-43 -159q-3 -13 -14 -19.5t-24 -2.5l-4 1q-4 1 -11.5 2.5l-17.5 3.5t-22.5 3.5t-26 3t-29 2.5t-29.5 1q-126 0 -226 -64t-150 -176h468q16 0 25 -12q10 -12 7 -26 +l-24 -114q-5 -26 -32 -26h-488q-3 -37 0 -105h459q15 0 25 -12q9 -12 6 -27l-24 -112q-2 -11 -11 -18.5t-20 -7.5h-387q48 -117 149.5 -185.5t228.5 -68.5q18 0 36 1.5t33.5 3.5t29.5 4.5t24.5 5t18.5 4.5l12 3l5 2q13 5 26 -2q12 -7 15 -21z" /> + <glyph glyph-name="gbp" unicode="" horiz-adv-x="1024" +d="M1020 399v-367q0 -14 -9 -23t-23 -9h-956q-14 0 -23 9t-9 23v150q0 13 9.5 22.5t22.5 9.5h97v383h-95q-14 0 -23 9.5t-9 22.5v131q0 14 9 23t23 9h95v223q0 171 123.5 282t314.5 111q185 0 335 -125q9 -8 10 -20.5t-7 -22.5l-103 -127q-9 -11 -22 -12q-13 -2 -23 7 +q-5 5 -26 19t-69 32t-93 18q-85 0 -137 -47t-52 -123v-215h305q13 0 22.5 -9t9.5 -23v-131q0 -13 -9.5 -22.5t-22.5 -9.5h-305v-379h414v181q0 13 9 22.5t23 9.5h162q14 0 23 -9.5t9 -22.5z" /> + <glyph glyph-name="usd" unicode="" horiz-adv-x="1024" +d="M978 351q0 -153 -99.5 -263.5t-258.5 -136.5v-175q0 -14 -9 -23t-23 -9h-135q-13 0 -22.5 9.5t-9.5 22.5v175q-66 9 -127.5 31t-101.5 44.5t-74 48t-46.5 37.5t-17.5 18q-17 21 -2 41l103 135q7 10 23 12q15 2 24 -9l2 -2q113 -99 243 -125q37 -8 74 -8q81 0 142.5 43 +t61.5 122q0 28 -15 53t-33.5 42t-58.5 37.5t-66 32t-80 32.5q-39 16 -61.5 25t-61.5 26.5t-62.5 31t-56.5 35.5t-53.5 42.5t-43.5 49t-35.5 58t-21 66.5t-8.5 78q0 138 98 242t255 134v180q0 13 9.5 22.5t22.5 9.5h135q14 0 23 -9t9 -23v-176q57 -6 110.5 -23t87 -33.5 +t63.5 -37.5t39 -29t15 -14q17 -18 5 -38l-81 -146q-8 -15 -23 -16q-14 -3 -27 7q-3 3 -14.5 12t-39 26.5t-58.5 32t-74.5 26t-85.5 11.5q-95 0 -155 -43t-60 -111q0 -26 8.5 -48t29.5 -41.5t39.5 -33t56 -31t60.5 -27t70 -27.5q53 -20 81 -31.5t76 -35t75.5 -42.5t62 -50 +t53 -63.5t31.5 -76.5t13 -94z" /> + <glyph glyph-name="inr" unicode="" horiz-adv-x="898" +d="M898 1066v-102q0 -14 -9 -23t-23 -9h-168q-23 -144 -129 -234t-276 -110q167 -178 459 -536q14 -16 4 -34q-8 -18 -29 -18h-195q-16 0 -25 12q-306 367 -498 571q-9 9 -9 22v127q0 13 9.5 22.5t22.5 9.5h112q132 0 212.5 43t102.5 125h-427q-14 0 -23 9t-9 23v102 +q0 14 9 23t23 9h413q-57 113 -268 113h-145q-13 0 -22.5 9.5t-9.5 22.5v133q0 14 9 23t23 9h832q14 0 23 -9t9 -23v-102q0 -14 -9 -23t-23 -9h-233q47 -61 64 -144h171q14 0 23 -9t9 -23z" /> + <glyph glyph-name="jpy" unicode="" horiz-adv-x="1027" +d="M603 0h-172q-13 0 -22.5 9t-9.5 23v330h-288q-13 0 -22.5 9t-9.5 23v103q0 13 9.5 22.5t22.5 9.5h288v85h-288q-13 0 -22.5 9t-9.5 23v104q0 13 9.5 22.5t22.5 9.5h214l-321 578q-8 16 0 32q10 16 28 16h194q19 0 29 -18l215 -425q19 -38 56 -125q10 24 30.5 68t27.5 61 +l191 420q8 19 29 19h191q17 0 27 -16q9 -14 1 -31l-313 -579h215q13 0 22.5 -9.5t9.5 -22.5v-104q0 -14 -9.5 -23t-22.5 -9h-290v-85h290q13 0 22.5 -9.5t9.5 -22.5v-103q0 -14 -9.5 -23t-22.5 -9h-290v-330q0 -13 -9.5 -22.5t-22.5 -9.5z" /> + <glyph glyph-name="rub" unicode="" horiz-adv-x="1280" +d="M1043 971q0 100 -65 162t-171 62h-320v-448h320q106 0 171 62t65 162zM1280 971q0 -193 -126.5 -315t-326.5 -122h-340v-118h505q14 0 23 -9t9 -23v-128q0 -14 -9 -23t-23 -9h-505v-192q0 -14 -9.5 -23t-22.5 -9h-167q-14 0 -23 9t-9 23v192h-224q-14 0 -23 9t-9 23v128 +q0 14 9 23t23 9h224v118h-224q-14 0 -23 9t-9 23v149q0 13 9 22.5t23 9.5h224v629q0 14 9 23t23 9h539q200 0 326.5 -122t126.5 -315z" /> + <glyph glyph-name="krw" unicode="" horiz-adv-x="1792" +d="M514 341l81 299h-159l75 -300q1 -1 1 -3t1 -3q0 1 0.5 3.5t0.5 3.5zM630 768l35 128h-292l32 -128h225zM822 768h139l-35 128h-70zM1271 340l78 300h-162l81 -299q0 -1 0.5 -3.5t1.5 -3.5q0 1 0.5 3t0.5 3zM1382 768l33 128h-297l34 -128h230zM1792 736v-64q0 -14 -9 -23 +t-23 -9h-213l-164 -616q-7 -24 -31 -24h-159q-24 0 -31 24l-166 616h-209l-167 -616q-7 -24 -31 -24h-159q-11 0 -19.5 7t-10.5 17l-160 616h-208q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h175l-33 128h-142q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h109l-89 344q-5 15 5 28 +q10 12 26 12h137q26 0 31 -24l90 -360h359l97 360q7 24 31 24h126q24 0 31 -24l98 -360h365l93 360q5 24 31 24h137q16 0 26 -12q10 -13 5 -28l-91 -344h111q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-145l-34 -128h179q14 0 23 -9t9 -23z" /> + <glyph glyph-name="btc" unicode="" horiz-adv-x="1280" +d="M1167 896q18 -182 -131 -258q117 -28 175 -103t45 -214q-7 -71 -32.5 -125t-64.5 -89t-97 -58.5t-121.5 -34.5t-145.5 -15v-255h-154v251q-80 0 -122 1v-252h-154v255q-18 0 -54 0.5t-55 0.5h-200l31 183h111q50 0 58 51v402h16q-6 1 -16 1v287q-13 68 -89 68h-111v164 +l212 -1q64 0 97 1v252h154v-247q82 2 122 2v245h154v-252q79 -7 140 -22.5t113 -45t82.5 -78t36.5 -114.5zM952 351q0 36 -15 64t-37 46t-57.5 30.5t-65.5 18.5t-74 9t-69 3t-64.5 -1t-47.5 -1v-338q8 0 37 -0.5t48 -0.5t53 1.5t58.5 4t57 8.5t55.5 14t47.5 21t39.5 30 +t24.5 40t9.5 51zM881 827q0 33 -12.5 58.5t-30.5 42t-48 28t-55 16.5t-61.5 8t-58 2.5t-54 -1t-39.5 -0.5v-307q5 0 34.5 -0.5t46.5 0t50 2t55 5.5t51.5 11t48.5 18.5t37 27t27 38.5t9 51z" /> + <glyph glyph-name="file" unicode="" +d="M1024 1024v472q22 -14 36 -28l408 -408q14 -14 28 -36h-472zM896 992q0 -40 28 -68t68 -28h544v-1056q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h800v-544z" /> + <glyph glyph-name="file_text" unicode="" +d="M1468 1060q14 -14 28 -36h-472v472q22 -14 36 -28zM992 896h544v-1056q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h800v-544q0 -40 28 -68t68 -28zM1152 160v64q0 14 -9 23t-23 9h-704q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h704 +q14 0 23 9t9 23zM1152 416v64q0 14 -9 23t-23 9h-704q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h704q14 0 23 9t9 23zM1152 672v64q0 14 -9 23t-23 9h-704q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h704q14 0 23 9t9 23z" /> + <glyph glyph-name="sort_by_alphabet" unicode="" horiz-adv-x="1664" +d="M1191 1128h177l-72 218l-12 47q-2 16 -2 20h-4l-3 -20q0 -1 -3.5 -18t-7.5 -29zM736 96q0 -12 -10 -24l-319 -319q-10 -9 -23 -9q-12 0 -23 9l-320 320q-15 16 -7 35q8 20 30 20h192v1376q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-1376h192q14 0 23 -9t9 -23zM1572 -23 +v-233h-584v90l369 529q12 18 21 27l11 9v3q-2 0 -6.5 -0.5t-7.5 -0.5q-12 -3 -30 -3h-232v-115h-120v229h567v-89l-369 -530q-6 -8 -21 -26l-11 -11v-2l14 2q9 2 30 2h248v119h121zM1661 874v-106h-288v106h75l-47 144h-243l-47 -144h75v-106h-287v106h70l230 662h162 +l230 -662h70z" /> + <glyph glyph-name="_329" unicode="" horiz-adv-x="1664" +d="M1191 104h177l-72 218l-12 47q-2 16 -2 20h-4l-3 -20q0 -1 -3.5 -18t-7.5 -29zM736 96q0 -12 -10 -24l-319 -319q-10 -9 -23 -9q-12 0 -23 9l-320 320q-15 16 -7 35q8 20 30 20h192v1376q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-1376h192q14 0 23 -9t9 -23zM1661 -150 +v-106h-288v106h75l-47 144h-243l-47 -144h75v-106h-287v106h70l230 662h162l230 -662h70zM1572 1001v-233h-584v90l369 529q12 18 21 27l11 9v3q-2 0 -6.5 -0.5t-7.5 -0.5q-12 -3 -30 -3h-232v-115h-120v229h567v-89l-369 -530q-6 -8 -21 -26l-11 -10v-3l14 3q9 1 30 1h248 +v119h121z" /> + <glyph glyph-name="sort_by_attributes" unicode="" horiz-adv-x="1792" +d="M736 96q0 -12 -10 -24l-319 -319q-10 -9 -23 -9q-12 0 -23 9l-320 320q-15 16 -7 35q8 20 30 20h192v1376q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-1376h192q14 0 23 -9t9 -23zM1792 -32v-192q0 -14 -9 -23t-23 -9h-832q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h832 +q14 0 23 -9t9 -23zM1600 480v-192q0 -14 -9 -23t-23 -9h-640q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h640q14 0 23 -9t9 -23zM1408 992v-192q0 -14 -9 -23t-23 -9h-448q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h448q14 0 23 -9t9 -23zM1216 1504v-192q0 -14 -9 -23t-23 -9h-256 +q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h256q14 0 23 -9t9 -23z" /> + <glyph glyph-name="sort_by_attributes_alt" unicode="" horiz-adv-x="1792" +d="M1216 -32v-192q0 -14 -9 -23t-23 -9h-256q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h256q14 0 23 -9t9 -23zM736 96q0 -12 -10 -24l-319 -319q-10 -9 -23 -9q-12 0 -23 9l-320 320q-15 16 -7 35q8 20 30 20h192v1376q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-1376h192 +q14 0 23 -9t9 -23zM1408 480v-192q0 -14 -9 -23t-23 -9h-448q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h448q14 0 23 -9t9 -23zM1600 992v-192q0 -14 -9 -23t-23 -9h-640q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h640q14 0 23 -9t9 -23zM1792 1504v-192q0 -14 -9 -23t-23 -9h-832 +q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h832q14 0 23 -9t9 -23z" /> + <glyph glyph-name="sort_by_order" unicode="" +d="M1346 223q0 63 -44 116t-103 53q-52 0 -83 -37t-31 -94t36.5 -95t104.5 -38q50 0 85 27t35 68zM736 96q0 -12 -10 -24l-319 -319q-10 -9 -23 -9q-12 0 -23 9l-320 320q-15 16 -7 35q8 20 30 20h192v1376q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-1376h192q14 0 23 -9t9 -23 +zM1486 165q0 -62 -13 -121.5t-41 -114t-68 -95.5t-98.5 -65.5t-127.5 -24.5q-62 0 -108 16q-24 8 -42 15l39 113q15 -7 31 -11q37 -13 75 -13q84 0 134.5 58.5t66.5 145.5h-2q-21 -23 -61.5 -37t-84.5 -14q-106 0 -173 71.5t-67 172.5q0 105 72 178t181 73q123 0 205 -94.5 +t82 -252.5zM1456 882v-114h-469v114h167v432q0 7 0.5 19t0.5 17v16h-2l-7 -12q-8 -13 -26 -31l-62 -58l-82 86l192 185h123v-654h165z" /> + <glyph glyph-name="sort_by_order_alt" unicode="" +d="M1346 1247q0 63 -44 116t-103 53q-52 0 -83 -37t-31 -94t36.5 -95t104.5 -38q50 0 85 27t35 68zM736 96q0 -12 -10 -24l-319 -319q-10 -9 -23 -9q-12 0 -23 9l-320 320q-15 16 -7 35q8 20 30 20h192v1376q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-1376h192q14 0 23 -9 +t9 -23zM1456 -142v-114h-469v114h167v432q0 7 0.5 19t0.5 17v16h-2l-7 -12q-8 -13 -26 -31l-62 -58l-82 86l192 185h123v-654h165zM1486 1189q0 -62 -13 -121.5t-41 -114t-68 -95.5t-98.5 -65.5t-127.5 -24.5q-62 0 -108 16q-24 8 -42 15l39 113q15 -7 31 -11q37 -13 75 -13 +q84 0 134.5 58.5t66.5 145.5h-2q-21 -23 -61.5 -37t-84.5 -14q-106 0 -173 71.5t-67 172.5q0 105 72 178t181 73q123 0 205 -94.5t82 -252.5z" /> + <glyph glyph-name="_334" unicode="" horiz-adv-x="1664" +d="M256 192q0 26 -19 45t-45 19q-27 0 -45.5 -19t-18.5 -45q0 -27 18.5 -45.5t45.5 -18.5q26 0 45 18.5t19 45.5zM416 704v-640q0 -26 -19 -45t-45 -19h-288q-26 0 -45 19t-19 45v640q0 26 19 45t45 19h288q26 0 45 -19t19 -45zM1600 704q0 -86 -55 -149q15 -44 15 -76 +q3 -76 -43 -137q17 -56 0 -117q-15 -57 -54 -94q9 -112 -49 -181q-64 -76 -197 -78h-36h-76h-17q-66 0 -144 15.5t-121.5 29t-120.5 39.5q-123 43 -158 44q-26 1 -45 19.5t-19 44.5v641q0 25 18 43.5t43 20.5q24 2 76 59t101 121q68 87 101 120q18 18 31 48t17.5 48.5 +t13.5 60.5q7 39 12.5 61t19.5 52t34 50q19 19 45 19q46 0 82.5 -10.5t60 -26t40 -40.5t24 -45t12 -50t5 -45t0.5 -39q0 -38 -9.5 -76t-19 -60t-27.5 -56q-3 -6 -10 -18t-11 -22t-8 -24h277q78 0 135 -57t57 -135z" /> + <glyph glyph-name="_335" unicode="" horiz-adv-x="1664" +d="M256 960q0 -26 -19 -45t-45 -19q-27 0 -45.5 19t-18.5 45q0 27 18.5 45.5t45.5 18.5q26 0 45 -18.5t19 -45.5zM416 448v640q0 26 -19 45t-45 19h-288q-26 0 -45 -19t-19 -45v-640q0 -26 19 -45t45 -19h288q26 0 45 19t19 45zM1545 597q55 -61 55 -149q-1 -78 -57.5 -135 +t-134.5 -57h-277q4 -14 8 -24t11 -22t10 -18q18 -37 27 -57t19 -58.5t10 -76.5q0 -24 -0.5 -39t-5 -45t-12 -50t-24 -45t-40 -40.5t-60 -26t-82.5 -10.5q-26 0 -45 19q-20 20 -34 50t-19.5 52t-12.5 61q-9 42 -13.5 60.5t-17.5 48.5t-31 48q-33 33 -101 120q-49 64 -101 121 +t-76 59q-25 2 -43 20.5t-18 43.5v641q0 26 19 44.5t45 19.5q35 1 158 44q77 26 120.5 39.5t121.5 29t144 15.5h17h76h36q133 -2 197 -78q58 -69 49 -181q39 -37 54 -94q17 -61 0 -117q46 -61 43 -137q0 -32 -15 -76z" /> + <glyph glyph-name="youtube_sign" unicode="" +d="M919 233v157q0 50 -29 50q-17 0 -33 -16v-224q16 -16 33 -16q29 0 29 49zM1103 355h66v34q0 51 -33 51t-33 -51v-34zM532 621v-70h-80v-423h-74v423h-78v70h232zM733 495v-367h-67v40q-39 -45 -76 -45q-33 0 -42 28q-6 17 -6 54v290h66v-270q0 -24 1 -26q1 -15 15 -15 +q20 0 42 31v280h67zM985 384v-146q0 -52 -7 -73q-12 -42 -53 -42q-35 0 -68 41v-36h-67v493h67v-161q32 40 68 40q41 0 53 -42q7 -21 7 -74zM1236 255v-9q0 -29 -2 -43q-3 -22 -15 -40q-27 -40 -80 -40q-52 0 -81 38q-21 27 -21 86v129q0 59 20 86q29 38 80 38t78 -38 +q21 -29 21 -86v-76h-133v-65q0 -51 34 -51q24 0 30 26q0 1 0.5 7t0.5 16.5v21.5h68zM785 1079v-156q0 -51 -32 -51t-32 51v156q0 52 32 52t32 -52zM1318 366q0 177 -19 260q-10 44 -43 73.5t-76 34.5q-136 15 -412 15q-275 0 -411 -15q-44 -5 -76.5 -34.5t-42.5 -73.5 +q-20 -87 -20 -260q0 -176 20 -260q10 -43 42.5 -73t75.5 -35q137 -15 412 -15t412 15q43 5 75.5 35t42.5 73q20 84 20 260zM563 1017l90 296h-75l-51 -195l-53 195h-78q7 -23 23 -69l24 -69q35 -103 46 -158v-201h74v201zM852 936v130q0 58 -21 87q-29 38 -78 38 +q-51 0 -78 -38q-21 -29 -21 -87v-130q0 -58 21 -87q27 -38 78 -38q49 0 78 38q21 27 21 87zM1033 816h67v370h-67v-283q-22 -31 -42 -31q-15 0 -16 16q-1 2 -1 26v272h-67v-293q0 -37 6 -55q11 -27 43 -27q36 0 77 45v-40zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5 +h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="youtube" unicode="" +d="M971 292v-211q0 -67 -39 -67q-23 0 -45 22v301q22 22 45 22q39 0 39 -67zM1309 291v-46h-90v46q0 68 45 68t45 -68zM343 509h107v94h-312v-94h105v-569h100v569zM631 -60h89v494h-89v-378q-30 -42 -57 -42q-18 0 -21 21q-1 3 -1 35v364h-89v-391q0 -49 8 -73 +q12 -37 58 -37q48 0 102 61v-54zM1060 88v197q0 73 -9 99q-17 56 -71 56q-50 0 -93 -54v217h-89v-663h89v48q45 -55 93 -55q54 0 71 55q9 27 9 100zM1398 98v13h-91q0 -51 -2 -61q-7 -36 -40 -36q-46 0 -46 69v87h179v103q0 79 -27 116q-39 51 -106 51q-68 0 -107 -51 +q-28 -37 -28 -116v-173q0 -79 29 -116q39 -51 108 -51q72 0 108 53q18 27 21 54q2 9 2 58zM790 1011v210q0 69 -43 69t-43 -69v-210q0 -70 43 -70t43 70zM1509 260q0 -234 -26 -350q-14 -59 -58 -99t-102 -46q-184 -21 -555 -21t-555 21q-58 6 -102.5 46t-57.5 99 +q-26 112 -26 350q0 234 26 350q14 59 58 99t103 47q183 20 554 20t555 -20q58 -7 102.5 -47t57.5 -99q26 -112 26 -350zM511 1536h102l-121 -399v-271h-100v271q-14 74 -61 212q-37 103 -65 187h106l71 -263zM881 1203v-175q0 -81 -28 -118q-38 -51 -106 -51q-67 0 -105 51 +q-28 38 -28 118v175q0 80 28 117q38 51 105 51q68 0 106 -51q28 -37 28 -117zM1216 1365v-499h-91v55q-53 -62 -103 -62q-46 0 -59 37q-8 24 -8 75v394h91v-367q0 -33 1 -35q3 -22 21 -22q27 0 57 43v381h91z" /> + <glyph glyph-name="xing" unicode="" horiz-adv-x="1408" +d="M597 869q-10 -18 -257 -456q-27 -46 -65 -46h-239q-21 0 -31 17t0 36l253 448q1 0 0 1l-161 279q-12 22 -1 37q9 15 32 15h239q40 0 66 -45zM1403 1511q11 -16 0 -37l-528 -934v-1l336 -615q11 -20 1 -37q-10 -15 -32 -15h-239q-42 0 -66 45l-339 622q18 32 531 942 +q25 45 64 45h241q22 0 31 -15z" /> + <glyph glyph-name="xing_sign" unicode="" +d="M685 771q0 1 -126 222q-21 34 -52 34h-184q-18 0 -26 -11q-7 -12 1 -29l125 -216v-1l-196 -346q-9 -14 0 -28q8 -13 24 -13h185q31 0 50 36zM1309 1268q-7 12 -24 12h-187q-30 0 -49 -35l-411 -729q1 -2 262 -481q20 -35 52 -35h184q18 0 25 12q8 13 -1 28l-260 476v1 +l409 723q8 16 0 28zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="youtube_play" unicode="" horiz-adv-x="1792" +d="M711 408l484 250l-484 253v-503zM896 1270q168 0 324.5 -4.5t229.5 -9.5l73 -4q1 0 17 -1.5t23 -3t23.5 -4.5t28.5 -8t28 -13t31 -19.5t29 -26.5q6 -6 15.5 -18.5t29 -58.5t26.5 -101q8 -64 12.5 -136.5t5.5 -113.5v-40v-136q1 -145 -18 -290q-7 -55 -25 -99.5t-32 -61.5 +l-14 -17q-14 -15 -29 -26.5t-31 -19t-28 -12.5t-28.5 -8t-24 -4.5t-23 -3t-16.5 -1.5q-251 -19 -627 -19q-207 2 -359.5 6.5t-200.5 7.5l-49 4l-36 4q-36 5 -54.5 10t-51 21t-56.5 41q-6 6 -15.5 18.5t-29 58.5t-26.5 101q-8 64 -12.5 136.5t-5.5 113.5v40v136 +q-1 145 18 290q7 55 25 99.5t32 61.5l14 17q14 15 29 26.5t31 19.5t28 13t28.5 8t23.5 4.5t23 3t17 1.5q251 18 627 18z" /> + <glyph glyph-name="dropbox" unicode="" horiz-adv-x="1792" +d="M402 829l494 -305l-342 -285l-490 319zM1388 274v-108l-490 -293v-1l-1 1l-1 -1v1l-489 293v108l147 -96l342 284v2l1 -1l1 1v-2l343 -284zM554 1418l342 -285l-494 -304l-338 270zM1390 829l338 -271l-489 -319l-343 285zM1239 1418l489 -319l-338 -270l-494 304z" /> + <glyph glyph-name="stackexchange" unicode="" +d="M1289 -96h-1118v480h-160v-640h1438v640h-160v-480zM347 428l33 157l783 -165l-33 -156zM450 802l67 146l725 -339l-67 -145zM651 1158l102 123l614 -513l-102 -123zM1048 1536l477 -641l-128 -96l-477 641zM330 65v159h800v-159h-800z" /> + <glyph glyph-name="instagram" unicode="" +d="M1024 640q0 106 -75 181t-181 75t-181 -75t-75 -181t75 -181t181 -75t181 75t75 181zM1162 640q0 -164 -115 -279t-279 -115t-279 115t-115 279t115 279t279 115t279 -115t115 -279zM1270 1050q0 -38 -27 -65t-65 -27t-65 27t-27 65t27 65t65 27t65 -27t27 -65zM768 1270 +q-7 0 -76.5 0.5t-105.5 0t-96.5 -3t-103 -10t-71.5 -18.5q-50 -20 -88 -58t-58 -88q-11 -29 -18.5 -71.5t-10 -103t-3 -96.5t0 -105.5t0.5 -76.5t-0.5 -76.5t0 -105.5t3 -96.5t10 -103t18.5 -71.5q20 -50 58 -88t88 -58q29 -11 71.5 -18.5t103 -10t96.5 -3t105.5 0t76.5 0.5 +t76.5 -0.5t105.5 0t96.5 3t103 10t71.5 18.5q50 20 88 58t58 88q11 29 18.5 71.5t10 103t3 96.5t0 105.5t-0.5 76.5t0.5 76.5t0 105.5t-3 96.5t-10 103t-18.5 71.5q-20 50 -58 88t-88 58q-29 11 -71.5 18.5t-103 10t-96.5 3t-105.5 0t-76.5 -0.5zM1536 640q0 -229 -5 -317 +q-10 -208 -124 -322t-322 -124q-88 -5 -317 -5t-317 5q-208 10 -322 124t-124 322q-5 88 -5 317t5 317q10 208 124 322t322 124q88 5 317 5t317 -5q208 -10 322 -124t124 -322q5 -88 5 -317z" /> + <glyph glyph-name="flickr" unicode="" +d="M1248 1408q119 0 203.5 -84.5t84.5 -203.5v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960zM698 640q0 88 -62 150t-150 62t-150 -62t-62 -150t62 -150t150 -62t150 62t62 150zM1262 640q0 88 -62 150 +t-150 62t-150 -62t-62 -150t62 -150t150 -62t150 62t62 150z" /> + <glyph glyph-name="adn" unicode="" +d="M768 914l201 -306h-402zM1133 384h94l-459 691l-459 -691h94l104 160h522zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="f171" unicode="" horiz-adv-x="1408" +d="M815 677q8 -63 -50.5 -101t-111.5 -6q-39 17 -53.5 58t-0.5 82t52 58q36 18 72.5 12t64 -35.5t27.5 -67.5zM926 698q-14 107 -113 164t-197 13q-63 -28 -100.5 -88.5t-34.5 -129.5q4 -91 77.5 -155t165.5 -56q91 8 152 84t50 168zM1165 1240q-20 27 -56 44.5t-58 22 +t-71 12.5q-291 47 -566 -2q-43 -7 -66 -12t-55 -22t-50 -43q30 -28 76 -45.5t73.5 -22t87.5 -11.5q228 -29 448 -1q63 8 89.5 12t72.5 21.5t75 46.5zM1222 205q-8 -26 -15.5 -76.5t-14 -84t-28.5 -70t-58 -56.5q-86 -48 -189.5 -71.5t-202 -22t-201.5 18.5q-46 8 -81.5 18 +t-76.5 27t-73 43.5t-52 61.5q-25 96 -57 292l6 16l18 9q223 -148 506.5 -148t507.5 148q21 -6 24 -23t-5 -45t-8 -37zM1403 1166q-26 -167 -111 -655q-5 -30 -27 -56t-43.5 -40t-54.5 -31q-252 -126 -610 -88q-248 27 -394 139q-15 12 -25.5 26.5t-17 35t-9 34t-6 39.5 +t-5.5 35q-9 50 -26.5 150t-28 161.5t-23.5 147.5t-22 158q3 26 17.5 48.5t31.5 37.5t45 30t46 22.5t48 18.5q125 46 313 64q379 37 676 -50q155 -46 215 -122q16 -20 16.5 -51t-5.5 -54z" /> + <glyph glyph-name="bitbucket_sign" unicode="" +d="M848 666q0 43 -41 66t-77 1q-43 -20 -42.5 -72.5t43.5 -70.5q39 -23 81 4t36 72zM928 682q8 -66 -36 -121t-110 -61t-119 40t-56 113q-2 49 25.5 93t72.5 64q70 31 141.5 -10t81.5 -118zM1100 1073q-20 -21 -53.5 -34t-53 -16t-63.5 -8q-155 -20 -324 0q-44 6 -63 9.5 +t-52.5 16t-54.5 32.5q13 19 36 31t40 15.5t47 8.5q198 35 408 1q33 -5 51 -8.5t43 -16t39 -31.5zM1142 327q0 7 5.5 26.5t3 32t-17.5 16.5q-161 -106 -365 -106t-366 106l-12 -6l-5 -12q26 -154 41 -210q47 -81 204 -108q249 -46 428 53q34 19 49 51.5t22.5 85.5t12.5 71z +M1272 1020q9 53 -8 75q-43 55 -155 88q-216 63 -487 36q-132 -12 -226 -46q-38 -15 -59.5 -25t-47 -34t-29.5 -54q8 -68 19 -138t29 -171t24 -137q1 -5 5 -31t7 -36t12 -27t22 -28q105 -80 284 -100q259 -28 440 63q24 13 39.5 23t31 29t19.5 40q48 267 80 473zM1536 1120 +v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="tumblr" unicode="" horiz-adv-x="1024" +d="M944 207l80 -237q-23 -35 -111 -66t-177 -32q-104 -2 -190.5 26t-142.5 74t-95 106t-55.5 120t-16.5 118v544h-168v215q72 26 129 69.5t91 90t58 102t34 99t15 88.5q1 5 4.5 8.5t7.5 3.5h244v-424h333v-252h-334v-518q0 -30 6.5 -56t22.5 -52.5t49.5 -41.5t81.5 -14 +q78 2 134 29z" /> + <glyph glyph-name="tumblr_sign" unicode="" +d="M1136 75l-62 183q-44 -22 -103 -22q-36 -1 -62 10.5t-38.5 31.5t-17.5 40.5t-5 43.5v398h257v194h-256v326h-188q-8 0 -9 -10q-5 -44 -17.5 -87t-39 -95t-77 -95t-118.5 -68v-165h130v-418q0 -57 21.5 -115t65 -111t121 -85.5t176.5 -30.5q69 1 136.5 25t85.5 50z +M1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="long_arrow_down" unicode="" horiz-adv-x="768" +d="M765 237q8 -19 -5 -35l-350 -384q-10 -10 -23 -10q-14 0 -24 10l-355 384q-13 16 -5 35q9 19 29 19h224v1248q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-1248h224q21 0 29 -19z" /> + <glyph glyph-name="long_arrow_up" unicode="" horiz-adv-x="768" +d="M765 1043q-9 -19 -29 -19h-224v-1248q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v1248h-224q-21 0 -29 19t5 35l350 384q10 10 23 10q14 0 24 -10l355 -384q13 -16 5 -35z" /> + <glyph glyph-name="long_arrow_left" unicode="" horiz-adv-x="1792" +d="M1792 736v-192q0 -14 -9 -23t-23 -9h-1248v-224q0 -21 -19 -29t-35 5l-384 350q-10 10 -10 23q0 14 10 24l384 354q16 14 35 6q19 -9 19 -29v-224h1248q14 0 23 -9t9 -23z" /> + <glyph glyph-name="long_arrow_right" unicode="" horiz-adv-x="1792" +d="M1728 643q0 -14 -10 -24l-384 -354q-16 -14 -35 -6q-19 9 -19 29v224h-1248q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h1248v224q0 21 19 29t35 -5l384 -350q10 -10 10 -23z" /> + <glyph glyph-name="apple" unicode="" horiz-adv-x="1408" +d="M1393 321q-39 -125 -123 -250q-129 -196 -257 -196q-49 0 -140 32q-86 32 -151 32q-61 0 -142 -33q-81 -34 -132 -34q-152 0 -301 259q-147 261 -147 503q0 228 113 374q113 144 284 144q72 0 177 -30q104 -30 138 -30q45 0 143 34q102 34 173 34q119 0 213 -65 +q52 -36 104 -100q-79 -67 -114 -118q-65 -94 -65 -207q0 -124 69 -223t158 -126zM1017 1494q0 -61 -29 -136q-30 -75 -93 -138q-54 -54 -108 -72q-37 -11 -104 -17q3 149 78 257q74 107 250 148q1 -3 2.5 -11t2.5 -11q0 -4 0.5 -10t0.5 -10z" /> + <glyph glyph-name="windows" unicode="" horiz-adv-x="1664" +d="M682 530v-651l-682 94v557h682zM682 1273v-659h-682v565zM1664 530v-786l-907 125v661h907zM1664 1408v-794h-907v669z" /> + <glyph glyph-name="android" unicode="" horiz-adv-x="1408" +d="M493 1053q16 0 27.5 11.5t11.5 27.5t-11.5 27.5t-27.5 11.5t-27 -11.5t-11 -27.5t11 -27.5t27 -11.5zM915 1053q16 0 27 11.5t11 27.5t-11 27.5t-27 11.5t-27.5 -11.5t-11.5 -27.5t11.5 -27.5t27.5 -11.5zM103 869q42 0 72 -30t30 -72v-430q0 -43 -29.5 -73t-72.5 -30 +t-73 30t-30 73v430q0 42 30 72t73 30zM1163 850v-666q0 -46 -32 -78t-77 -32h-75v-227q0 -43 -30 -73t-73 -30t-73 30t-30 73v227h-138v-227q0 -43 -30 -73t-73 -30q-42 0 -72 30t-30 73l-1 227h-74q-46 0 -78 32t-32 78v666h918zM931 1255q107 -55 171 -153.5t64 -215.5 +h-925q0 117 64 215.5t172 153.5l-71 131q-7 13 5 20q13 6 20 -6l72 -132q95 42 201 42t201 -42l72 132q7 12 20 6q12 -7 5 -20zM1408 767v-430q0 -43 -30 -73t-73 -30q-42 0 -72 30t-30 73v430q0 43 30 72.5t72 29.5q43 0 73 -29.5t30 -72.5z" /> + <glyph glyph-name="linux" unicode="" +d="M663 1125q-11 -1 -15.5 -10.5t-8.5 -9.5q-5 -1 -5 5q0 12 19 15h10zM750 1111q-4 -1 -11.5 6.5t-17.5 4.5q24 11 32 -2q3 -6 -3 -9zM399 684q-4 1 -6 -3t-4.5 -12.5t-5.5 -13.5t-10 -13q-10 -11 -1 -12q4 -1 12.5 7t12.5 18q1 3 2 7t2 6t1.5 4.5t0.5 4v3t-1 2.5t-3 2z +M1254 325q0 18 -55 42q4 15 7.5 27.5t5 26t3 21.5t0.5 22.5t-1 19.5t-3.5 22t-4 20.5t-5 25t-5.5 26.5q-10 48 -47 103t-72 75q24 -20 57 -83q87 -162 54 -278q-11 -40 -50 -42q-31 -4 -38.5 18.5t-8 83.5t-11.5 107q-9 39 -19.5 69t-19.5 45.5t-15.5 24.5t-13 15t-7.5 7 +q-14 62 -31 103t-29.5 56t-23.5 33t-15 40q-4 21 6 53.5t4.5 49.5t-44.5 25q-15 3 -44.5 18t-35.5 16q-8 1 -11 26t8 51t36 27q37 3 51 -30t4 -58q-11 -19 -2 -26.5t30 -0.5q13 4 13 36v37q-5 30 -13.5 50t-21 30.5t-23.5 15t-27 7.5q-107 -8 -89 -134q0 -15 -1 -15 +q-9 9 -29.5 10.5t-33 -0.5t-15.5 5q1 57 -16 90t-45 34q-27 1 -41.5 -27.5t-16.5 -59.5q-1 -15 3.5 -37t13 -37.5t15.5 -13.5q10 3 16 14q4 9 -7 8q-7 0 -15.5 14.5t-9.5 33.5q-1 22 9 37t34 14q17 0 27 -21t9.5 -39t-1.5 -22q-22 -15 -31 -29q-8 -12 -27.5 -23.5 +t-20.5 -12.5q-13 -14 -15.5 -27t7.5 -18q14 -8 25 -19.5t16 -19t18.5 -13t35.5 -6.5q47 -2 102 15q2 1 23 7t34.5 10.5t29.5 13t21 17.5q9 14 20 8q5 -3 6.5 -8.5t-3 -12t-16.5 -9.5q-20 -6 -56.5 -21.5t-45.5 -19.5q-44 -19 -70 -23q-25 -5 -79 2q-10 2 -9 -2t17 -19 +q25 -23 67 -22q17 1 36 7t36 14t33.5 17.5t30 17t24.5 12t17.5 2.5t8.5 -11q0 -2 -1 -4.5t-4 -5t-6 -4.5t-8.5 -5t-9 -4.5t-10 -5t-9.5 -4.5q-28 -14 -67.5 -44t-66.5 -43t-49 -1q-21 11 -63 73q-22 31 -25 22q-1 -3 -1 -10q0 -25 -15 -56.5t-29.5 -55.5t-21 -58t11.5 -63 +q-23 -6 -62.5 -90t-47.5 -141q-2 -18 -1.5 -69t-5.5 -59q-8 -24 -29 -3q-32 31 -36 94q-2 28 4 56q4 19 -1 18q-2 -1 -4 -5q-36 -65 10 -166q5 -12 25 -28t24 -20q20 -23 104 -90.5t93 -76.5q16 -15 17.5 -38t-14 -43t-45.5 -23q8 -15 29 -44.5t28 -54t7 -70.5q46 24 7 92 +q-4 8 -10.5 16t-9.5 12t-2 6q3 5 13 9.5t20 -2.5q46 -52 166 -36q133 15 177 87q23 38 34 30q12 -6 10 -52q-1 -25 -23 -92q-9 -23 -6 -37.5t24 -15.5q3 19 14.5 77t13.5 90q2 21 -6.5 73.5t-7.5 97t23 70.5q15 18 51 18q1 37 34.5 53t72.5 10.5t60 -22.5zM626 1152 +q3 17 -2.5 30t-11.5 15q-9 2 -9 -7q2 -5 5 -6q10 0 7 -15q-3 -20 8 -20q3 0 3 3zM1045 955q-2 8 -6.5 11.5t-13 5t-14.5 5.5q-5 3 -9.5 8t-7 8t-5.5 6.5t-4 4t-4 -1.5q-14 -16 7 -43.5t39 -31.5q9 -1 14.5 8t3.5 20zM867 1168q0 11 -5 19.5t-11 12.5t-9 3q-6 0 -8 -2t0 -4 +t5 -3q14 -4 18 -31q0 -3 8 2q2 2 2 3zM921 1401q0 2 -2.5 5t-9 7t-9.5 6q-15 15 -24 15q-9 -1 -11.5 -7.5t-1 -13t-0.5 -12.5q-1 -4 -6 -10.5t-6 -9t3 -8.5q4 -3 8 0t11 9t15 9q1 1 9 1t15 2t9 7zM1486 60q20 -12 31 -24.5t12 -24t-2.5 -22.5t-15.5 -22t-23.5 -19.5 +t-30 -18.5t-31.5 -16.5t-32 -15.5t-27 -13q-38 -19 -85.5 -56t-75.5 -64q-17 -16 -68 -19.5t-89 14.5q-18 9 -29.5 23.5t-16.5 25.5t-22 19.5t-47 9.5q-44 1 -130 1q-19 0 -57 -1.5t-58 -2.5q-44 -1 -79.5 -15t-53.5 -30t-43.5 -28.5t-53.5 -11.5q-29 1 -111 31t-146 43 +q-19 4 -51 9.5t-50 9t-39.5 9.5t-33.5 14.5t-17 19.5q-10 23 7 66.5t18 54.5q1 16 -4 40t-10 42.5t-4.5 36.5t10.5 27q14 12 57 14t60 12q30 18 42 35t12 51q21 -73 -32 -106q-32 -20 -83 -15q-34 3 -43 -10q-13 -15 5 -57q2 -6 8 -18t8.5 -18t4.5 -17t1 -22q0 -15 -17 -49 +t-14 -48q3 -17 37 -26q20 -6 84.5 -18.5t99.5 -20.5q24 -6 74 -22t82.5 -23t55.5 -4q43 6 64.5 28t23 48t-7.5 58.5t-19 52t-20 36.5q-121 190 -169 242q-68 74 -113 40q-11 -9 -15 15q-3 16 -2 38q1 29 10 52t24 47t22 42q8 21 26.5 72t29.5 78t30 61t39 54 +q110 143 124 195q-12 112 -16 310q-2 90 24 151.5t106 104.5q39 21 104 21q53 1 106 -13.5t89 -41.5q57 -42 91.5 -121.5t29.5 -147.5q-5 -95 30 -214q34 -113 133 -218q55 -59 99.5 -163t59.5 -191q8 -49 5 -84.5t-12 -55.5t-20 -22q-10 -2 -23.5 -19t-27 -35.5 +t-40.5 -33.5t-61 -14q-18 1 -31.5 5t-22.5 13.5t-13.5 15.5t-11.5 20.5t-9 19.5q-22 37 -41 30t-28 -49t7 -97q20 -70 1 -195q-10 -65 18 -100.5t73 -33t85 35.5q59 49 89.5 66.5t103.5 42.5q53 18 77 36.5t18.5 34.5t-25 28.5t-51.5 23.5q-33 11 -49.5 48t-15 72.5 +t15.5 47.5q1 -31 8 -56.5t14.5 -40.5t20.5 -28.5t21 -19t21.5 -13t16.5 -9.5z" /> + <glyph glyph-name="dribble" unicode="" +d="M1024 36q-42 241 -140 498h-2l-2 -1q-16 -6 -43 -16.5t-101 -49t-137 -82t-131 -114.5t-103 -148l-15 11q184 -150 418 -150q132 0 256 52zM839 643q-21 49 -53 111q-311 -93 -673 -93q-1 -7 -1 -21q0 -124 44 -236.5t124 -201.5q50 89 123.5 166.5t142.5 124.5t130.5 81 +t99.5 48l37 13q4 1 13 3.5t13 4.5zM732 855q-120 213 -244 378q-138 -65 -234 -186t-128 -272q302 0 606 80zM1416 536q-210 60 -409 29q87 -239 128 -469q111 75 185 189.5t96 250.5zM611 1277q-1 0 -2 -1q1 1 2 1zM1201 1132q-185 164 -433 164q-76 0 -155 -19 +q131 -170 246 -382q69 26 130 60.5t96.5 61.5t65.5 57t37.5 40.5zM1424 647q-3 232 -149 410l-1 -1q-9 -12 -19 -24.5t-43.5 -44.5t-71 -60.5t-100 -65t-131.5 -64.5q25 -53 44 -95q2 -5 6.5 -17t7.5 -17q36 5 74.5 7t73.5 2t69 -1.5t64 -4t56.5 -5.5t48 -6.5t36.5 -6 +t25 -4.5zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="skype" unicode="" +d="M1173 473q0 50 -19.5 91.5t-48.5 68.5t-73 49t-82.5 34t-87.5 23l-104 24q-30 7 -44 10.5t-35 11.5t-30 16t-16.5 21t-7.5 30q0 77 144 77q43 0 77 -12t54 -28.5t38 -33.5t40 -29t48 -12q47 0 75.5 32t28.5 77q0 55 -56 99.5t-142 67.5t-182 23q-68 0 -132 -15.5 +t-119.5 -47t-89 -87t-33.5 -128.5q0 -61 19 -106.5t56 -75.5t80 -48.5t103 -32.5l146 -36q90 -22 112 -36q32 -20 32 -60q0 -39 -40 -64.5t-105 -25.5q-51 0 -91.5 16t-65 38.5t-45.5 45t-46 38.5t-54 16q-50 0 -75.5 -30t-25.5 -75q0 -92 122 -157.5t291 -65.5 +q73 0 140 18.5t122.5 53.5t88.5 93.5t33 131.5zM1536 256q0 -159 -112.5 -271.5t-271.5 -112.5q-130 0 -234 80q-77 -16 -150 -16q-143 0 -273.5 55.5t-225 150t-150 225t-55.5 273.5q0 73 16 150q-80 104 -80 234q0 159 112.5 271.5t271.5 112.5q130 0 234 -80 +q77 16 150 16q143 0 273.5 -55.5t225 -150t150 -225t55.5 -273.5q0 -73 -16 -150q80 -104 80 -234z" /> + <glyph glyph-name="foursquare" unicode="" horiz-adv-x="1280" +d="M1000 1102l37 194q5 23 -9 40t-35 17h-712q-23 0 -38.5 -17t-15.5 -37v-1101q0 -7 6 -1l291 352q23 26 38 33.5t48 7.5h239q22 0 37 14.5t18 29.5q24 130 37 191q4 21 -11.5 40t-36.5 19h-294q-29 0 -48 19t-19 48v42q0 29 19 47.5t48 18.5h346q18 0 35 13.5t20 29.5z +M1227 1324q-15 -73 -53.5 -266.5t-69.5 -350t-35 -173.5q-6 -22 -9 -32.5t-14 -32.5t-24.5 -33t-38.5 -21t-58 -10h-271q-13 0 -22 -10q-8 -9 -426 -494q-22 -25 -58.5 -28.5t-48.5 5.5q-55 22 -55 98v1410q0 55 38 102.5t120 47.5h888q95 0 127 -53t10 -159zM1227 1324 +l-158 -790q4 17 35 173.5t69.5 350t53.5 266.5z" /> + <glyph glyph-name="trello" unicode="" +d="M704 192v1024q0 14 -9 23t-23 9h-480q-14 0 -23 -9t-9 -23v-1024q0 -14 9 -23t23 -9h480q14 0 23 9t9 23zM1376 576v640q0 14 -9 23t-23 9h-480q-14 0 -23 -9t-9 -23v-640q0 -14 9 -23t23 -9h480q14 0 23 9t9 23zM1536 1344v-1408q0 -26 -19 -45t-45 -19h-1408 +q-26 0 -45 19t-19 45v1408q0 26 19 45t45 19h1408q26 0 45 -19t19 -45z" /> + <glyph glyph-name="female" unicode="" horiz-adv-x="1280" +d="M1280 480q0 -40 -28 -68t-68 -28q-51 0 -80 43l-227 341h-45v-132l247 -411q9 -15 9 -33q0 -26 -19 -45t-45 -19h-192v-272q0 -46 -33 -79t-79 -33h-160q-46 0 -79 33t-33 79v272h-192q-26 0 -45 19t-19 45q0 18 9 33l247 411v132h-45l-227 -341q-29 -43 -80 -43 +q-40 0 -68 28t-28 68q0 29 16 53l256 384q73 107 176 107h384q103 0 176 -107l256 -384q16 -24 16 -53zM864 1280q0 -93 -65.5 -158.5t-158.5 -65.5t-158.5 65.5t-65.5 158.5t65.5 158.5t158.5 65.5t158.5 -65.5t65.5 -158.5z" /> + <glyph glyph-name="male" unicode="" horiz-adv-x="1024" +d="M1024 832v-416q0 -40 -28 -68t-68 -28t-68 28t-28 68v352h-64v-912q0 -46 -33 -79t-79 -33t-79 33t-33 79v464h-64v-464q0 -46 -33 -79t-79 -33t-79 33t-33 79v912h-64v-352q0 -40 -28 -68t-68 -28t-68 28t-28 68v416q0 80 56 136t136 56h640q80 0 136 -56t56 -136z +M736 1280q0 -93 -65.5 -158.5t-158.5 -65.5t-158.5 65.5t-65.5 158.5t65.5 158.5t158.5 65.5t158.5 -65.5t65.5 -158.5z" /> + <glyph glyph-name="gittip" unicode="" +d="M773 234l350 473q16 22 24.5 59t-6 85t-61.5 79q-40 26 -83 25.5t-73.5 -17.5t-54.5 -45q-36 -40 -96 -40q-59 0 -95 40q-24 28 -54.5 45t-73.5 17.5t-84 -25.5q-46 -31 -60.5 -79t-6 -85t24.5 -59zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103 +t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="sun" unicode="" horiz-adv-x="1792" +d="M1472 640q0 117 -45.5 223.5t-123 184t-184 123t-223.5 45.5t-223.5 -45.5t-184 -123t-123 -184t-45.5 -223.5t45.5 -223.5t123 -184t184 -123t223.5 -45.5t223.5 45.5t184 123t123 184t45.5 223.5zM1748 363q-4 -15 -20 -20l-292 -96v-306q0 -16 -13 -26q-15 -10 -29 -4 +l-292 94l-180 -248q-10 -13 -26 -13t-26 13l-180 248l-292 -94q-14 -6 -29 4q-13 10 -13 26v306l-292 96q-16 5 -20 20q-5 17 4 29l180 248l-180 248q-9 13 -4 29q4 15 20 20l292 96v306q0 16 13 26q15 10 29 4l292 -94l180 248q9 12 26 12t26 -12l180 -248l292 94 +q14 6 29 -4q13 -10 13 -26v-306l292 -96q16 -5 20 -20q5 -16 -4 -29l-180 -248l180 -248q9 -12 4 -29z" /> + <glyph glyph-name="_366" unicode="" +d="M1262 233q-54 -9 -110 -9q-182 0 -337 90t-245 245t-90 337q0 192 104 357q-201 -60 -328.5 -229t-127.5 -384q0 -130 51 -248.5t136.5 -204t204 -136.5t248.5 -51q144 0 273.5 61.5t220.5 171.5zM1465 318q-94 -203 -283.5 -324.5t-413.5 -121.5q-156 0 -298 61 +t-245 164t-164 245t-61 298q0 153 57.5 292.5t156 241.5t235.5 164.5t290 68.5q44 2 61 -39q18 -41 -15 -72q-86 -78 -131.5 -181.5t-45.5 -218.5q0 -148 73 -273t198 -198t273 -73q118 0 228 51q41 18 72 -13q14 -14 17.5 -34t-4.5 -38z" /> + <glyph glyph-name="archive" unicode="" horiz-adv-x="1792" +d="M1088 704q0 26 -19 45t-45 19h-256q-26 0 -45 -19t-19 -45t19 -45t45 -19h256q26 0 45 19t19 45zM1664 896v-960q0 -26 -19 -45t-45 -19h-1408q-26 0 -45 19t-19 45v960q0 26 19 45t45 19h1408q26 0 45 -19t19 -45zM1728 1344v-256q0 -26 -19 -45t-45 -19h-1536 +q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h1536q26 0 45 -19t19 -45z" /> + <glyph glyph-name="bug" unicode="" horiz-adv-x="1664" +d="M1632 576q0 -26 -19 -45t-45 -19h-224q0 -171 -67 -290l208 -209q19 -19 19 -45t-19 -45q-18 -19 -45 -19t-45 19l-198 197q-5 -5 -15 -13t-42 -28.5t-65 -36.5t-82 -29t-97 -13v896h-128v-896q-51 0 -101.5 13.5t-87 33t-66 39t-43.5 32.5l-15 14l-183 -207 +q-20 -21 -48 -21q-24 0 -43 16q-19 18 -20.5 44.5t15.5 46.5l202 227q-58 114 -58 274h-224q-26 0 -45 19t-19 45t19 45t45 19h224v294l-173 173q-19 19 -19 45t19 45t45 19t45 -19l173 -173h844l173 173q19 19 45 19t45 -19t19 -45t-19 -45l-173 -173v-294h224q26 0 45 -19 +t19 -45zM1152 1152h-640q0 133 93.5 226.5t226.5 93.5t226.5 -93.5t93.5 -226.5z" /> + <glyph glyph-name="vk" unicode="" horiz-adv-x="1920" +d="M1917 1016q23 -64 -150 -294q-24 -32 -65 -85q-40 -51 -55 -72t-30.5 -49.5t-12 -42t13 -34.5t32.5 -43t57 -53q4 -2 5 -4q141 -131 191 -221q3 -5 6.5 -12.5t7 -26.5t-0.5 -34t-25 -27.5t-59 -12.5l-256 -4q-24 -5 -56 5t-52 22l-20 12q-30 21 -70 64t-68.5 77.5t-61 58 +t-56.5 15.5q-3 -1 -8 -3.5t-17 -14.5t-21.5 -29.5t-17 -52t-6.5 -77.5q0 -15 -3.5 -27.5t-7.5 -18.5l-4 -5q-18 -19 -53 -22h-115q-71 -4 -146 16.5t-131.5 53t-103 66t-70.5 57.5l-25 24q-10 10 -27.5 30t-71.5 91t-106 151t-122.5 211t-130.5 272q-6 16 -6 27t3 16l4 6 +q15 19 57 19l274 2q12 -2 23 -6.5t16 -8.5l5 -3q16 -11 24 -32q20 -50 46 -103.5t41 -81.5l16 -29q29 -60 56 -104t48.5 -68.5t41.5 -38.5t34 -14t27 5q2 1 5 5t12 22t13.5 47t9.5 81t0 125q-2 40 -9 73t-14 46l-6 12q-25 34 -85 43q-13 2 5 24q16 19 38 30q53 26 239 24 +q82 -1 135 -13q20 -5 33.5 -13.5t20.5 -24t10.5 -32t3.5 -45.5t-1 -55t-2.5 -70.5t-1.5 -82.5q0 -11 -1 -42t-0.5 -48t3.5 -40.5t11.5 -39t22.5 -24.5q8 -2 17 -4t26 11t38 34.5t52 67t68 107.5q60 104 107 225q4 10 10 17.5t11 10.5l4 3l5 2.5t13 3t20 0.5l288 2 +q39 5 64 -2.5t31 -16.5z" /> + <glyph glyph-name="weibo" unicode="" horiz-adv-x="1792" +d="M675 252q21 34 11 69t-45 50q-34 14 -73 1t-60 -46q-22 -34 -13 -68.5t43 -50.5t74.5 -2.5t62.5 47.5zM769 373q8 13 3.5 26.5t-17.5 18.5q-14 5 -28.5 -0.5t-21.5 -18.5q-17 -31 13 -45q14 -5 29 0.5t22 18.5zM943 266q-45 -102 -158 -150t-224 -12 +q-107 34 -147.5 126.5t6.5 187.5q47 93 151.5 139t210.5 19q111 -29 158.5 -119.5t2.5 -190.5zM1255 426q-9 96 -89 170t-208.5 109t-274.5 21q-223 -23 -369.5 -141.5t-132.5 -264.5q9 -96 89 -170t208.5 -109t274.5 -21q223 23 369.5 141.5t132.5 264.5zM1563 422 +q0 -68 -37 -139.5t-109 -137t-168.5 -117.5t-226 -83t-270.5 -31t-275 33.5t-240.5 93t-171.5 151t-65 199.5q0 115 69.5 245t197.5 258q169 169 341.5 236t246.5 -7q65 -64 20 -209q-4 -14 -1 -20t10 -7t14.5 0.5t13.5 3.5l6 2q139 59 246 59t153 -61q45 -63 0 -178 +q-2 -13 -4.5 -20t4.5 -12.5t12 -7.5t17 -6q57 -18 103 -47t80 -81.5t34 -116.5zM1489 1046q42 -47 54.5 -108.5t-6.5 -117.5q-8 -23 -29.5 -34t-44.5 -4q-23 8 -34 29.5t-4 44.5q20 63 -24 111t-107 35q-24 -5 -45 8t-25 37q-5 24 8 44.5t37 25.5q60 13 119 -5.5t101 -65.5z +M1670 1209q87 -96 112.5 -222.5t-13.5 -241.5q-9 -27 -34 -40t-52 -4t-40 34t-5 52q28 82 10 172t-80 158q-62 69 -148 95.5t-173 8.5q-28 -6 -52 9.5t-30 43.5t9.5 51.5t43.5 29.5q123 26 244 -11.5t208 -134.5z" /> + <glyph glyph-name="renren" unicode="" +d="M1133 -34q-171 -94 -368 -94q-196 0 -367 94q138 87 235.5 211t131.5 268q35 -144 132.5 -268t235.5 -211zM638 1394v-485q0 -252 -126.5 -459.5t-330.5 -306.5q-181 215 -181 495q0 187 83.5 349.5t229.5 269.5t325 137zM1536 638q0 -280 -181 -495 +q-204 99 -330.5 306.5t-126.5 459.5v485q179 -30 325 -137t229.5 -269.5t83.5 -349.5z" /> + <glyph glyph-name="_372" unicode="" horiz-adv-x="1408" +d="M1402 433q-32 -80 -76 -138t-91 -88.5t-99 -46.5t-101.5 -14.5t-96.5 8.5t-86.5 22t-69.5 27.5t-46 22.5l-17 10q-113 -228 -289.5 -359.5t-384.5 -132.5q-19 0 -32 13t-13 32t13 31.5t32 12.5q173 1 322.5 107.5t251.5 294.5q-36 -14 -72 -23t-83 -13t-91 2.5t-93 28.5 +t-92 59t-84.5 100t-74.5 146q114 47 214 57t167.5 -7.5t124.5 -56.5t88.5 -77t56.5 -82q53 131 79 291q-7 -1 -18 -2.5t-46.5 -2.5t-69.5 0.5t-81.5 10t-88.5 23t-84 42.5t-75 65t-54.5 94.5t-28.5 127.5q70 28 133.5 36.5t112.5 -1t92 -30t73.5 -50t56 -61t42 -63t27.5 -56 +t16 -39.5l4 -16q12 122 12 195q-8 6 -21.5 16t-49 44.5t-63.5 71.5t-54 93t-33 112.5t12 127t70 138.5q73 -25 127.5 -61.5t84.5 -76.5t48 -85t20.5 -89t-0.5 -85.5t-13 -76.5t-19 -62t-17 -42l-7 -15q1 -4 1 -50t-1 -72q3 7 10 18.5t30.5 43t50.5 58t71 55.5t91.5 44.5 +t112 14.5t132.5 -24q-2 -78 -21.5 -141.5t-50 -104.5t-69.5 -71.5t-81.5 -45.5t-84.5 -24t-80 -9.5t-67.5 1t-46.5 4.5l-17 3q-23 -147 -73 -283q6 7 18 18.5t49.5 41t77.5 52.5t99.5 42t117.5 20t129 -23.5t137 -77.5z" /> + <glyph glyph-name="stack_exchange" unicode="" horiz-adv-x="1280" +d="M1259 283v-66q0 -85 -57.5 -144.5t-138.5 -59.5h-57l-260 -269v269h-529q-81 0 -138.5 59.5t-57.5 144.5v66h1238zM1259 609v-255h-1238v255h1238zM1259 937v-255h-1238v255h1238zM1259 1077v-67h-1238v67q0 84 57.5 143.5t138.5 59.5h846q81 0 138.5 -59.5t57.5 -143.5z +" /> + <glyph glyph-name="_374" unicode="" +d="M1152 640q0 -14 -9 -23l-320 -320q-9 -9 -23 -9q-13 0 -22.5 9.5t-9.5 22.5v192h-352q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h352v192q0 14 9 23t23 9q12 0 24 -10l319 -319q9 -9 9 -23zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198 +t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="arrow_circle_alt_left" unicode="" +d="M1152 736v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-352v-192q0 -14 -9 -23t-23 -9q-12 0 -24 10l-319 319q-9 9 -9 23t9 23l320 320q9 9 23 9q13 0 22.5 -9.5t9.5 -22.5v-192h352q13 0 22.5 -9.5t9.5 -22.5zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198 +t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="_376" unicode="" +d="M1024 960v-640q0 -26 -19 -45t-45 -19q-20 0 -37 12l-448 320q-27 19 -27 52t27 52l448 320q17 12 37 12q26 0 45 -19t19 -45zM1280 160v960q0 13 -9.5 22.5t-22.5 9.5h-960q-13 0 -22.5 -9.5t-9.5 -22.5v-960q0 -13 9.5 -22.5t22.5 -9.5h960q13 0 22.5 9.5t9.5 22.5z +M1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="dot_circle_alt" unicode="" +d="M1024 640q0 -106 -75 -181t-181 -75t-181 75t-75 181t75 181t181 75t181 -75t75 -181zM768 1184q-148 0 -273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273t-73 273t-198 198t-273 73zM1536 640q0 -209 -103 -385.5t-279.5 -279.5 +t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="_378" unicode="" horiz-adv-x="1664" +d="M1023 349l102 -204q-58 -179 -210 -290t-339 -111q-156 0 -288.5 77.5t-210 210t-77.5 288.5q0 181 104.5 330t274.5 211l17 -131q-122 -54 -195 -165.5t-73 -244.5q0 -185 131.5 -316.5t316.5 -131.5q126 0 232.5 65t165 175.5t49.5 236.5zM1571 249l58 -114l-256 -128 +q-13 -7 -29 -7q-40 0 -57 35l-239 477h-472q-24 0 -42.5 16.5t-21.5 40.5l-96 779q-2 17 6 42q14 51 57 82.5t97 31.5q66 0 113 -47t47 -113q0 -69 -52 -117.5t-120 -41.5l37 -289h423v-128h-407l16 -128h455q40 0 57 -35l228 -455z" /> + <glyph glyph-name="vimeo_square" unicode="" +d="M1292 898q10 216 -161 222q-231 8 -312 -261q44 19 82 19q85 0 74 -96q-4 -57 -74 -167t-105 -110q-43 0 -82 169q-13 54 -45 255q-30 189 -160 177q-59 -7 -164 -100l-81 -72l-81 -72l52 -67q76 52 87 52q57 0 107 -179q15 -55 45 -164.5t45 -164.5q68 -179 164 -179 +q157 0 383 294q220 283 226 444zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="_380" unicode="" horiz-adv-x="1152" +d="M1152 704q0 -191 -94.5 -353t-256.5 -256.5t-353 -94.5h-160q-14 0 -23 9t-9 23v611l-215 -66q-3 -1 -9 -1q-10 0 -19 6q-13 10 -13 26v128q0 23 23 31l233 71v93l-215 -66q-3 -1 -9 -1q-10 0 -19 6q-13 10 -13 26v128q0 23 23 31l233 71v250q0 14 9 23t23 9h160 +q14 0 23 -9t9 -23v-181l375 116q15 5 28 -5t13 -26v-128q0 -23 -23 -31l-393 -121v-93l375 116q15 5 28 -5t13 -26v-128q0 -23 -23 -31l-393 -121v-487q188 13 318 151t130 328q0 14 9 23t23 9h160q14 0 23 -9t9 -23z" /> + <glyph glyph-name="plus_square_o" unicode="" horiz-adv-x="1408" +d="M1152 736v-64q0 -14 -9 -23t-23 -9h-352v-352q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v352h-352q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h352v352q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-352h352q14 0 23 -9t9 -23zM1280 288v832q0 66 -47 113t-113 47h-832 +q-66 0 -113 -47t-47 -113v-832q0 -66 47 -113t113 -47h832q66 0 113 47t47 113zM1408 1120v-832q0 -119 -84.5 -203.5t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h832q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="_382" unicode="" horiz-adv-x="2176" +d="M620 416q-110 -64 -268 -64h-128v64h-64q-13 0 -22.5 23.5t-9.5 56.5q0 24 7 49q-58 2 -96.5 10.5t-38.5 20.5t38.5 20.5t96.5 10.5q-7 25 -7 49q0 33 9.5 56.5t22.5 23.5h64v64h128q158 0 268 -64h1113q42 -7 106.5 -18t80.5 -14q89 -15 150 -40.5t83.5 -47.5t22.5 -40 +t-22.5 -40t-83.5 -47.5t-150 -40.5q-16 -3 -80.5 -14t-106.5 -18h-1113zM1739 668q53 -36 53 -92t-53 -92l81 -30q68 48 68 122t-68 122zM625 400h1015q-217 -38 -456 -80q-57 0 -113 -24t-83 -48l-28 -24l-288 -288q-26 -26 -70.5 -45t-89.5 -19h-96l-93 464h29 +q157 0 273 64zM352 816h-29l93 464h96q46 0 90 -19t70 -45l288 -288q4 -4 11 -10.5t30.5 -23t48.5 -29t61.5 -23t72.5 -10.5l456 -80h-1015q-116 64 -273 64z" /> + <glyph glyph-name="_383" unicode="" horiz-adv-x="1664" +d="M1519 760q62 0 103.5 -40.5t41.5 -101.5q0 -97 -93 -130l-172 -59l56 -167q7 -21 7 -47q0 -59 -42 -102t-101 -43q-47 0 -85.5 27t-53.5 72l-55 165l-310 -106l55 -164q8 -24 8 -47q0 -59 -42 -102t-102 -43q-47 0 -85 27t-53 72l-55 163l-153 -53q-29 -9 -50 -9 +q-61 0 -101.5 40t-40.5 101q0 47 27.5 85t71.5 53l156 53l-105 313l-156 -54q-26 -8 -48 -8q-60 0 -101 40.5t-41 100.5q0 47 27.5 85t71.5 53l157 53l-53 159q-8 24 -8 47q0 60 42 102.5t102 42.5q47 0 85 -27t53 -72l54 -160l310 105l-54 160q-8 24 -8 47q0 59 42.5 102 +t101.5 43q47 0 85.5 -27.5t53.5 -71.5l53 -161l162 55q21 6 43 6q60 0 102.5 -39.5t42.5 -98.5q0 -45 -30 -81.5t-74 -51.5l-157 -54l105 -316l164 56q24 8 46 8zM725 498l310 105l-105 315l-310 -107z" /> + <glyph glyph-name="_384" unicode="" +d="M1248 1408q119 0 203.5 -84.5t84.5 -203.5v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960zM1280 352v436q-31 -35 -64 -55q-34 -22 -132.5 -85t-151.5 -99q-98 -69 -164 -69v0v0q-66 0 -164 69 +q-47 32 -142 92.5t-142 92.5q-12 8 -33 27t-31 27v-436q0 -40 28 -68t68 -28h832q40 0 68 28t28 68zM1280 925q0 41 -27.5 70t-68.5 29h-832q-40 0 -68 -28t-28 -68q0 -37 30.5 -76.5t67.5 -64.5q47 -32 137.5 -89t129.5 -83q3 -2 17 -11.5t21 -14t21 -13t23.5 -13 +t21.5 -9.5t22.5 -7.5t20.5 -2.5t20.5 2.5t22.5 7.5t21.5 9.5t23.5 13t21 13t21 14t17 11.5l267 174q35 23 66.5 62.5t31.5 73.5z" /> + <glyph glyph-name="_385" unicode="" horiz-adv-x="1792" +d="M127 640q0 163 67 313l367 -1005q-196 95 -315 281t-119 411zM1415 679q0 -19 -2.5 -38.5t-10 -49.5t-11.5 -44t-17.5 -59t-17.5 -58l-76 -256l-278 826q46 3 88 8q19 2 26 18.5t-2.5 31t-28.5 13.5l-205 -10q-75 1 -202 10q-12 1 -20.5 -5t-11.5 -15t-1.5 -18.5t9 -16.5 +t19.5 -8l80 -8l120 -328l-168 -504l-280 832q46 3 88 8q19 2 26 18.5t-2.5 31t-28.5 13.5l-205 -10q-7 0 -23 0.5t-26 0.5q105 160 274.5 253.5t367.5 93.5q147 0 280.5 -53t238.5 -149h-10q-55 0 -92 -40.5t-37 -95.5q0 -12 2 -24t4 -21.5t8 -23t9 -21t12 -22.5t12.5 -21 +t14.5 -24t14 -23q63 -107 63 -212zM909 573l237 -647q1 -6 5 -11q-126 -44 -255 -44q-112 0 -217 32zM1570 1009q95 -174 95 -369q0 -209 -104 -385.5t-279 -278.5l235 678q59 169 59 276q0 42 -6 79zM896 1536q182 0 348 -71t286 -191t191 -286t71 -348t-71 -348t-191 -286 +t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71zM896 -215q173 0 331.5 68t273 182.5t182.5 273t68 331.5t-68 331.5t-182.5 273t-273 182.5t-331.5 68t-331.5 -68t-273 -182.5t-182.5 -273t-68 -331.5t68 -331.5t182.5 -273 +t273 -182.5t331.5 -68z" /> + <glyph glyph-name="_386" unicode="" horiz-adv-x="1792" +d="M1086 1536v-1536l-272 -128q-228 20 -414 102t-293 208.5t-107 272.5q0 140 100.5 263.5t275 205.5t391.5 108v-172q-217 -38 -356.5 -150t-139.5 -255q0 -152 154.5 -267t388.5 -145v1360zM1755 954l37 -390l-525 114l147 83q-119 70 -280 99v172q277 -33 481 -157z" /> + <glyph glyph-name="_387" unicode="" horiz-adv-x="2048" +d="M960 1536l960 -384v-128h-128q0 -26 -20.5 -45t-48.5 -19h-1526q-28 0 -48.5 19t-20.5 45h-128v128zM256 896h256v-768h128v768h256v-768h128v768h256v-768h128v768h256v-768h59q28 0 48.5 -19t20.5 -45v-64h-1664v64q0 26 20.5 45t48.5 19h59v768zM1851 -64 +q28 0 48.5 -19t20.5 -45v-128h-1920v128q0 26 20.5 45t48.5 19h1782z" /> + <glyph glyph-name="_388" unicode="" horiz-adv-x="2304" +d="M1774 700l18 -316q4 -69 -82 -128t-235 -93.5t-323 -34.5t-323 34.5t-235 93.5t-82 128l18 316l574 -181q22 -7 48 -7t48 7zM2304 1024q0 -23 -22 -31l-1120 -352q-4 -1 -10 -1t-10 1l-652 206q-43 -34 -71 -111.5t-34 -178.5q63 -36 63 -109q0 -69 -58 -107l58 -433 +q2 -14 -8 -25q-9 -11 -24 -11h-192q-15 0 -24 11q-10 11 -8 25l58 433q-58 38 -58 107q0 73 65 111q11 207 98 330l-333 104q-22 8 -22 31t22 31l1120 352q4 1 10 1t10 -1l1120 -352q22 -8 22 -31z" /> + <glyph glyph-name="_389" unicode="" +d="M859 579l13 -707q-62 11 -105 11q-41 0 -105 -11l13 707q-40 69 -168.5 295.5t-216.5 374.5t-181 287q58 -15 108 -15q44 0 111 15q63 -111 133.5 -229.5t167 -276.5t138.5 -227q37 61 109.5 177.5t117.5 190t105 176t107 189.5q54 -14 107 -14q56 0 114 14v0 +q-28 -39 -60 -88.5t-49.5 -78.5t-56.5 -96t-49 -84q-146 -248 -353 -610z" /> + <glyph glyph-name="uniF1A0" unicode="" +d="M768 750h725q12 -67 12 -128q0 -217 -91 -387.5t-259.5 -266.5t-386.5 -96q-157 0 -299 60.5t-245 163.5t-163.5 245t-60.5 299t60.5 299t163.5 245t245 163.5t299 60.5q300 0 515 -201l-209 -201q-123 119 -306 119q-129 0 -238.5 -65t-173.5 -176.5t-64 -243.5 +t64 -243.5t173.5 -176.5t238.5 -65q87 0 160 24t120 60t82 82t51.5 87t22.5 78h-436v264z" /> + <glyph glyph-name="f1a1" unicode="" horiz-adv-x="1792" +d="M1095 369q16 -16 0 -31q-62 -62 -199 -62t-199 62q-16 15 0 31q6 6 15 6t15 -6q48 -49 169 -49q120 0 169 49q6 6 15 6t15 -6zM788 550q0 -37 -26 -63t-63 -26t-63.5 26t-26.5 63q0 38 26.5 64t63.5 26t63 -26.5t26 -63.5zM1183 550q0 -37 -26.5 -63t-63.5 -26t-63 26 +t-26 63t26 63.5t63 26.5t63.5 -26t26.5 -64zM1434 670q0 49 -35 84t-85 35t-86 -36q-130 90 -311 96l63 283l200 -45q0 -37 26 -63t63 -26t63.5 26.5t26.5 63.5t-26.5 63.5t-63.5 26.5q-54 0 -80 -50l-221 49q-19 5 -25 -16l-69 -312q-180 -7 -309 -97q-35 37 -87 37 +q-50 0 -85 -35t-35 -84q0 -35 18.5 -64t49.5 -44q-6 -27 -6 -56q0 -142 140 -243t337 -101q198 0 338 101t140 243q0 32 -7 57q30 15 48 43.5t18 63.5zM1792 640q0 -182 -71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191 +t348 71t348 -71t286 -191t191 -286t71 -348z" /> + <glyph glyph-name="_392" unicode="" +d="M939 407q13 -13 0 -26q-53 -53 -171 -53t-171 53q-13 13 0 26q5 6 13 6t13 -6q42 -42 145 -42t145 42q5 6 13 6t13 -6zM676 563q0 -31 -23 -54t-54 -23t-54 23t-23 54q0 32 22.5 54.5t54.5 22.5t54.5 -22.5t22.5 -54.5zM1014 563q0 -31 -23 -54t-54 -23t-54 23t-23 54 +q0 32 22.5 54.5t54.5 22.5t54.5 -22.5t22.5 -54.5zM1229 666q0 42 -30 72t-73 30q-42 0 -73 -31q-113 78 -267 82l54 243l171 -39q1 -32 23.5 -54t53.5 -22q32 0 54.5 22.5t22.5 54.5t-22.5 54.5t-54.5 22.5q-48 0 -69 -43l-189 42q-17 5 -21 -13l-60 -268q-154 -6 -265 -83 +q-30 32 -74 32q-43 0 -73 -30t-30 -72q0 -30 16 -55t42 -38q-5 -25 -5 -48q0 -122 120 -208.5t289 -86.5q170 0 290 86.5t120 208.5q0 25 -6 49q25 13 40.5 37.5t15.5 54.5zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960 +q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="_393" unicode="" +d="M866 697l90 27v62q0 79 -58 135t-138 56t-138 -55.5t-58 -134.5v-283q0 -20 -14 -33.5t-33 -13.5t-32.5 13.5t-13.5 33.5v120h-151v-122q0 -82 57.5 -139t139.5 -57q81 0 138.5 56.5t57.5 136.5v280q0 19 13.5 33t33.5 14q19 0 32.5 -14t13.5 -33v-54zM1199 502v122h-150 +v-126q0 -20 -13.5 -33.5t-33.5 -13.5q-19 0 -32.5 14t-13.5 33v123l-90 -26l-60 28v-123q0 -80 58 -137t139 -57t138.5 57t57.5 139zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103 +t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="f1a4" unicode="" horiz-adv-x="1920" +d="M1062 824v118q0 42 -30 72t-72 30t-72 -30t-30 -72v-612q0 -175 -126 -299t-303 -124q-178 0 -303.5 125.5t-125.5 303.5v266h328v-262q0 -43 30 -72.5t72 -29.5t72 29.5t30 72.5v620q0 171 126.5 292t301.5 121q176 0 302 -122t126 -294v-136l-195 -58zM1592 602h328 +v-266q0 -178 -125.5 -303.5t-303.5 -125.5q-177 0 -303 124.5t-126 300.5v268l131 -61l195 58v-270q0 -42 30 -71.5t72 -29.5t72 29.5t30 71.5v275z" /> + <glyph glyph-name="_395" unicode="" +d="M1472 160v480h-704v704h-480q-93 0 -158.5 -65.5t-65.5 -158.5v-480h704v-704h480q93 0 158.5 65.5t65.5 158.5zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5 +t84.5 -203.5z" /> + <glyph glyph-name="_396" unicode="" horiz-adv-x="2048" +d="M328 1254h204v-983h-532v697h328v286zM328 435v369h-123v-369h123zM614 968v-697h205v697h-205zM614 1254v-204h205v204h-205zM901 968h533v-942h-533v163h328v82h-328v697zM1229 435v369h-123v-369h123zM1516 968h532v-942h-532v163h327v82h-327v697zM1843 435v369h-123 +v-369h123z" /> + <glyph glyph-name="_397" unicode="" +d="M1046 516q0 -64 -38 -109t-91 -45q-43 0 -70 15v277q28 17 70 17q53 0 91 -45.5t38 -109.5zM703 944q0 -64 -38 -109.5t-91 -45.5q-43 0 -70 15v277q28 17 70 17q53 0 91 -45t38 -109zM1265 513q0 134 -88 229t-213 95q-20 0 -39 -3q-23 -78 -78 -136q-87 -95 -211 -101 +v-636l211 41v206q51 -19 117 -19q125 0 213 95t88 229zM922 940q0 134 -88.5 229t-213.5 95q-74 0 -141 -36h-186v-840l211 41v206q55 -19 116 -19q125 0 213.5 95t88.5 229zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960 +q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="_398" unicode="" horiz-adv-x="2038" +d="M1222 607q75 3 143.5 -20.5t118 -58.5t101 -94.5t84 -108t75.5 -120.5q33 -56 78.5 -109t75.5 -80.5t99 -88.5q-48 -30 -108.5 -57.5t-138.5 -59t-114 -47.5q-44 37 -74 115t-43.5 164.5t-33 180.5t-42.5 168.5t-72.5 123t-122.5 48.5l-10 -2l-6 -4q4 -5 13 -14 +q6 -5 28 -23.5t25.5 -22t19 -18t18 -20.5t11.5 -21t10.5 -27.5t4.5 -31t4 -40.5l1 -33q1 -26 -2.5 -57.5t-7.5 -52t-12.5 -58.5t-11.5 -53q-35 1 -101 -9.5t-98 -10.5q-39 0 -72 10q-2 16 -2 47q0 74 3 96q2 13 31.5 41.5t57 59t26.5 51.5q-24 2 -43 -24 +q-36 -53 -111.5 -99.5t-136.5 -46.5q-25 0 -75.5 63t-106.5 139.5t-84 96.5q-6 4 -27 30q-482 -112 -513 -112q-16 0 -28 11t-12 27q0 15 8.5 26.5t22.5 14.5l486 106q-8 14 -8 25t5.5 17.5t16 11.5t20 7t23 4.5t18.5 4.5q4 1 15.5 7.5t17.5 6.5q15 0 28 -16t20 -33 +q163 37 172 37q17 0 29.5 -11t12.5 -28q0 -15 -8.5 -26t-23.5 -14l-182 -40l-1 -16q-1 -26 81.5 -117.5t104.5 -91.5q47 0 119 80t72 129q0 36 -23.5 53t-51 18.5t-51 11.5t-23.5 34q0 16 10 34l-68 19q43 44 43 117q0 26 -5 58q82 16 144 16q44 0 71.5 -1.5t48.5 -8.5 +t31 -13.5t20.5 -24.5t15.5 -33.5t17 -47.5t24 -60l50 25q-3 -40 -23 -60t-42.5 -21t-40 -6.5t-16.5 -20.5zM1282 842q-5 5 -13.5 15.5t-12 14.5t-10.5 11.5t-10 10.5l-8 8t-8.5 7.5t-8 5t-8.5 4.5q-7 3 -14.5 5t-20.5 2.5t-22 0.5h-32.5h-37.5q-126 0 -217 -43 +q16 30 36 46.5t54 29.5t65.5 36t46 36.5t50 55t43.5 50.5q12 -9 28 -31.5t32 -36.5t38 -13l12 1v-76l22 -1q247 95 371 190q28 21 50 39t42.5 37.5t33 31t29.5 34t24 31t24.5 37t23 38t27 47.5t29.5 53l7 9q-2 -53 -43 -139q-79 -165 -205 -264t-306 -142q-14 -3 -42 -7.5 +t-50 -9.5t-39 -14q3 -19 24.5 -46t21.5 -34q0 -11 -26 -30zM1061 -79q39 26 131.5 47.5t146.5 21.5q9 0 22.5 -15.5t28 -42.5t26 -50t24 -51t14.5 -33q-121 -45 -244 -45q-61 0 -125 11zM822 568l48 12l109 -177l-73 -48zM1323 51q3 -15 3 -16q0 -7 -17.5 -14.5t-46 -13 +t-54 -9.5t-53.5 -7.5t-32 -4.5l-7 43q21 2 60.5 8.5t72 10t60.5 3.5h14zM866 679l-96 -20l-6 17q10 1 32.5 7t34.5 6q19 0 35 -10zM1061 45h31l10 -83l-41 -12v95zM1950 1535v1v-1zM1950 1535l-1 -5l-2 -2l1 3zM1950 1535l1 1z" /> + <glyph glyph-name="_399" unicode="" +d="M1167 -50q-5 19 -24 5q-30 -22 -87 -39t-131 -17q-129 0 -193 49q-5 4 -13 4q-11 0 -26 -12q-7 -6 -7.5 -16t7.5 -20q34 -32 87.5 -46t102.5 -12.5t99 4.5q41 4 84.5 20.5t65 30t28.5 20.5q12 12 7 29zM1128 65q-19 47 -39 61q-23 15 -76 15q-47 0 -71 -10 +q-29 -12 -78 -56q-26 -24 -12 -44q9 -8 17.5 -4.5t31.5 23.5q3 2 10.5 8.5t10.5 8.5t10 7t11.5 7t12.5 5t15 4.5t16.5 2.5t20.5 1q27 0 44.5 -7.5t23 -14.5t13.5 -22q10 -17 12.5 -20t12.5 1q23 12 14 34zM1483 346q0 22 -5 44.5t-16.5 45t-34 36.5t-52.5 14 +q-33 0 -97 -41.5t-129 -83.5t-101 -42q-27 -1 -63.5 19t-76 49t-83.5 58t-100 49t-111 19q-115 -1 -197 -78.5t-84 -178.5q-2 -112 74 -164q29 -20 62.5 -28.5t103.5 -8.5q57 0 132 32.5t134 71t120 70.5t93 31q26 -1 65 -31.5t71.5 -67t68 -67.5t55.5 -32q35 -3 58.5 14 +t55.5 63q28 41 42.5 101t14.5 106zM1536 506q0 -164 -62 -304.5t-166 -236t-242.5 -149.5t-290.5 -54t-293 57.5t-247.5 157t-170.5 241.5t-64 302q0 89 19.5 172.5t49 145.5t70.5 118.5t78.5 94t78.5 69.5t64.5 46.5t42.5 24.5q14 8 51 26.5t54.5 28.5t48 30t60.5 44 +q36 28 58 72.5t30 125.5q129 -155 186 -193q44 -29 130 -68t129 -66q21 -13 39 -25t60.5 -46.5t76 -70.5t75 -95t69 -122t47 -148.5t19.5 -177.5z" /> + <glyph glyph-name="_400" unicode="" +d="M1070 463l-160 -160l-151 -152l-30 -30q-65 -64 -151.5 -87t-171.5 -2q-16 -70 -72 -115t-129 -45q-85 0 -145 60.5t-60 145.5q0 72 44.5 128t113.5 72q-22 86 1 173t88 152l12 12l151 -152l-11 -11q-37 -37 -37 -89t37 -90q37 -37 89 -37t89 37l30 30l151 152l161 160z +M729 1145l12 -12l-152 -152l-12 12q-37 37 -89 37t-89 -37t-37 -89.5t37 -89.5l29 -29l152 -152l160 -160l-151 -152l-161 160l-151 152l-30 30q-68 67 -90 159.5t5 179.5q-70 15 -115 71t-45 129q0 85 60 145.5t145 60.5q76 0 133.5 -49t69.5 -123q84 20 169.5 -3.5 +t149.5 -87.5zM1536 78q0 -85 -60 -145.5t-145 -60.5q-74 0 -131 47t-71 118q-86 -28 -179.5 -6t-161.5 90l-11 12l151 152l12 -12q37 -37 89 -37t89 37t37 89t-37 89l-30 30l-152 152l-160 160l152 152l160 -160l152 -152l29 -30q64 -64 87.5 -150.5t2.5 -171.5 +q76 -11 126.5 -68.5t50.5 -134.5zM1534 1202q0 -77 -51 -135t-127 -69q26 -85 3 -176.5t-90 -158.5l-12 -12l-151 152l12 12q37 37 37 89t-37 89t-89 37t-89 -37l-30 -30l-152 -152l-160 -160l-152 152l161 160l152 152l29 30q67 67 159 89.5t178 -3.5q11 75 68.5 126 +t135.5 51q85 0 145 -60.5t60 -145.5z" /> + <glyph glyph-name="f1ab" unicode="" +d="M654 458q-1 -3 -12.5 0.5t-31.5 11.5l-20 9q-44 20 -87 49q-7 5 -41 31.5t-38 28.5q-67 -103 -134 -181q-81 -95 -105 -110q-4 -2 -19.5 -4t-18.5 0q6 4 82 92q21 24 85.5 115t78.5 118q17 30 51 98.5t36 77.5q-8 1 -110 -33q-8 -2 -27.5 -7.5t-34.5 -9.5t-17 -5 +q-2 -2 -2 -10.5t-1 -9.5q-5 -10 -31 -15q-23 -7 -47 0q-18 4 -28 21q-4 6 -5 23q6 2 24.5 5t29.5 6q58 16 105 32q100 35 102 35q10 2 43 19.5t44 21.5q9 3 21.5 8t14.5 5.5t6 -0.5q2 -12 -1 -33q0 -2 -12.5 -27t-26.5 -53.5t-17 -33.5q-25 -50 -77 -131l64 -28 +q12 -6 74.5 -32t67.5 -28q4 -1 10.5 -25.5t4.5 -30.5zM449 944q3 -15 -4 -28q-12 -23 -50 -38q-30 -12 -60 -12q-26 3 -49 26q-14 15 -18 41l1 3q3 -3 19.5 -5t26.5 0t58 16q36 12 55 14q17 0 21 -17zM1147 815l63 -227l-139 42zM39 15l694 232v1032l-694 -233v-1031z +M1280 332l102 -31l-181 657l-100 31l-216 -536l102 -31l45 110l211 -65zM777 1294l573 -184v380zM1088 -29l158 -13l-54 -160l-40 66q-130 -83 -276 -108q-58 -12 -91 -12h-84q-79 0 -199.5 39t-183.5 85q-8 7 -8 16q0 8 5 13.5t13 5.5q4 0 18 -7.5t30.5 -16.5t20.5 -11 +q73 -37 159.5 -61.5t157.5 -24.5q95 0 167 14.5t157 50.5q15 7 30.5 15.5t34 19t28.5 16.5zM1536 1050v-1079l-774 246q-14 -6 -375 -127.5t-368 -121.5q-13 0 -18 13q0 1 -1 3v1078q3 9 4 10q5 6 20 11q107 36 149 50v384l558 -198q2 0 160.5 55t316 108.5t161.5 53.5 +q20 0 20 -21v-418z" /> + <glyph glyph-name="_402" unicode="" horiz-adv-x="1792" +d="M288 1152q66 0 113 -47t47 -113v-1088q0 -66 -47 -113t-113 -47h-128q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h128zM1664 989q58 -34 93 -93t35 -128v-768q0 -106 -75 -181t-181 -75h-864q-66 0 -113 47t-47 113v1536q0 40 28 68t68 28h672q40 0 88 -20t76 -48 +l152 -152q28 -28 48 -76t20 -88v-163zM928 0v128q0 14 -9 23t-23 9h-128q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128q14 0 23 9t9 23zM928 256v128q0 14 -9 23t-23 9h-128q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128q14 0 23 9t9 23zM928 512v128q0 14 -9 23 +t-23 9h-128q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128q14 0 23 9t9 23zM1184 0v128q0 14 -9 23t-23 9h-128q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128q14 0 23 9t9 23zM1184 256v128q0 14 -9 23t-23 9h-128q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128 +q14 0 23 9t9 23zM1184 512v128q0 14 -9 23t-23 9h-128q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128q14 0 23 9t9 23zM1440 0v128q0 14 -9 23t-23 9h-128q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128q14 0 23 9t9 23zM1440 256v128q0 14 -9 23t-23 9h-128 +q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128q14 0 23 9t9 23zM1440 512v128q0 14 -9 23t-23 9h-128q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128q14 0 23 9t9 23zM1536 896v256h-160q-40 0 -68 28t-28 68v160h-640v-512h896z" /> + <glyph glyph-name="_403" unicode="" +d="M1344 1536q26 0 45 -19t19 -45v-1664q0 -26 -19 -45t-45 -19h-1280q-26 0 -45 19t-19 45v1664q0 26 19 45t45 19h1280zM512 1248v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23zM512 992v-64q0 -14 9 -23t23 -9h64q14 0 23 9 +t9 23v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23zM512 736v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23zM512 480v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23zM384 160v64 +q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM384 416v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM384 672v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64 +q14 0 23 9t9 23zM384 928v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM384 1184v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM896 -96v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9 +t-9 -23v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM896 416v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM896 672v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM896 928v64 +q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM896 1184v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1152 160v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64 +q14 0 23 9t9 23zM1152 416v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1152 672v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1152 928v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9 +t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1152 1184v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23z" /> + <glyph glyph-name="_404" unicode="" horiz-adv-x="1280" +d="M1188 988l-292 -292v-824q0 -46 -33 -79t-79 -33t-79 33t-33 79v384h-64v-384q0 -46 -33 -79t-79 -33t-79 33t-33 79v824l-292 292q-28 28 -28 68t28 68q29 28 68.5 28t67.5 -28l228 -228h368l228 228q28 28 68 28t68 -28q28 -29 28 -68.5t-28 -67.5zM864 1152 +q0 -93 -65.5 -158.5t-158.5 -65.5t-158.5 65.5t-65.5 158.5t65.5 158.5t158.5 65.5t158.5 -65.5t65.5 -158.5z" /> + <glyph glyph-name="uniF1B1" unicode="" horiz-adv-x="1664" +d="M780 1064q0 -60 -19 -113.5t-63 -92.5t-105 -39q-76 0 -138 57.5t-92 135.5t-30 151q0 60 19 113.5t63 92.5t105 39q77 0 138.5 -57.5t91.5 -135t30 -151.5zM438 581q0 -80 -42 -139t-119 -59q-76 0 -141.5 55.5t-100.5 133.5t-35 152q0 80 42 139.5t119 59.5 +q76 0 141.5 -55.5t100.5 -134t35 -152.5zM832 608q118 0 255 -97.5t229 -237t92 -254.5q0 -46 -17 -76.5t-48.5 -45t-64.5 -20t-76 -5.5q-68 0 -187.5 45t-182.5 45q-66 0 -192.5 -44.5t-200.5 -44.5q-183 0 -183 146q0 86 56 191.5t139.5 192.5t187.5 146t193 59zM1071 819 +q-61 0 -105 39t-63 92.5t-19 113.5q0 74 30 151.5t91.5 135t138.5 57.5q61 0 105 -39t63 -92.5t19 -113.5q0 -73 -30 -151t-92 -135.5t-138 -57.5zM1503 923q77 0 119 -59.5t42 -139.5q0 -74 -35 -152t-100.5 -133.5t-141.5 -55.5q-77 0 -119 59t-42 139q0 74 35 152.5 +t100.5 134t141.5 55.5z" /> + <glyph glyph-name="_406" unicode="" horiz-adv-x="768" +d="M704 1008q0 -145 -57 -243.5t-152 -135.5l45 -821q2 -26 -16 -45t-44 -19h-192q-26 0 -44 19t-16 45l45 821q-95 37 -152 135.5t-57 243.5q0 128 42.5 249.5t117.5 200t160 78.5t160 -78.5t117.5 -200t42.5 -249.5z" /> + <glyph glyph-name="_407" unicode="" horiz-adv-x="1792" +d="M896 -93l640 349v636l-640 -233v-752zM832 772l698 254l-698 254l-698 -254zM1664 1024v-768q0 -35 -18 -65t-49 -47l-704 -384q-28 -16 -61 -16t-61 16l-704 384q-31 17 -49 47t-18 65v768q0 40 23 73t61 47l704 256q22 8 44 8t44 -8l704 -256q38 -14 61 -47t23 -73z +" /> + <glyph glyph-name="_408" unicode="" horiz-adv-x="2304" +d="M640 -96l384 192v314l-384 -164v-342zM576 358l404 173l-404 173l-404 -173zM1664 -96l384 192v314l-384 -164v-342zM1600 358l404 173l-404 173l-404 -173zM1152 651l384 165v266l-384 -164v-267zM1088 1030l441 189l-441 189l-441 -189zM2176 512v-416q0 -36 -19 -67 +t-52 -47l-448 -224q-25 -14 -57 -14t-57 14l-448 224q-4 2 -7 4q-2 -2 -7 -4l-448 -224q-25 -14 -57 -14t-57 14l-448 224q-33 16 -52 47t-19 67v416q0 38 21.5 70t56.5 48l434 186v400q0 38 21.5 70t56.5 48l448 192q23 10 50 10t50 -10l448 -192q35 -16 56.5 -48t21.5 -70 +v-400l434 -186q36 -16 57 -48t21 -70z" /> + <glyph glyph-name="_409" unicode="" horiz-adv-x="2048" +d="M1848 1197h-511v-124h511v124zM1596 771q-90 0 -146 -52.5t-62 -142.5h408q-18 195 -200 195zM1612 186q63 0 122 32t76 87h221q-100 -307 -427 -307q-214 0 -340.5 132t-126.5 347q0 208 130.5 345.5t336.5 137.5q138 0 240.5 -68t153 -179t50.5 -248q0 -17 -2 -47h-658 +q0 -111 57.5 -171.5t166.5 -60.5zM277 236h296q205 0 205 167q0 180 -199 180h-302v-347zM277 773h281q78 0 123.5 36.5t45.5 113.5q0 144 -190 144h-260v-294zM0 1282h594q87 0 155 -14t126.5 -47.5t90 -96.5t31.5 -154q0 -181 -172 -263q114 -32 172 -115t58 -204 +q0 -75 -24.5 -136.5t-66 -103.5t-98.5 -71t-121 -42t-134 -13h-611v1260z" /> + <glyph glyph-name="_410" unicode="" +d="M1248 1408q119 0 203.5 -84.5t84.5 -203.5v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960zM499 1041h-371v-787h382q117 0 197 57.5t80 170.5q0 158 -143 200q107 52 107 164q0 57 -19.5 96.5 +t-56.5 60.5t-79 29.5t-97 8.5zM477 723h-176v184h163q119 0 119 -90q0 -94 -106 -94zM486 388h-185v217h189q124 0 124 -113q0 -104 -128 -104zM1136 356q-68 0 -104 38t-36 107h411q1 10 1 30q0 132 -74.5 220.5t-203.5 88.5q-128 0 -210 -86t-82 -216q0 -135 79 -217 +t213 -82q205 0 267 191h-138q-11 -34 -47.5 -54t-75.5 -20zM1126 722q113 0 124 -122h-254q4 56 39 89t91 33zM964 988h319v-77h-319v77z" /> + <glyph glyph-name="_411" unicode="" horiz-adv-x="1792" +d="M1582 954q0 -101 -71.5 -172.5t-172.5 -71.5t-172.5 71.5t-71.5 172.5t71.5 172.5t172.5 71.5t172.5 -71.5t71.5 -172.5zM812 212q0 104 -73 177t-177 73q-27 0 -54 -6l104 -42q77 -31 109.5 -106.5t1.5 -151.5q-31 -77 -107 -109t-152 -1q-21 8 -62 24.5t-61 24.5 +q32 -60 91 -96.5t130 -36.5q104 0 177 73t73 177zM1642 953q0 126 -89.5 215.5t-215.5 89.5q-127 0 -216.5 -89.5t-89.5 -215.5q0 -127 89.5 -216t216.5 -89q126 0 215.5 89t89.5 216zM1792 953q0 -189 -133.5 -322t-321.5 -133l-437 -319q-12 -129 -109 -218t-229 -89 +q-121 0 -214 76t-118 192l-230 92v429l389 -157q79 48 173 48q13 0 35 -2l284 407q2 187 135.5 319t320.5 132q188 0 321.5 -133.5t133.5 -321.5z" /> + <glyph glyph-name="_412" unicode="" +d="M1242 889q0 80 -57 136.5t-137 56.5t-136.5 -57t-56.5 -136q0 -80 56.5 -136.5t136.5 -56.5t137 56.5t57 136.5zM632 301q0 -83 -58 -140.5t-140 -57.5q-56 0 -103 29t-72 77q52 -20 98 -40q60 -24 120 1.5t85 86.5q24 60 -1.5 120t-86.5 84l-82 33q22 5 42 5 +q82 0 140 -57.5t58 -140.5zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v153l172 -69q20 -92 93.5 -152t168.5 -60q104 0 181 70t87 173l345 252q150 0 255.5 105.5t105.5 254.5q0 150 -105.5 255.5t-255.5 105.5 +q-148 0 -253 -104.5t-107 -252.5l-225 -322q-9 1 -28 1q-75 0 -137 -37l-297 119v468q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5zM1289 887q0 -100 -71 -170.5t-171 -70.5t-170.5 70.5t-70.5 170.5t70.5 171t170.5 71q101 0 171.5 -70.5t70.5 -171.5z +" /> + <glyph glyph-name="_413" unicode="" horiz-adv-x="1792" +d="M836 367l-15 -368l-2 -22l-420 29q-36 3 -67 31.5t-47 65.5q-11 27 -14.5 55t4 65t12 55t21.5 64t19 53q78 -12 509 -28zM449 953l180 -379l-147 92q-63 -72 -111.5 -144.5t-72.5 -125t-39.5 -94.5t-18.5 -63l-4 -21l-190 357q-17 26 -18 56t6 47l8 18q35 63 114 188 +l-140 86zM1680 436l-188 -359q-12 -29 -36.5 -46.5t-43.5 -20.5l-18 -4q-71 -7 -219 -12l8 -164l-230 367l211 362l7 -173q170 -16 283 -5t170 33zM895 1360q-47 -63 -265 -435l-317 187l-19 12l225 356q20 31 60 45t80 10q24 -2 48.5 -12t42 -21t41.5 -33t36 -34.5 +t36 -39.5t32 -35zM1550 1053l212 -363q18 -37 12.5 -76t-27.5 -74q-13 -20 -33 -37t-38 -28t-48.5 -22t-47 -16t-51.5 -14t-46 -12q-34 72 -265 436l313 195zM1407 1279l142 83l-220 -373l-419 20l151 86q-34 89 -75 166t-75.5 123.5t-64.5 80t-47 46.5l-17 13l405 -1 +q31 3 58 -10.5t39 -28.5l11 -15q39 -61 112 -190z" /> + <glyph glyph-name="_414" unicode="" horiz-adv-x="2048" +d="M480 448q0 66 -47 113t-113 47t-113 -47t-47 -113t47 -113t113 -47t113 47t47 113zM516 768h1016l-89 357q-2 8 -14 17.5t-21 9.5h-768q-9 0 -21 -9.5t-14 -17.5zM1888 448q0 66 -47 113t-113 47t-113 -47t-47 -113t47 -113t113 -47t113 47t47 113zM2048 544v-384 +q0 -14 -9 -23t-23 -9h-96v-128q0 -80 -56 -136t-136 -56t-136 56t-56 136v128h-1024v-128q0 -80 -56 -136t-136 -56t-136 56t-56 136v128h-96q-14 0 -23 9t-9 23v384q0 93 65.5 158.5t158.5 65.5h28l105 419q23 94 104 157.5t179 63.5h768q98 0 179 -63.5t104 -157.5 +l105 -419h28q93 0 158.5 -65.5t65.5 -158.5z" /> + <glyph glyph-name="_415" unicode="" horiz-adv-x="2048" +d="M1824 640q93 0 158.5 -65.5t65.5 -158.5v-384q0 -14 -9 -23t-23 -9h-96v-64q0 -80 -56 -136t-136 -56t-136 56t-56 136v64h-1024v-64q0 -80 -56 -136t-136 -56t-136 56t-56 136v64h-96q-14 0 -23 9t-9 23v384q0 93 65.5 158.5t158.5 65.5h28l105 419q23 94 104 157.5 +t179 63.5h128v224q0 14 9 23t23 9h448q14 0 23 -9t9 -23v-224h128q98 0 179 -63.5t104 -157.5l105 -419h28zM320 160q66 0 113 47t47 113t-47 113t-113 47t-113 -47t-47 -113t47 -113t113 -47zM516 640h1016l-89 357q-2 8 -14 17.5t-21 9.5h-768q-9 0 -21 -9.5t-14 -17.5z +M1728 160q66 0 113 47t47 113t-47 113t-113 47t-113 -47t-47 -113t47 -113t113 -47z" /> + <glyph glyph-name="_416" unicode="" +d="M1504 64q0 -26 -19 -45t-45 -19h-462q1 -17 6 -87.5t5 -108.5q0 -25 -18 -42.5t-43 -17.5h-320q-25 0 -43 17.5t-18 42.5q0 38 5 108.5t6 87.5h-462q-26 0 -45 19t-19 45t19 45l402 403h-229q-26 0 -45 19t-19 45t19 45l402 403h-197q-26 0 -45 19t-19 45t19 45l384 384 +q19 19 45 19t45 -19l384 -384q19 -19 19 -45t-19 -45t-45 -19h-197l402 -403q19 -19 19 -45t-19 -45t-45 -19h-229l402 -403q19 -19 19 -45z" /> + <glyph glyph-name="_417" unicode="" +d="M1127 326q0 32 -30 51q-193 115 -447 115q-133 0 -287 -34q-42 -9 -42 -52q0 -20 13.5 -34.5t35.5 -14.5q5 0 37 8q132 27 243 27q226 0 397 -103q19 -11 33 -11q19 0 33 13.5t14 34.5zM1223 541q0 40 -35 61q-237 141 -548 141q-153 0 -303 -42q-48 -13 -48 -64 +q0 -25 17.5 -42.5t42.5 -17.5q7 0 37 8q122 33 251 33q279 0 488 -124q24 -13 38 -13q25 0 42.5 17.5t17.5 42.5zM1331 789q0 47 -40 70q-126 73 -293 110.5t-343 37.5q-204 0 -364 -47q-23 -7 -38.5 -25.5t-15.5 -48.5q0 -31 20.5 -52t51.5 -21q11 0 40 8q133 37 307 37 +q159 0 309.5 -34t253.5 -95q21 -12 40 -12q29 0 50.5 20.5t21.5 51.5zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="_418" unicode="" horiz-adv-x="1024" +d="M1024 1233l-303 -582l24 -31h279v-415h-507l-44 -30l-142 -273l-30 -30h-301v303l303 583l-24 30h-279v415h507l44 30l142 273l30 30h301v-303z" /> + <glyph glyph-name="_419" unicode="" horiz-adv-x="2304" +d="M784 164l16 241l-16 523q-1 10 -7.5 17t-16.5 7q-9 0 -16 -7t-7 -17l-14 -523l14 -241q1 -10 7.5 -16.5t15.5 -6.5q22 0 24 23zM1080 193l11 211l-12 586q0 16 -13 24q-8 5 -16 5t-16 -5q-13 -8 -13 -24l-1 -6l-10 -579q0 -1 11 -236v-1q0 -10 6 -17q9 -11 23 -11 +q11 0 20 9q9 7 9 20zM35 533l20 -128l-20 -126q-2 -9 -9 -9t-9 9l-17 126l17 128q2 9 9 9t9 -9zM121 612l26 -207l-26 -203q-2 -9 -10 -9q-9 0 -9 10l-23 202l23 207q0 9 9 9q8 0 10 -9zM401 159zM213 650l25 -245l-25 -237q0 -11 -11 -11q-10 0 -12 11l-21 237l21 245 +q2 12 12 12q11 0 11 -12zM307 657l23 -252l-23 -244q-2 -13 -14 -13q-13 0 -13 13l-21 244l21 252q0 13 13 13q12 0 14 -13zM401 639l21 -234l-21 -246q-2 -16 -16 -16q-6 0 -10.5 4.5t-4.5 11.5l-20 246l20 234q0 6 4.5 10.5t10.5 4.5q14 0 16 -15zM784 164zM495 785 +l21 -380l-21 -246q0 -7 -5 -12.5t-12 -5.5q-16 0 -18 18l-18 246l18 380q2 18 18 18q7 0 12 -5.5t5 -12.5zM589 871l19 -468l-19 -244q0 -8 -5.5 -13.5t-13.5 -5.5q-18 0 -20 19l-16 244l16 468q2 19 20 19q8 0 13.5 -5.5t5.5 -13.5zM687 911l18 -506l-18 -242 +q-2 -21 -22 -21q-19 0 -21 21l-16 242l16 506q0 9 6.5 15.5t14.5 6.5q9 0 15 -6.5t7 -15.5zM1079 169v0v0v0zM881 915l15 -510l-15 -239q0 -10 -7.5 -17.5t-17.5 -7.5t-17 7t-8 18l-14 239l14 510q0 11 7.5 18t17.5 7t17.5 -7t7.5 -18zM980 896l14 -492l-14 -236 +q0 -11 -8 -19t-19 -8t-19 8t-9 19l-12 236l12 492q1 12 9 20t19 8t18.5 -8t8.5 -20zM1192 404l-14 -231v0q0 -13 -9 -22t-22 -9t-22 9t-10 22l-6 114l-6 117l12 636v3q2 15 12 24q9 7 20 7q8 0 15 -5q14 -8 16 -26zM2304 423q0 -117 -83 -199.5t-200 -82.5h-786 +q-13 2 -22 11t-9 22v899q0 23 28 33q85 34 181 34q195 0 338 -131.5t160 -323.5q53 22 110 22q117 0 200 -83t83 -201z" /> + <glyph glyph-name="uniF1C0" unicode="" +d="M768 768q237 0 443 43t325 127v-170q0 -69 -103 -128t-280 -93.5t-385 -34.5t-385 34.5t-280 93.5t-103 128v170q119 -84 325 -127t443 -43zM768 0q237 0 443 43t325 127v-170q0 -69 -103 -128t-280 -93.5t-385 -34.5t-385 34.5t-280 93.5t-103 128v170q119 -84 325 -127 +t443 -43zM768 384q237 0 443 43t325 127v-170q0 -69 -103 -128t-280 -93.5t-385 -34.5t-385 34.5t-280 93.5t-103 128v170q119 -84 325 -127t443 -43zM768 1536q208 0 385 -34.5t280 -93.5t103 -128v-128q0 -69 -103 -128t-280 -93.5t-385 -34.5t-385 34.5t-280 93.5 +t-103 128v128q0 69 103 128t280 93.5t385 34.5z" /> + <glyph glyph-name="uniF1C1" unicode="" +d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z +M894 465q33 -26 84 -56q59 7 117 7q147 0 177 -49q16 -22 2 -52q0 -1 -1 -2l-2 -2v-1q-6 -38 -71 -38q-48 0 -115 20t-130 53q-221 -24 -392 -83q-153 -262 -242 -262q-15 0 -28 7l-24 12q-1 1 -6 5q-10 10 -6 36q9 40 56 91.5t132 96.5q14 9 23 -6q2 -2 2 -4q52 85 107 197 +q68 136 104 262q-24 82 -30.5 159.5t6.5 127.5q11 40 42 40h21h1q23 0 35 -15q18 -21 9 -68q-2 -6 -4 -8q1 -3 1 -8v-30q-2 -123 -14 -192q55 -164 146 -238zM318 54q52 24 137 158q-51 -40 -87.5 -84t-49.5 -74zM716 974q-15 -42 -2 -132q1 7 7 44q0 3 7 43q1 4 4 8 +q-1 1 -1 2q-1 2 -1 3q-1 22 -13 36q0 -1 -1 -2v-2zM592 313q135 54 284 81q-2 1 -13 9.5t-16 13.5q-76 67 -127 176q-27 -86 -83 -197q-30 -56 -45 -83zM1238 329q-24 24 -140 24q76 -28 124 -28q14 0 18 1q0 1 -2 3z" /> + <glyph glyph-name="_422" unicode="" +d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z +M233 768v-107h70l164 -661h159l128 485q7 20 10 46q2 16 2 24h4l3 -24q1 -3 3.5 -20t5.5 -26l128 -485h159l164 661h70v107h-300v-107h90l-99 -438q-5 -20 -7 -46l-2 -21h-4q0 3 -0.5 6.5t-1.5 8t-1 6.5q-1 5 -4 21t-5 25l-144 545h-114l-144 -545q-2 -9 -4.5 -24.5 +t-3.5 -21.5l-4 -21h-4l-2 21q-2 26 -7 46l-99 438h90v107h-300z" /> + <glyph glyph-name="_423" unicode="" +d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z +M429 106v-106h281v106h-75l103 161q5 7 10 16.5t7.5 13.5t3.5 4h2q1 -4 5 -10q2 -4 4.5 -7.5t6 -8t6.5 -8.5l107 -161h-76v-106h291v106h-68l-192 273l195 282h67v107h-279v-107h74l-103 -159q-4 -7 -10 -16.5t-9 -13.5l-2 -3h-2q-1 4 -5 10q-6 11 -17 23l-106 159h76v107 +h-290v-107h68l189 -272l-194 -283h-68z" /> + <glyph glyph-name="_424" unicode="" +d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z +M416 106v-106h327v106h-93v167h137q76 0 118 15q67 23 106.5 87t39.5 146q0 81 -37 141t-100 87q-48 19 -130 19h-368v-107h92v-555h-92zM769 386h-119v268h120q52 0 83 -18q56 -33 56 -115q0 -89 -62 -120q-31 -15 -78 -15z" /> + <glyph glyph-name="_425" unicode="" +d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z +M1280 320v-320h-1024v192l192 192l128 -128l384 384zM448 512q-80 0 -136 56t-56 136t56 136t136 56t136 -56t56 -136t-56 -136t-136 -56z" /> + <glyph glyph-name="_426" unicode="" +d="M640 1152v128h-128v-128h128zM768 1024v128h-128v-128h128zM640 896v128h-128v-128h128zM768 768v128h-128v-128h128zM1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400 +v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-128v-128h-128v128h-512v-1536h1280zM781 593l107 -349q8 -27 8 -52q0 -83 -72.5 -137.5t-183.5 -54.5t-183.5 54.5t-72.5 137.5q0 25 8 52q21 63 120 396v128h128v-128h79 +q22 0 39 -13t23 -34zM640 128q53 0 90.5 19t37.5 45t-37.5 45t-90.5 19t-90.5 -19t-37.5 -45t37.5 -45t90.5 -19z" /> + <glyph glyph-name="_427" unicode="" +d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z +M620 686q20 -8 20 -30v-544q0 -22 -20 -30q-8 -2 -12 -2q-12 0 -23 9l-166 167h-131q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h131l166 167q16 15 35 7zM1037 -3q31 0 50 24q129 159 129 363t-129 363q-16 21 -43 24t-47 -14q-21 -17 -23.5 -43.5t14.5 -47.5 +q100 -123 100 -282t-100 -282q-17 -21 -14.5 -47.5t23.5 -42.5q18 -15 40 -15zM826 145q27 0 47 20q87 93 87 219t-87 219q-18 19 -45 20t-46 -17t-20 -44.5t18 -46.5q52 -57 52 -131t-52 -131q-19 -20 -18 -46.5t20 -44.5q20 -17 44 -17z" /> + <glyph glyph-name="_428" unicode="" +d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z +M768 768q52 0 90 -38t38 -90v-384q0 -52 -38 -90t-90 -38h-384q-52 0 -90 38t-38 90v384q0 52 38 90t90 38h384zM1260 766q20 -8 20 -30v-576q0 -22 -20 -30q-8 -2 -12 -2q-14 0 -23 9l-265 266v90l265 266q9 9 23 9q4 0 12 -2z" /> + <glyph glyph-name="_429" unicode="" +d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z +M480 768q8 11 21 12.5t24 -6.5l51 -38q11 -8 12.5 -21t-6.5 -24l-182 -243l182 -243q8 -11 6.5 -24t-12.5 -21l-51 -38q-11 -8 -24 -6.5t-21 12.5l-226 301q-14 19 0 38zM1282 467q14 -19 0 -38l-226 -301q-8 -11 -21 -12.5t-24 6.5l-51 38q-11 8 -12.5 21t6.5 24l182 243 +l-182 243q-8 11 -6.5 24t12.5 21l51 38q11 8 24 6.5t21 -12.5zM662 6q-13 2 -20.5 13t-5.5 24l138 831q2 13 13 20.5t24 5.5l63 -10q13 -2 20.5 -13t5.5 -24l-138 -831q-2 -13 -13 -20.5t-24 -5.5z" /> + <glyph glyph-name="_430" unicode="" +d="M1497 709v-198q-101 -23 -198 -23q-65 -136 -165.5 -271t-181.5 -215.5t-128 -106.5q-80 -45 -162 3q-28 17 -60.5 43.5t-85 83.5t-102.5 128.5t-107.5 184t-105.5 244t-91.5 314.5t-70.5 390h283q26 -218 70 -398.5t104.5 -317t121.5 -235.5t140 -195q169 169 287 406 +q-142 72 -223 220t-81 333q0 192 104 314.5t284 122.5q178 0 273 -105.5t95 -297.5q0 -159 -58 -286q-7 -1 -19.5 -3t-46 -2t-63 6t-62 25.5t-50.5 51.5q31 103 31 184q0 87 -29 132t-79 45q-53 0 -85 -49.5t-32 -140.5q0 -186 105 -293.5t267 -107.5q62 0 121 14z" /> + <glyph glyph-name="_431" unicode="" horiz-adv-x="1792" +d="M216 367l603 -402v359l-334 223zM154 511l193 129l-193 129v-258zM973 -35l603 402l-269 180l-334 -223v-359zM896 458l272 182l-272 182l-272 -182zM485 733l334 223v359l-603 -402zM1445 640l193 -129v258zM1307 733l269 180l-603 402v-359zM1792 913v-546 +q0 -41 -34 -64l-819 -546q-21 -13 -43 -13t-43 13l-819 546q-34 23 -34 64v546q0 41 34 64l819 546q21 13 43 13t43 -13l819 -546q34 -23 34 -64z" /> + <glyph glyph-name="_432" unicode="" horiz-adv-x="2048" +d="M1800 764q111 -46 179.5 -145.5t68.5 -221.5q0 -164 -118 -280.5t-285 -116.5q-4 0 -11.5 0.5t-10.5 0.5h-1209h-1h-2h-5q-170 10 -288 125.5t-118 280.5q0 110 55 203t147 147q-12 39 -12 82q0 115 82 196t199 81q95 0 172 -58q75 154 222.5 248t326.5 94 +q166 0 306 -80.5t221.5 -218.5t81.5 -301q0 -6 -0.5 -18t-0.5 -18zM468 498q0 -122 84 -193t208 -71q137 0 240 99q-16 20 -47.5 56.5t-43.5 50.5q-67 -65 -144 -65q-55 0 -93.5 33.5t-38.5 87.5q0 53 38.5 87t91.5 34q44 0 84.5 -21t73 -55t65 -75t69 -82t77 -75t97 -55 +t121.5 -21q121 0 204.5 71.5t83.5 190.5q0 121 -84 192t-207 71q-143 0 -241 -97l93 -108q66 64 142 64q52 0 92 -33t40 -84q0 -57 -37 -91.5t-94 -34.5q-43 0 -82.5 21t-72 55t-65.5 75t-69.5 82t-77.5 75t-96.5 55t-118.5 21q-122 0 -207 -70.5t-85 -189.5z" /> + <glyph glyph-name="_433" unicode="" horiz-adv-x="1792" +d="M896 1536q182 0 348 -71t286 -191t191 -286t71 -348t-71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71zM896 1408q-190 0 -361 -90l194 -194q82 28 167 28t167 -28l194 194q-171 90 -361 90zM218 279l194 194 +q-28 82 -28 167t28 167l-194 194q-90 -171 -90 -361t90 -361zM896 -128q190 0 361 90l-194 194q-82 -28 -167 -28t-167 28l-194 -194q171 -90 361 -90zM896 256q159 0 271.5 112.5t112.5 271.5t-112.5 271.5t-271.5 112.5t-271.5 -112.5t-112.5 -271.5t112.5 -271.5 +t271.5 -112.5zM1380 473l194 -194q90 171 90 361t-90 361l-194 -194q28 -82 28 -167t-28 -167z" /> + <glyph glyph-name="_434" unicode="" horiz-adv-x="1792" +d="M1760 640q0 -176 -68.5 -336t-184 -275.5t-275.5 -184t-336 -68.5t-336 68.5t-275.5 184t-184 275.5t-68.5 336q0 213 97 398.5t265 305.5t374 151v-228q-221 -45 -366.5 -221t-145.5 -406q0 -130 51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5 +t136.5 204t51 248.5q0 230 -145.5 406t-366.5 221v228q206 -31 374 -151t265 -305.5t97 -398.5z" /> + <glyph glyph-name="uniF1D0" unicode="" horiz-adv-x="1792" +d="M19 662q8 217 116 406t305 318h5q0 -1 -1 -3q-8 -8 -28 -33.5t-52 -76.5t-60 -110.5t-44.5 -135.5t-14 -150.5t39 -157.5t108.5 -154q50 -50 102 -69.5t90.5 -11.5t69.5 23.5t47 32.5l16 16q39 51 53 116.5t6.5 122.5t-21 107t-26.5 80l-14 29q-10 25 -30.5 49.5t-43 41 +t-43.5 29.5t-35 19l-13 6l104 115q39 -17 78 -52t59 -61l19 -27q1 48 -18.5 103.5t-40.5 87.5l-20 31l161 183l160 -181q-33 -46 -52.5 -102.5t-22.5 -90.5l-4 -33q22 37 61.5 72.5t67.5 52.5l28 17l103 -115q-44 -14 -85 -50t-60 -65l-19 -29q-31 -56 -48 -133.5t-7 -170 +t57 -156.5q33 -45 77.5 -60.5t85 -5.5t76 26.5t57.5 33.5l21 16q60 53 96.5 115t48.5 121.5t10 121.5t-18 118t-37 107.5t-45.5 93t-45 72t-34.5 47.5l-13 17q-14 13 -7 13l10 -3q40 -29 62.5 -46t62 -50t64 -58t58.5 -65t55.5 -77t45.5 -88t38 -103t23.5 -117t10.5 -136 +q3 -259 -108 -465t-312 -321t-456 -115q-185 0 -351 74t-283.5 198t-184 293t-60.5 353z" /> + <glyph glyph-name="uniF1D1" unicode="" horiz-adv-x="1792" +d="M874 -102v-66q-208 6 -385 109.5t-283 275.5l58 34q29 -49 73 -99l65 57q148 -168 368 -212l-17 -86q65 -12 121 -13zM276 428l-83 -28q22 -60 49 -112l-57 -33q-98 180 -98 385t98 385l57 -33q-30 -56 -49 -112l82 -28q-35 -100 -35 -212q0 -109 36 -212zM1528 251 +l58 -34q-106 -172 -283 -275.5t-385 -109.5v66q56 1 121 13l-17 86q220 44 368 212l65 -57q44 50 73 99zM1377 805l-233 -80q14 -42 14 -85t-14 -85l232 -80q-31 -92 -98 -169l-185 162q-57 -67 -147 -85l48 -241q-52 -10 -98 -10t-98 10l48 241q-90 18 -147 85l-185 -162 +q-67 77 -98 169l232 80q-14 42 -14 85t14 85l-233 80q33 93 99 169l185 -162q59 68 147 86l-48 240q44 10 98 10t98 -10l-48 -240q88 -18 147 -86l185 162q66 -76 99 -169zM874 1448v-66q-65 -2 -121 -13l17 -86q-220 -42 -368 -211l-65 56q-38 -42 -73 -98l-57 33 +q106 172 282 275.5t385 109.5zM1705 640q0 -205 -98 -385l-57 33q27 52 49 112l-83 28q36 103 36 212q0 112 -35 212l82 28q-19 56 -49 112l57 33q98 -180 98 -385zM1585 1063l-57 -33q-35 56 -73 98l-65 -56q-148 169 -368 211l17 86q-56 11 -121 13v66q209 -6 385 -109.5 +t282 -275.5zM1748 640q0 173 -67.5 331t-181.5 272t-272 181.5t-331 67.5t-331 -67.5t-272 -181.5t-181.5 -272t-67.5 -331t67.5 -331t181.5 -272t272 -181.5t331 -67.5t331 67.5t272 181.5t181.5 272t67.5 331zM1792 640q0 -182 -71 -348t-191 -286t-286 -191t-348 -71 +t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" /> + <glyph glyph-name="uniF1D2" unicode="" +d="M582 228q0 -66 -93 -66q-107 0 -107 63q0 64 98 64q102 0 102 -61zM546 694q0 -85 -74 -85q-77 0 -77 84q0 90 77 90q36 0 55 -25.5t19 -63.5zM712 769v125q-78 -29 -135 -29q-50 29 -110 29q-86 0 -145 -57t-59 -143q0 -50 29.5 -102t73.5 -67v-3q-38 -17 -38 -85 +q0 -53 41 -77v-3q-113 -37 -113 -139q0 -45 20 -78.5t54 -51t72 -25.5t81 -8q224 0 224 188q0 67 -48 99t-126 46q-27 5 -51.5 20.5t-24.5 39.5q0 44 49 52q77 15 122 70t45 134q0 24 -10 52q37 9 49 13zM771 350h137q-2 27 -2 82v387q0 46 2 69h-137q3 -23 3 -71v-392 +q0 -50 -3 -75zM1280 366v121q-30 -21 -68 -21q-53 0 -53 82v225h52q9 0 26.5 -1t26.5 -1v117h-105q0 82 3 102h-140q4 -24 4 -55v-47h-60v-117q36 3 37 3q3 0 11 -0.5t12 -0.5v-2h-2v-217q0 -37 2.5 -64t11.5 -56.5t24.5 -48.5t43.5 -31t66 -12q64 0 108 24zM924 1072 +q0 36 -24 63.5t-60 27.5t-60.5 -27t-24.5 -64q0 -36 25 -62.5t60 -26.5t59.5 27t24.5 62zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="_438" unicode="" horiz-adv-x="1792" +d="M595 22q0 100 -165 100q-158 0 -158 -104q0 -101 172 -101q151 0 151 105zM536 777q0 61 -30 102t-89 41q-124 0 -124 -145q0 -135 124 -135q119 0 119 137zM805 1101v-202q-36 -12 -79 -22q16 -43 16 -84q0 -127 -73 -216.5t-197 -112.5q-40 -8 -59.5 -27t-19.5 -58 +q0 -31 22.5 -51.5t58 -32t78.5 -22t86 -25.5t78.5 -37.5t58 -64t22.5 -98.5q0 -304 -363 -304q-69 0 -130 12.5t-116 41t-87.5 82t-32.5 127.5q0 165 182 225v4q-67 41 -67 126q0 109 63 137v4q-72 24 -119.5 108.5t-47.5 165.5q0 139 95 231.5t235 92.5q96 0 178 -47 +q98 0 218 47zM1123 220h-222q4 45 4 134v609q0 94 -4 128h222q-4 -33 -4 -124v-613q0 -89 4 -134zM1724 442v-196q-71 -39 -174 -39q-62 0 -107 20t-70 50t-39.5 78t-18.5 92t-4 103v351h2v4q-7 0 -19 1t-18 1q-21 0 -59 -6v190h96v76q0 54 -6 89h227q-6 -41 -6 -165h171 +v-190q-15 0 -43.5 2t-42.5 2h-85v-365q0 -131 87 -131q61 0 109 33zM1148 1389q0 -58 -39 -101.5t-96 -43.5q-58 0 -98 43.5t-40 101.5q0 59 39.5 103t98.5 44q58 0 96.5 -44.5t38.5 -102.5z" /> + <glyph glyph-name="_439" unicode="" +d="M809 532l266 499h-112l-157 -312q-24 -48 -44 -92l-42 92l-155 312h-120l263 -493v-324h101v318zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="uniF1D5" unicode="" horiz-adv-x="1280" +d="M842 964q0 -80 -57 -136.5t-136 -56.5q-60 0 -111 35q-62 -67 -115 -146q-247 -371 -202 -859q1 -22 -12.5 -38.5t-34.5 -18.5h-5q-20 0 -35 13.5t-17 33.5q-14 126 -3.5 247.5t29.5 217t54 186t69 155.5t74 125q61 90 132 165q-16 35 -16 77q0 80 56.5 136.5t136.5 56.5 +t136.5 -56.5t56.5 -136.5zM1223 953q0 -158 -78 -292t-212.5 -212t-292.5 -78q-64 0 -131 14q-21 5 -32.5 23.5t-6.5 39.5q5 20 23 31.5t39 7.5q51 -13 108 -13q97 0 186 38t153 102t102 153t38 186t-38 186t-102 153t-153 102t-186 38t-186 -38t-153 -102t-102 -153 +t-38 -186q0 -114 52 -218q10 -20 3.5 -40t-25.5 -30t-39.5 -3t-30.5 26q-64 123 -64 265q0 119 46.5 227t124.5 186t186 124t226 46q158 0 292.5 -78t212.5 -212.5t78 -292.5z" /> + <glyph glyph-name="uniF1D6" unicode="" horiz-adv-x="1792" +d="M270 730q-8 19 -8 52q0 20 11 49t24 45q-1 22 7.5 53t22.5 43q0 139 92.5 288.5t217.5 209.5q139 66 324 66q133 0 266 -55q49 -21 90 -48t71 -56t55 -68t42 -74t32.5 -84.5t25.5 -89.5t22 -98l1 -5q55 -83 55 -150q0 -14 -9 -40t-9 -38q0 -1 1.5 -3.5t3.5 -5t2 -3.5 +q77 -114 120.5 -214.5t43.5 -208.5q0 -43 -19.5 -100t-55.5 -57q-9 0 -19.5 7.5t-19 17.5t-19 26t-16 26.5t-13.5 26t-9 17.5q-1 1 -3 1l-5 -4q-59 -154 -132 -223q20 -20 61.5 -38.5t69 -41.5t35.5 -65q-2 -4 -4 -16t-7 -18q-64 -97 -302 -97q-53 0 -110.5 9t-98 20 +t-104.5 30q-15 5 -23 7q-14 4 -46 4.5t-40 1.5q-41 -45 -127.5 -65t-168.5 -20q-35 0 -69 1.5t-93 9t-101 20.5t-74.5 40t-32.5 64q0 40 10 59.5t41 48.5q11 2 40.5 13t49.5 12q4 0 14 2q2 2 2 4l-2 3q-48 11 -108 105.5t-73 156.5l-5 3q-4 0 -12 -20q-18 -41 -54.5 -74.5 +t-77.5 -37.5h-1q-4 0 -6 4.5t-5 5.5q-23 54 -23 100q0 275 252 466z" /> + <glyph glyph-name="uniF1D7" unicode="" horiz-adv-x="2048" +d="M580 1075q0 41 -25 66t-66 25q-43 0 -76 -25.5t-33 -65.5q0 -39 33 -64.5t76 -25.5q41 0 66 24.5t25 65.5zM1323 568q0 28 -25.5 50t-65.5 22q-27 0 -49.5 -22.5t-22.5 -49.5q0 -28 22.5 -50.5t49.5 -22.5q40 0 65.5 22t25.5 51zM1087 1075q0 41 -24.5 66t-65.5 25 +q-43 0 -76 -25.5t-33 -65.5q0 -39 33 -64.5t76 -25.5q41 0 65.5 24.5t24.5 65.5zM1722 568q0 28 -26 50t-65 22q-27 0 -49.5 -22.5t-22.5 -49.5q0 -28 22.5 -50.5t49.5 -22.5q39 0 65 22t26 51zM1456 965q-31 4 -70 4q-169 0 -311 -77t-223.5 -208.5t-81.5 -287.5 +q0 -78 23 -152q-35 -3 -68 -3q-26 0 -50 1.5t-55 6.5t-44.5 7t-54.5 10.5t-50 10.5l-253 -127l72 218q-290 203 -290 490q0 169 97.5 311t264 223.5t363.5 81.5q176 0 332.5 -66t262 -182.5t136.5 -260.5zM2048 404q0 -117 -68.5 -223.5t-185.5 -193.5l55 -181l-199 109 +q-150 -37 -218 -37q-169 0 -311 70.5t-223.5 191.5t-81.5 264t81.5 264t223.5 191.5t311 70.5q161 0 303 -70.5t227.5 -192t85.5 -263.5z" /> + <glyph glyph-name="_443" unicode="" horiz-adv-x="1792" +d="M1764 1525q33 -24 27 -64l-256 -1536q-5 -29 -32 -45q-14 -8 -31 -8q-11 0 -24 5l-453 185l-242 -295q-18 -23 -49 -23q-13 0 -22 4q-19 7 -30.5 23.5t-11.5 36.5v349l864 1059l-1069 -925l-395 162q-37 14 -40 55q-2 40 32 59l1664 960q15 9 32 9q20 0 36 -11z" /> + <glyph glyph-name="_444" unicode="" horiz-adv-x="1792" +d="M1764 1525q33 -24 27 -64l-256 -1536q-5 -29 -32 -45q-14 -8 -31 -8q-11 0 -24 5l-527 215l-298 -327q-18 -21 -47 -21q-14 0 -23 4q-19 7 -30 23.5t-11 36.5v452l-472 193q-37 14 -40 55q-3 39 32 59l1664 960q35 21 68 -2zM1422 26l221 1323l-1434 -827l336 -137 +l863 639l-478 -797z" /> + <glyph glyph-name="_445" unicode="" +d="M1536 640q0 -156 -61 -298t-164 -245t-245 -164t-298 -61q-172 0 -327 72.5t-264 204.5q-7 10 -6.5 22.5t8.5 20.5l137 138q10 9 25 9q16 -2 23 -12q73 -95 179 -147t225 -52q104 0 198.5 40.5t163.5 109.5t109.5 163.5t40.5 198.5t-40.5 198.5t-109.5 163.5 +t-163.5 109.5t-198.5 40.5q-98 0 -188 -35.5t-160 -101.5l137 -138q31 -30 14 -69q-17 -40 -59 -40h-448q-26 0 -45 19t-19 45v448q0 42 40 59q39 17 69 -14l130 -129q107 101 244.5 156.5t284.5 55.5q156 0 298 -61t245 -164t164 -245t61 -298zM896 928v-448q0 -14 -9 -23 +t-23 -9h-320q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h224v352q0 14 9 23t23 9h64q14 0 23 -9t9 -23z" /> + <glyph glyph-name="_446" unicode="" +d="M768 1280q-130 0 -248.5 -51t-204 -136.5t-136.5 -204t-51 -248.5t51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5t136.5 204t51 248.5t-51 248.5t-136.5 204t-204 136.5t-248.5 51zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103 +t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="_447" unicode="" horiz-adv-x="1792" +d="M1682 -128q-44 0 -132.5 3.5t-133.5 3.5q-44 0 -132 -3.5t-132 -3.5q-24 0 -37 20.5t-13 45.5q0 31 17 46t39 17t51 7t45 15q33 21 33 140l-1 391q0 21 -1 31q-13 4 -50 4h-675q-38 0 -51 -4q-1 -10 -1 -31l-1 -371q0 -142 37 -164q16 -10 48 -13t57 -3.5t45 -15 +t20 -45.5q0 -26 -12.5 -48t-36.5 -22q-47 0 -139.5 3.5t-138.5 3.5q-43 0 -128 -3.5t-127 -3.5q-23 0 -35.5 21t-12.5 45q0 30 15.5 45t36 17.5t47.5 7.5t42 15q33 23 33 143l-1 57v813q0 3 0.5 26t0 36.5t-1.5 38.5t-3.5 42t-6.5 36.5t-11 31.5t-16 18q-15 10 -45 12t-53 2 +t-41 14t-18 45q0 26 12 48t36 22q46 0 138.5 -3.5t138.5 -3.5q42 0 126.5 3.5t126.5 3.5q25 0 37.5 -22t12.5 -48q0 -30 -17 -43.5t-38.5 -14.5t-49.5 -4t-43 -13q-35 -21 -35 -160l1 -320q0 -21 1 -32q13 -3 39 -3h699q25 0 38 3q1 11 1 32l1 320q0 139 -35 160 +q-18 11 -58.5 12.5t-66 13t-25.5 49.5q0 26 12.5 48t37.5 22q44 0 132 -3.5t132 -3.5q43 0 129 3.5t129 3.5q25 0 37.5 -22t12.5 -48q0 -30 -17.5 -44t-40 -14.5t-51.5 -3t-44 -12.5q-35 -23 -35 -161l1 -943q0 -119 34 -140q16 -10 46 -13.5t53.5 -4.5t41.5 -15.5t18 -44.5 +q0 -26 -12 -48t-36 -22z" /> + <glyph glyph-name="_448" unicode="" horiz-adv-x="1280" +d="M1278 1347v-73q0 -29 -18.5 -61t-42.5 -32q-50 0 -54 -1q-26 -6 -32 -31q-3 -11 -3 -64v-1152q0 -25 -18 -43t-43 -18h-108q-25 0 -43 18t-18 43v1218h-143v-1218q0 -25 -17.5 -43t-43.5 -18h-108q-26 0 -43.5 18t-17.5 43v496q-147 12 -245 59q-126 58 -192 179 +q-64 117 -64 259q0 166 88 286q88 118 209 159q111 37 417 37h479q25 0 43 -18t18 -43z" /> + <glyph glyph-name="_449" unicode="" +d="M352 128v-128h-352v128h352zM704 256q26 0 45 -19t19 -45v-256q0 -26 -19 -45t-45 -19h-256q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h256zM864 640v-128h-864v128h864zM224 1152v-128h-224v128h224zM1536 128v-128h-736v128h736zM576 1280q26 0 45 -19t19 -45v-256 +q0 -26 -19 -45t-45 -19h-256q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h256zM1216 768q26 0 45 -19t19 -45v-256q0 -26 -19 -45t-45 -19h-256q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h256zM1536 640v-128h-224v128h224zM1536 1152v-128h-864v128h864z" /> + <glyph glyph-name="uniF1E0" unicode="" +d="M1216 512q133 0 226.5 -93.5t93.5 -226.5t-93.5 -226.5t-226.5 -93.5t-226.5 93.5t-93.5 226.5q0 12 2 34l-360 180q-92 -86 -218 -86q-133 0 -226.5 93.5t-93.5 226.5t93.5 226.5t226.5 93.5q126 0 218 -86l360 180q-2 22 -2 34q0 133 93.5 226.5t226.5 93.5 +t226.5 -93.5t93.5 -226.5t-93.5 -226.5t-226.5 -93.5q-126 0 -218 86l-360 -180q2 -22 2 -34t-2 -34l360 -180q92 86 218 86z" /> + <glyph glyph-name="_451" unicode="" +d="M1280 341q0 88 -62.5 151t-150.5 63q-84 0 -145 -58l-241 120q2 16 2 23t-2 23l241 120q61 -58 145 -58q88 0 150.5 63t62.5 151t-62.5 150.5t-150.5 62.5t-151 -62.5t-63 -150.5q0 -7 2 -23l-241 -120q-62 57 -145 57q-88 0 -150.5 -62.5t-62.5 -150.5t62.5 -150.5 +t150.5 -62.5q83 0 145 57l241 -120q-2 -16 -2 -23q0 -88 63 -150.5t151 -62.5t150.5 62.5t62.5 150.5zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="_452" unicode="" horiz-adv-x="1792" +d="M571 947q-10 25 -34 35t-49 0q-108 -44 -191 -127t-127 -191q-10 -25 0 -49t35 -34q13 -5 24 -5q42 0 60 40q34 84 98.5 148.5t148.5 98.5q25 11 35 35t0 49zM1513 1303l46 -46l-244 -243l68 -68q19 -19 19 -45.5t-19 -45.5l-64 -64q89 -161 89 -343q0 -143 -55.5 -273.5 +t-150 -225t-225 -150t-273.5 -55.5t-273.5 55.5t-225 150t-150 225t-55.5 273.5t55.5 273.5t150 225t225 150t273.5 55.5q182 0 343 -89l64 64q19 19 45.5 19t45.5 -19l68 -68zM1521 1359q-10 -10 -22 -10q-13 0 -23 10l-91 90q-9 10 -9 23t9 23q10 9 23 9t23 -9l90 -91 +q10 -9 10 -22.5t-10 -22.5zM1751 1129q-11 -9 -23 -9t-23 9l-90 91q-10 9 -10 22.5t10 22.5q9 10 22.5 10t22.5 -10l91 -90q9 -10 9 -23t-9 -23zM1792 1312q0 -14 -9 -23t-23 -9h-96q-14 0 -23 9t-9 23t9 23t23 9h96q14 0 23 -9t9 -23zM1600 1504v-96q0 -14 -9 -23t-23 -9 +t-23 9t-9 23v96q0 14 9 23t23 9t23 -9t9 -23zM1751 1449l-91 -90q-10 -10 -22 -10q-13 0 -23 10q-10 9 -10 22.5t10 22.5l90 91q10 9 23 9t23 -9q9 -10 9 -23t-9 -23z" /> + <glyph glyph-name="_453" unicode="" horiz-adv-x="1792" +d="M609 720l287 208l287 -208l-109 -336h-355zM896 1536q182 0 348 -71t286 -191t191 -286t71 -348t-71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71zM1515 186q149 203 149 454v3l-102 -89l-240 224l63 323 +l134 -12q-150 206 -389 282l53 -124l-287 -159l-287 159l53 124q-239 -76 -389 -282l135 12l62 -323l-240 -224l-102 89v-3q0 -251 149 -454l30 132l326 -40l139 -298l-116 -69q117 -39 240 -39t240 39l-116 69l139 298l326 40z" /> + <glyph glyph-name="_454" unicode="" horiz-adv-x="1792" +d="M448 224v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM256 608v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM832 224v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23 +v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM640 608v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM66 768q-28 0 -47 19t-19 46v129h514v-129q0 -27 -19 -46t-46 -19h-383zM1216 224v-192q0 -14 -9 -23t-23 -9h-192 +q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1024 608v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1600 224v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23 +zM1408 608v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1792 1016v-13h-514v10q0 104 -382 102q-382 -1 -382 -102v-10h-514v13q0 17 8.5 43t34 64t65.5 75.5t110.5 76t160 67.5t224 47.5t293.5 18.5t293 -18.5t224 -47.5 +t160.5 -67.5t110.5 -76t65.5 -75.5t34 -64t8.5 -43zM1792 608v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1792 962v-129q0 -27 -19 -46t-46 -19h-384q-27 0 -46 19t-19 46v129h514z" /> + <glyph glyph-name="_455" unicode="" horiz-adv-x="1792" +d="M704 1216v-768q0 -26 -19 -45t-45 -19v-576q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19t-19 45v512l249 873q7 23 31 23h424zM1024 1216v-704h-256v704h256zM1792 320v-512q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19t-19 45v576q-26 0 -45 19t-19 45v768h424q24 0 31 -23z +M736 1504v-224h-352v224q0 14 9 23t23 9h288q14 0 23 -9t9 -23zM1408 1504v-224h-352v224q0 14 9 23t23 9h288q14 0 23 -9t9 -23z" /> + <glyph glyph-name="_456" unicode="" horiz-adv-x="1792" +d="M1755 1083q37 -38 37 -90.5t-37 -90.5l-401 -400l150 -150l-160 -160q-163 -163 -389.5 -186.5t-411.5 100.5l-362 -362h-181v181l362 362q-124 185 -100.5 411.5t186.5 389.5l160 160l150 -150l400 401q38 37 91 37t90 -37t37 -90.5t-37 -90.5l-400 -401l234 -234 +l401 400q38 37 91 37t90 -37z" /> + <glyph glyph-name="_457" unicode="" horiz-adv-x="1792" +d="M873 796q0 -83 -63.5 -142.5t-152.5 -59.5t-152.5 59.5t-63.5 142.5q0 84 63.5 143t152.5 59t152.5 -59t63.5 -143zM1375 796q0 -83 -63 -142.5t-153 -59.5q-89 0 -152.5 59.5t-63.5 142.5q0 84 63.5 143t152.5 59q90 0 153 -59t63 -143zM1600 616v667q0 87 -32 123.5 +t-111 36.5h-1112q-83 0 -112.5 -34t-29.5 -126v-673q43 -23 88.5 -40t81 -28t81 -18.5t71 -11t70 -4t58.5 -0.5t56.5 2t44.5 2q68 1 95 -27q6 -6 10 -9q26 -25 61 -51q7 91 118 87q5 0 36.5 -1.5t43 -2t45.5 -1t53 1t54.5 4.5t61 8.5t62 13.5t67 19.5t67.5 27t72 34.5z +M1763 621q-121 -149 -372 -252q84 -285 -23 -465q-66 -113 -183 -148q-104 -32 -182 15q-86 51 -82 164l-1 326v1q-8 2 -24.5 6t-23.5 5l-1 -338q4 -114 -83 -164q-79 -47 -183 -15q-117 36 -182 150q-105 180 -22 463q-251 103 -372 252q-25 37 -4 63t60 -1q4 -2 11.5 -7 +t10.5 -8v694q0 72 47 123t114 51h1257q67 0 114 -51t47 -123v-694l21 15q39 27 60 1t-4 -63z" /> + <glyph glyph-name="_458" unicode="" horiz-adv-x="1792" +d="M896 1102v-434h-145v434h145zM1294 1102v-434h-145v434h145zM1294 342l253 254v795h-1194v-1049h326v-217l217 217h398zM1692 1536v-1013l-434 -434h-326l-217 -217h-217v217h-398v1158l109 289h1483z" /> + <glyph glyph-name="_459" unicode="" +d="M773 217v-127q-1 -292 -6 -305q-12 -32 -51 -40q-54 -9 -181.5 38t-162.5 89q-13 15 -17 36q-1 12 4 26q4 10 34 47t181 216q1 0 60 70q15 19 39.5 24.5t49.5 -3.5q24 -10 37.5 -29t12.5 -42zM624 468q-3 -55 -52 -70l-120 -39q-275 -88 -292 -88q-35 2 -54 36 +q-12 25 -17 75q-8 76 1 166.5t30 124.5t56 32q13 0 202 -77q71 -29 115 -47l84 -34q23 -9 35.5 -30.5t11.5 -48.5zM1450 171q-7 -54 -91.5 -161t-135.5 -127q-37 -14 -63 7q-14 10 -184 287l-47 77q-14 21 -11.5 46t19.5 46q35 43 83 26q1 -1 119 -40q203 -66 242 -79.5 +t47 -20.5q28 -22 22 -61zM778 803q5 -102 -54 -122q-58 -17 -114 71l-378 598q-8 35 19 62q41 43 207.5 89.5t224.5 31.5q40 -10 49 -45q3 -18 22 -305.5t24 -379.5zM1440 695q3 -39 -26 -59q-15 -10 -329 -86q-67 -15 -91 -23l1 2q-23 -6 -46 4t-37 32q-30 47 0 87 +q1 1 75 102q125 171 150 204t34 39q28 19 65 2q48 -23 123 -133.5t81 -167.5v-3z" /> + <glyph glyph-name="_460" unicode="" horiz-adv-x="2048" +d="M1024 1024h-384v-384h384v384zM1152 384v-128h-640v128h640zM1152 1152v-640h-640v640h640zM1792 384v-128h-512v128h512zM1792 640v-128h-512v128h512zM1792 896v-128h-512v128h512zM1792 1152v-128h-512v128h512zM256 192v960h-128v-960q0 -26 19 -45t45 -19t45 19 +t19 45zM1920 192v1088h-1536v-1088q0 -33 -11 -64h1483q26 0 45 19t19 45zM2048 1408v-1216q0 -80 -56 -136t-136 -56h-1664q-80 0 -136 56t-56 136v1088h256v128h1792z" /> + <glyph glyph-name="_461" unicode="" horiz-adv-x="2048" +d="M1024 13q-20 0 -93 73.5t-73 93.5q0 32 62.5 54t103.5 22t103.5 -22t62.5 -54q0 -20 -73 -93.5t-93 -73.5zM1294 284q-2 0 -40 25t-101.5 50t-128.5 25t-128.5 -25t-101 -50t-40.5 -25q-18 0 -93.5 75t-75.5 93q0 13 10 23q78 77 196 121t233 44t233 -44t196 -121 +q10 -10 10 -23q0 -18 -75.5 -93t-93.5 -75zM1567 556q-11 0 -23 8q-136 105 -252 154.5t-268 49.5q-85 0 -170.5 -22t-149 -53t-113.5 -62t-79 -53t-31 -22q-17 0 -92 75t-75 93q0 12 10 22q132 132 320 205t380 73t380 -73t320 -205q10 -10 10 -22q0 -18 -75 -93t-92 -75z +M1838 827q-11 0 -22 9q-179 157 -371.5 236.5t-420.5 79.5t-420.5 -79.5t-371.5 -236.5q-11 -9 -22 -9q-17 0 -92.5 75t-75.5 93q0 13 10 23q187 186 445 288t527 102t527 -102t445 -288q10 -10 10 -23q0 -18 -75.5 -93t-92.5 -75z" /> + <glyph glyph-name="_462" unicode="" horiz-adv-x="1792" +d="M384 0q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM768 0q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM384 384q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5 +t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1152 0q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM768 384q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5 +t37.5 90.5zM384 768q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1152 384q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM768 768q0 53 -37.5 90.5t-90.5 37.5 +t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1536 0v384q0 52 -38 90t-90 38t-90 -38t-38 -90v-384q0 -52 38 -90t90 -38t90 38t38 90zM1152 768q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5z +M1536 1088v256q0 26 -19 45t-45 19h-1280q-26 0 -45 -19t-19 -45v-256q0 -26 19 -45t45 -19h1280q26 0 45 19t19 45zM1536 768q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1664 1408v-1536q0 -52 -38 -90t-90 -38 +h-1408q-52 0 -90 38t-38 90v1536q0 52 38 90t90 38h1408q52 0 90 -38t38 -90z" /> + <glyph glyph-name="_463" unicode="" +d="M1519 890q18 -84 -4 -204q-87 -444 -565 -444h-44q-25 0 -44 -16.5t-24 -42.5l-4 -19l-55 -346l-2 -15q-5 -26 -24.5 -42.5t-44.5 -16.5h-251q-21 0 -33 15t-9 36q9 56 26.5 168t26.5 168t27 167.5t27 167.5q5 37 43 37h131q133 -2 236 21q175 39 287 144q102 95 155 246 +q24 70 35 133q1 6 2.5 7.5t3.5 1t6 -3.5q79 -59 98 -162zM1347 1172q0 -107 -46 -236q-80 -233 -302 -315q-113 -40 -252 -42q0 -1 -90 -1l-90 1q-100 0 -118 -96q-2 -8 -85 -530q-1 -10 -12 -10h-295q-22 0 -36.5 16.5t-11.5 38.5l232 1471q5 29 27.5 48t51.5 19h598 +q34 0 97.5 -13t111.5 -32q107 -41 163.5 -123t56.5 -196z" /> + <glyph glyph-name="_464" unicode="" horiz-adv-x="1792" +d="M441 864q33 0 52 -26q266 -364 362 -774h-446q-127 441 -367 749q-12 16 -3 33.5t29 17.5h373zM1000 507q-49 -199 -125 -393q-79 310 -256 594q40 221 44 449q211 -340 337 -650zM1099 1216q235 -324 384.5 -698.5t184.5 -773.5h-451q-41 665 -553 1472h435zM1792 640 +q0 -424 -101 -812q-67 560 -359 1083q-25 301 -106 584q-4 16 5.5 28.5t25.5 12.5h359q21 0 38.5 -13t22.5 -33q115 -409 115 -850z" /> + <glyph glyph-name="uniF1F0" unicode="" horiz-adv-x="2304" +d="M1975 546h-138q14 37 66 179l3 9q4 10 10 26t9 26l12 -55zM531 611l-58 295q-11 54 -75 54h-268l-2 -13q311 -79 403 -336zM710 960l-162 -438l-17 89q-26 70 -85 129.5t-131 88.5l135 -510h175l261 641h-176zM849 318h166l104 642h-166zM1617 944q-69 27 -149 27 +q-123 0 -201 -59t-79 -153q-1 -102 145 -174q48 -23 67 -41t19 -39q0 -30 -30 -46t-69 -16q-86 0 -156 33l-22 11l-23 -144q74 -34 185 -34q130 -1 208.5 59t80.5 160q0 106 -140 174q-49 25 -71 42t-22 38q0 22 24.5 38.5t70.5 16.5q70 1 124 -24l15 -8zM2042 960h-128 +q-65 0 -87 -54l-246 -588h174l35 96h212q5 -22 20 -96h154zM2304 1280v-1280q0 -52 -38 -90t-90 -38h-2048q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h2048q52 0 90 -38t38 -90z" /> + <glyph glyph-name="_466" unicode="" horiz-adv-x="2304" +d="M1119 1195q-128 85 -281 85q-103 0 -197.5 -40.5t-162.5 -108.5t-108.5 -162t-40.5 -197q0 -104 40.5 -198t108.5 -162t162 -108.5t198 -40.5q153 0 281 85q-131 107 -178 265.5t0.5 316.5t177.5 265zM1152 1171q-126 -99 -172 -249.5t-0.5 -300.5t172.5 -249 +q127 99 172.5 249t-0.5 300.5t-172 249.5zM1185 1195q130 -107 177.5 -265.5t0.5 -317t-178 -264.5q128 -85 281 -85q104 0 198 40.5t162 108.5t108.5 162t40.5 198q0 103 -40.5 197t-108.5 162t-162.5 108.5t-197.5 40.5q-153 0 -281 -85zM1926 473h7v3h-17v-3h7v-17h3v17z +M1955 456h4v20h-5l-6 -13l-6 13h-5v-20h3v15l6 -13h4l5 13v-15zM1947 16v-2h-2h-3v3h3h2v-1zM1947 7h3l-4 5h2l1 1q1 1 1 3t-1 3l-1 1h-3h-6v-13h3v5h1zM685 75q0 19 11 31t30 12q18 0 29 -12.5t11 -30.5q0 -19 -11 -31t-29 -12q-19 0 -30 12t-11 31zM1158 119q30 0 35 -32 +h-70q5 32 35 32zM1514 75q0 19 11 31t29 12t29.5 -12.5t11.5 -30.5q0 -19 -11 -31t-30 -12q-18 0 -29 12t-11 31zM1786 75q0 18 11.5 30.5t29.5 12.5t29.5 -12.5t11.5 -30.5q0 -19 -11.5 -31t-29.5 -12t-29.5 12.5t-11.5 30.5zM1944 3q-2 0 -4 1q-1 0 -3 2t-2 3q-1 2 -1 4 +q0 3 1 4q0 2 2 4l1 1q2 0 2 1q2 1 4 1q3 0 4 -1l4 -2l2 -4v-1q1 -2 1 -3l-1 -1v-3t-1 -1l-1 -2q-2 -2 -4 -2q-1 -1 -4 -1zM599 7h30v85q0 24 -14.5 38.5t-39.5 15.5q-32 0 -47 -24q-14 24 -45 24q-24 0 -39 -20v16h-30v-135h30v75q0 36 33 36q30 0 30 -36v-75h29v75 +q0 36 33 36q30 0 30 -36v-75zM765 7h29v68v67h-29v-16q-17 20 -43 20q-29 0 -48 -20t-19 -51t19 -51t48 -20q28 0 43 20v-17zM943 48q0 34 -47 40l-14 2q-23 4 -23 14q0 15 25 15q23 0 43 -11l12 24q-22 14 -55 14q-26 0 -41 -12t-15 -32q0 -33 47 -39l13 -2q24 -4 24 -14 +q0 -17 -31 -17q-25 0 -45 14l-13 -23q25 -17 58 -17q29 0 45.5 12t16.5 32zM1073 14l-8 25q-13 -7 -26 -7q-19 0 -19 22v61h48v27h-48v41h-30v-41h-28v-27h28v-61q0 -50 47 -50q21 0 36 10zM1159 146q-29 0 -48 -20t-19 -51q0 -32 19.5 -51.5t49.5 -19.5q33 0 55 19l-14 22 +q-18 -15 -39 -15q-34 0 -41 33h101v12q0 32 -18 51.5t-46 19.5zM1318 146q-23 0 -35 -20v16h-30v-135h30v76q0 35 29 35q10 0 18 -4l9 28q-9 4 -21 4zM1348 75q0 -31 19.5 -51t52.5 -20q29 0 48 16l-14 24q-18 -13 -35 -12q-18 0 -29.5 12t-11.5 31t11.5 31t29.5 12 +q19 0 35 -12l14 24q-20 16 -48 16q-33 0 -52.5 -20t-19.5 -51zM1593 7h30v68v67h-30v-16q-15 20 -42 20q-29 0 -48.5 -20t-19.5 -51t19.5 -51t48.5 -20q28 0 42 20v-17zM1726 146q-23 0 -35 -20v16h-29v-135h29v76q0 35 29 35q10 0 18 -4l9 28q-8 4 -21 4zM1866 7h29v68v122 +h-29v-71q-15 20 -43 20t-47.5 -20.5t-19.5 -50.5t19.5 -50.5t47.5 -20.5q29 0 43 20v-17zM1944 27l-2 -1h-3q-2 -1 -4 -3q-3 -1 -3 -4q-1 -2 -1 -6q0 -3 1 -5q0 -2 3 -4q2 -2 4 -3t5 -1q4 0 6 1q0 1 2 2l2 1q1 1 3 4q1 2 1 5q0 4 -1 6q-1 1 -3 4q0 1 -2 2l-2 1q-1 0 -3 0.5 +t-3 0.5zM2304 1280v-1280q0 -52 -38 -90t-90 -38h-2048q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h2048q52 0 90 -38t38 -90z" /> + <glyph glyph-name="_467" unicode="" horiz-adv-x="2304" +d="M313 759q0 -51 -36 -84q-29 -26 -89 -26h-17v220h17q61 0 89 -27q36 -31 36 -83zM2089 824q0 -52 -64 -52h-19v101h20q63 0 63 -49zM380 759q0 74 -50 120.5t-129 46.5h-95v-333h95q74 0 119 38q60 51 60 128zM410 593h65v333h-65v-333zM730 694q0 40 -20.5 62t-75.5 42 +q-29 10 -39.5 19t-10.5 23q0 16 13.5 26.5t34.5 10.5q29 0 53 -27l34 44q-41 37 -98 37q-44 0 -74 -27.5t-30 -67.5q0 -35 18 -55.5t64 -36.5q37 -13 45 -19q19 -12 19 -34q0 -20 -14 -33.5t-36 -13.5q-48 0 -71 44l-42 -40q44 -64 115 -64q51 0 83 30.5t32 79.5zM1008 604 +v77q-37 -37 -78 -37q-49 0 -80.5 32.5t-31.5 82.5q0 48 31.5 81.5t77.5 33.5q43 0 81 -38v77q-40 20 -80 20q-74 0 -125.5 -50.5t-51.5 -123.5t51 -123.5t125 -50.5q42 0 81 19zM2240 0v527q-65 -40 -144.5 -84t-237.5 -117t-329.5 -137.5t-417.5 -134.5t-504 -118h1569 +q26 0 45 19t19 45zM1389 757q0 75 -53 128t-128 53t-128 -53t-53 -128t53 -128t128 -53t128 53t53 128zM1541 584l144 342h-71l-90 -224l-89 224h-71l142 -342h35zM1714 593h184v56h-119v90h115v56h-115v74h119v57h-184v-333zM2105 593h80l-105 140q76 16 76 94q0 47 -31 73 +t-87 26h-97v-333h65v133h9zM2304 1274v-1268q0 -56 -38.5 -95t-93.5 -39h-2040q-55 0 -93.5 39t-38.5 95v1268q0 56 38.5 95t93.5 39h2040q55 0 93.5 -39t38.5 -95z" /> + <glyph glyph-name="f1f3" unicode="" horiz-adv-x="2304" +d="M119 854h89l-45 108zM740 328l74 79l-70 79h-163v-49h142v-55h-142v-54h159zM898 406l99 -110v217zM1186 453q0 33 -40 33h-84v-69h83q41 0 41 36zM1475 457q0 29 -42 29h-82v-61h81q43 0 43 32zM1197 923q0 29 -42 29h-82v-60h81q43 0 43 31zM1656 854h89l-44 108z +M699 1009v-271h-66v212l-94 -212h-57l-94 212v-212h-132l-25 60h-135l-25 -60h-70l116 271h96l110 -257v257h106l85 -184l77 184h108zM1255 453q0 -20 -5.5 -35t-14 -25t-22.5 -16.5t-26 -10t-31.5 -4.5t-31.5 -1t-32.5 0.5t-29.5 0.5v-91h-126l-80 90l-83 -90h-256v271h260 +l80 -89l82 89h207q109 0 109 -89zM964 794v-56h-217v271h217v-57h-152v-49h148v-55h-148v-54h152zM2304 235v-229q0 -55 -38.5 -94.5t-93.5 -39.5h-2040q-55 0 -93.5 39.5t-38.5 94.5v678h111l25 61h55l25 -61h218v46l19 -46h113l20 47v-47h541v99l10 1q10 0 10 -14v-86h279 +v23q23 -12 55 -18t52.5 -6.5t63 0.5t51.5 1l25 61h56l25 -61h227v58l34 -58h182v378h-180v-44l-25 44h-185v-44l-23 44h-249q-69 0 -109 -22v22h-172v-22q-24 22 -73 22h-628l-43 -97l-43 97h-198v-44l-22 44h-169l-78 -179v391q0 55 38.5 94.5t93.5 39.5h2040 +q55 0 93.5 -39.5t38.5 -94.5v-678h-120q-51 0 -81 -22v22h-177q-55 0 -78 -22v22h-316v-22q-31 22 -87 22h-209v-22q-23 22 -91 22h-234l-54 -58l-50 58h-349v-378h343l55 59l52 -59h211v89h21q59 0 90 13v-102h174v99h8q8 0 10 -2t2 -10v-87h529q57 0 88 24v-24h168 +q60 0 95 17zM1546 469q0 -23 -12 -43t-34 -29q25 -9 34 -26t9 -46v-54h-65v45q0 33 -12 43.5t-46 10.5h-69v-99h-65v271h154q48 0 77 -15t29 -58zM1269 936q0 -24 -12.5 -44t-33.5 -29q26 -9 34.5 -25.5t8.5 -46.5v-53h-65q0 9 0.5 26.5t0 25t-3 18.5t-8.5 16t-17.5 8.5 +t-29.5 3.5h-70v-98h-64v271l153 -1q49 0 78 -14.5t29 -57.5zM1798 327v-56h-216v271h216v-56h-151v-49h148v-55h-148v-54zM1372 1009v-271h-66v271h66zM2065 357q0 -86 -102 -86h-126v58h126q34 0 34 25q0 16 -17 21t-41.5 5t-49.5 3.5t-42 22.5t-17 55q0 39 26 60t66 21 +h130v-57h-119q-36 0 -36 -25q0 -16 17.5 -20.5t42 -4t49 -2.5t42 -21.5t17.5 -54.5zM2304 407v-101q-24 -35 -88 -35h-125v58h125q33 0 33 25q0 13 -12.5 19t-31 5.5t-40 2t-40 8t-31 24t-12.5 48.5q0 39 26.5 60t66.5 21h129v-57h-118q-36 0 -36 -25q0 -20 29 -22t68.5 -5 +t56.5 -26zM2139 1008v-270h-92l-122 203v-203h-132l-26 60h-134l-25 -60h-75q-129 0 -129 133q0 138 133 138h63v-59q-7 0 -28 1t-28.5 0.5t-23 -2t-21.5 -6.5t-14.5 -13.5t-11.5 -23t-3 -33.5q0 -38 13.5 -58t49.5 -20h29l92 213h97l109 -256v256h99l114 -188v188h66z" /> + <glyph glyph-name="_469" unicode="" horiz-adv-x="2304" +d="M745 630q0 -37 -25.5 -61.5t-62.5 -24.5q-29 0 -46.5 16t-17.5 44q0 37 25 62.5t62 25.5q28 0 46.5 -16.5t18.5 -45.5zM1530 779q0 -42 -22 -57t-66 -15l-32 -1l17 107q2 11 13 11h18q22 0 35 -2t25 -12.5t12 -30.5zM1881 630q0 -36 -25.5 -61t-61.5 -25q-29 0 -47 16 +t-18 44q0 37 25 62.5t62 25.5q28 0 46.5 -16.5t18.5 -45.5zM513 801q0 59 -38.5 85.5t-100.5 26.5h-160q-19 0 -21 -19l-65 -408q-1 -6 3 -11t10 -5h76q20 0 22 19l18 110q1 8 7 13t15 6.5t17 1.5t19 -1t14 -1q86 0 135 48.5t49 134.5zM822 489l41 261q1 6 -3 11t-10 5h-76 +q-14 0 -17 -33q-27 40 -95 40q-72 0 -122.5 -54t-50.5 -127q0 -59 34.5 -94t92.5 -35q28 0 58 12t48 32q-4 -12 -4 -21q0 -16 13 -16h69q19 0 22 19zM1269 752q0 5 -4 9.5t-9 4.5h-77q-11 0 -18 -10l-106 -156l-44 150q-5 16 -22 16h-75q-5 0 -9 -4.5t-4 -9.5q0 -2 19.5 -59 +t42 -123t23.5 -70q-82 -112 -82 -120q0 -13 13 -13h77q11 0 18 10l255 368q2 2 2 7zM1649 801q0 59 -38.5 85.5t-100.5 26.5h-159q-20 0 -22 -19l-65 -408q-1 -6 3 -11t10 -5h82q12 0 16 13l18 116q1 8 7 13t15 6.5t17 1.5t19 -1t14 -1q86 0 135 48.5t49 134.5zM1958 489 +l41 261q1 6 -3 11t-10 5h-76q-14 0 -17 -33q-26 40 -95 40q-72 0 -122.5 -54t-50.5 -127q0 -59 34.5 -94t92.5 -35q29 0 59 12t47 32q0 -1 -2 -9t-2 -12q0 -16 13 -16h69q19 0 22 19zM2176 898v1q0 14 -13 14h-74q-11 0 -13 -11l-65 -416l-1 -2q0 -5 4 -9.5t10 -4.5h66 +q19 0 21 19zM392 764q-5 -35 -26 -46t-60 -11l-33 -1l17 107q2 11 13 11h19q40 0 58 -11.5t12 -48.5zM2304 1280v-1280q0 -52 -38 -90t-90 -38h-2048q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h2048q52 0 90 -38t38 -90z" /> + <glyph glyph-name="_470" unicode="" horiz-adv-x="2304" +d="M1597 633q0 -69 -21 -106q-19 -35 -52 -35q-23 0 -41 9v224q29 30 57 30q57 0 57 -122zM2035 669h-110q6 98 56 98q51 0 54 -98zM476 534q0 59 -33 91.5t-101 57.5q-36 13 -52 24t-16 25q0 26 38 26q58 0 124 -33l18 112q-67 32 -149 32q-77 0 -123 -38q-48 -39 -48 -109 +q0 -58 32.5 -90.5t99.5 -56.5q39 -14 54.5 -25.5t15.5 -27.5q0 -31 -48 -31q-29 0 -70 12.5t-72 30.5l-18 -113q72 -41 168 -41q81 0 129 37q51 41 51 117zM771 749l19 111h-96v135l-129 -21l-18 -114l-46 -8l-17 -103h62v-219q0 -84 44 -120q38 -30 111 -30q32 0 79 11v118 +q-32 -7 -44 -7q-42 0 -42 50v197h77zM1087 724v139q-15 3 -28 3q-32 0 -55.5 -16t-33.5 -46l-10 56h-131v-471h150v306q26 31 82 31q16 0 26 -2zM1124 389h150v471h-150v-471zM1746 638q0 122 -45 179q-40 52 -111 52q-64 0 -117 -56l-8 47h-132v-645l150 25v151 +q36 -11 68 -11q83 0 134 56q61 65 61 202zM1278 986q0 33 -23 56t-56 23t-56 -23t-23 -56t23 -56.5t56 -23.5t56 23.5t23 56.5zM2176 629q0 113 -48 176q-50 64 -144 64q-96 0 -151.5 -66t-55.5 -180q0 -128 63 -188q55 -55 161 -55q101 0 160 40l-16 103q-57 -31 -128 -31 +q-43 0 -63 19q-23 19 -28 66h248q2 14 2 52zM2304 1280v-1280q0 -52 -38 -90t-90 -38h-2048q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h2048q52 0 90 -38t38 -90z" /> + <glyph glyph-name="_471" unicode="" horiz-adv-x="2048" +d="M1558 684q61 -356 298 -556q0 -52 -38 -90t-90 -38h-448q0 -106 -75 -181t-181 -75t-180.5 74.5t-75.5 180.5zM1024 -176q16 0 16 16t-16 16q-59 0 -101.5 42.5t-42.5 101.5q0 16 -16 16t-16 -16q0 -73 51.5 -124.5t124.5 -51.5zM2026 1424q8 -10 7.5 -23.5t-10.5 -22.5 +l-1872 -1622q-10 -8 -23.5 -7t-21.5 11l-84 96q-8 10 -7.5 23.5t10.5 21.5l186 161q-19 32 -19 66q50 42 91 88t85 119.5t74.5 158.5t50 206t19.5 260q0 152 117 282.5t307 158.5q-8 19 -8 39q0 40 28 68t68 28t68 -28t28 -68q0 -20 -8 -39q124 -18 219 -82.5t148 -157.5 +l418 363q10 8 23.5 7t21.5 -11z" /> + <glyph glyph-name="_472" unicode="" horiz-adv-x="2048" +d="M1040 -160q0 16 -16 16q-59 0 -101.5 42.5t-42.5 101.5q0 16 -16 16t-16 -16q0 -73 51.5 -124.5t124.5 -51.5q16 0 16 16zM503 315l877 760q-42 88 -132.5 146.5t-223.5 58.5q-93 0 -169.5 -31.5t-121.5 -80.5t-69 -103t-24 -105q0 -384 -137 -645zM1856 128 +q0 -52 -38 -90t-90 -38h-448q0 -106 -75 -181t-181 -75t-180.5 74.5t-75.5 180.5l149 129h757q-166 187 -227 459l111 97q61 -356 298 -556zM1942 1520l84 -96q8 -10 7.5 -23.5t-10.5 -22.5l-1872 -1622q-10 -8 -23.5 -7t-21.5 11l-84 96q-8 10 -7.5 23.5t10.5 21.5l186 161 +q-19 32 -19 66q50 42 91 88t85 119.5t74.5 158.5t50 206t19.5 260q0 152 117 282.5t307 158.5q-8 19 -8 39q0 40 28 68t68 28t68 -28t28 -68q0 -20 -8 -39q124 -18 219 -82.5t148 -157.5l418 363q10 8 23.5 7t21.5 -11z" /> + <glyph glyph-name="_473" unicode="" horiz-adv-x="1408" +d="M512 160v704q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-704q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM768 160v704q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-704q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1024 160v704q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-704 +q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM480 1152h448l-48 117q-7 9 -17 11h-317q-10 -2 -17 -11zM1408 1120v-64q0 -14 -9 -23t-23 -9h-96v-948q0 -83 -47 -143.5t-113 -60.5h-832q-66 0 -113 58.5t-47 141.5v952h-96q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h309l70 167 +q15 37 54 63t79 26h320q40 0 79 -26t54 -63l70 -167h309q14 0 23 -9t9 -23z" /> + <glyph glyph-name="_474" unicode="" +d="M1150 462v-109q0 -50 -36.5 -89t-94 -60.5t-118 -32.5t-117.5 -11q-205 0 -342.5 139t-137.5 346q0 203 136 339t339 136q34 0 75.5 -4.5t93 -18t92.5 -34t69 -56.5t28 -81v-109q0 -16 -16 -16h-118q-16 0 -16 16v70q0 43 -65.5 67.5t-137.5 24.5q-140 0 -228.5 -91.5 +t-88.5 -237.5q0 -151 91.5 -249.5t233.5 -98.5q68 0 138 24t70 66v70q0 7 4.5 11.5t10.5 4.5h119q6 0 11 -4.5t5 -11.5zM768 1280q-130 0 -248.5 -51t-204 -136.5t-136.5 -204t-51 -248.5t51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5t136.5 204t51 248.5 +t-51 248.5t-136.5 204t-204 136.5t-248.5 51zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="_475" unicode="" +d="M972 761q0 108 -53.5 169t-147.5 61q-63 0 -124 -30.5t-110 -84.5t-79.5 -137t-30.5 -180q0 -112 53.5 -173t150.5 -61q96 0 176 66.5t122.5 166t42.5 203.5zM1536 640q0 -111 -37 -197t-98.5 -135t-131.5 -74.5t-145 -27.5q-6 0 -15.5 -0.5t-16.5 -0.5q-95 0 -142 53 +q-28 33 -33 83q-52 -66 -131.5 -110t-173.5 -44q-161 0 -249.5 95.5t-88.5 269.5q0 157 66 290t179 210.5t246 77.5q87 0 155 -35.5t106 -99.5l2 19l11 56q1 6 5.5 12t9.5 6h118q5 0 13 -11q5 -5 3 -16l-120 -614q-5 -24 -5 -48q0 -39 12.5 -52t44.5 -13q28 1 57 5.5t73 24 +t77 50t57 89.5t24 137q0 292 -174 466t-466 174q-130 0 -248.5 -51t-204 -136.5t-136.5 -204t-51 -248.5t51 -248.5t136.5 -204t204 -136.5t248.5 -51q228 0 405 144q11 9 24 8t21 -12l41 -49q8 -12 7 -24q-2 -13 -12 -22q-102 -83 -227.5 -128t-258.5 -45q-156 0 -298 61 +t-245 164t-164 245t-61 298t61 298t164 245t245 164t298 61q344 0 556 -212t212 -556z" /> + <glyph glyph-name="_476" unicode="" horiz-adv-x="1792" +d="M1698 1442q94 -94 94 -226.5t-94 -225.5l-225 -223l104 -104q10 -10 10 -23t-10 -23l-210 -210q-10 -10 -23 -10t-23 10l-105 105l-603 -603q-37 -37 -90 -37h-203l-256 -128l-64 64l128 256v203q0 53 37 90l603 603l-105 105q-10 10 -10 23t10 23l210 210q10 10 23 10 +t23 -10l104 -104l223 225q93 94 225.5 94t226.5 -94zM512 64l576 576l-192 192l-576 -576v-192h192z" /> + <glyph glyph-name="f1fc" unicode="" horiz-adv-x="1792" +d="M1615 1536q70 0 122.5 -46.5t52.5 -116.5q0 -63 -45 -151q-332 -629 -465 -752q-97 -91 -218 -91q-126 0 -216.5 92.5t-90.5 219.5q0 128 92 212l638 579q59 54 130 54zM706 502q39 -76 106.5 -130t150.5 -76l1 -71q4 -213 -129.5 -347t-348.5 -134q-123 0 -218 46.5 +t-152.5 127.5t-86.5 183t-29 220q7 -5 41 -30t62 -44.5t59 -36.5t46 -17q41 0 55 37q25 66 57.5 112.5t69.5 76t88 47.5t103 25.5t125 10.5z" /> + <glyph glyph-name="_478" unicode="" horiz-adv-x="1792" +d="M1792 128v-384h-1792v384q45 0 85 14t59 27.5t47 37.5q30 27 51.5 38t56.5 11q24 0 44 -7t31 -15t33 -27q29 -25 47 -38t58 -27t86 -14q45 0 85 14.5t58 27t48 37.5q21 19 32.5 27t31 15t43.5 7q35 0 56.5 -11t51.5 -38q28 -24 47 -37.5t59 -27.5t85 -14t85 14t59 27.5 +t47 37.5q30 27 51.5 38t56.5 11q34 0 55.5 -11t51.5 -38q28 -24 47 -37.5t59 -27.5t85 -14zM1792 448v-192q-24 0 -44 7t-31 15t-33 27q-29 25 -47 38t-58 27t-85 14q-46 0 -86 -14t-58 -27t-47 -38q-22 -19 -33 -27t-31 -15t-44 -7q-35 0 -56.5 11t-51.5 38q-29 25 -47 38 +t-58 27t-86 14q-45 0 -85 -14.5t-58 -27t-48 -37.5q-21 -19 -32.5 -27t-31 -15t-43.5 -7q-35 0 -56.5 11t-51.5 38q-28 24 -47 37.5t-59 27.5t-85 14q-46 0 -86 -14t-58 -27t-47 -38q-30 -27 -51.5 -38t-56.5 -11v192q0 80 56 136t136 56h64v448h256v-448h256v448h256v-448 +h256v448h256v-448h64q80 0 136 -56t56 -136zM512 1312q0 -77 -36 -118.5t-92 -41.5q-53 0 -90.5 37.5t-37.5 90.5q0 29 9.5 51t23.5 34t31 28t31 31.5t23.5 44.5t9.5 67q38 0 83 -74t45 -150zM1024 1312q0 -77 -36 -118.5t-92 -41.5q-53 0 -90.5 37.5t-37.5 90.5 +q0 29 9.5 51t23.5 34t31 28t31 31.5t23.5 44.5t9.5 67q38 0 83 -74t45 -150zM1536 1312q0 -77 -36 -118.5t-92 -41.5q-53 0 -90.5 37.5t-37.5 90.5q0 29 9.5 51t23.5 34t31 28t31 31.5t23.5 44.5t9.5 67q38 0 83 -74t45 -150z" /> + <glyph glyph-name="_479" unicode="" horiz-adv-x="2048" +d="M2048 0v-128h-2048v1536h128v-1408h1920zM1664 1024l256 -896h-1664v576l448 576l576 -576z" /> + <glyph glyph-name="_480" unicode="" horiz-adv-x="1792" +d="M768 646l546 -546q-106 -108 -247.5 -168t-298.5 -60q-209 0 -385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103v-762zM955 640h773q0 -157 -60 -298.5t-168 -247.5zM1664 768h-768v768q209 0 385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="_481" unicode="" horiz-adv-x="2048" +d="M2048 0v-128h-2048v1536h128v-1408h1920zM1920 1248v-435q0 -21 -19.5 -29.5t-35.5 7.5l-121 121l-633 -633q-10 -10 -23 -10t-23 10l-233 233l-416 -416l-192 192l585 585q10 10 23 10t23 -10l233 -233l464 464l-121 121q-16 16 -7.5 35.5t29.5 19.5h435q14 0 23 -9 +t9 -23z" /> + <glyph glyph-name="_482" unicode="" horiz-adv-x="1792" +d="M1292 832q0 -6 10 -41q10 -29 25 -49.5t41 -34t44 -20t55 -16.5q325 -91 325 -332q0 -146 -105.5 -242.5t-254.5 -96.5q-59 0 -111.5 18.5t-91.5 45.5t-77 74.5t-63 87.5t-53.5 103.5t-43.5 103t-39.5 106.5t-35.5 95q-32 81 -61.5 133.5t-73.5 96.5t-104 64t-142 20 +q-96 0 -183 -55.5t-138 -144.5t-51 -185q0 -160 106.5 -279.5t263.5 -119.5q177 0 258 95q56 63 83 116l84 -152q-15 -34 -44 -70l1 -1q-131 -152 -388 -152q-147 0 -269.5 79t-190.5 207.5t-68 274.5q0 105 43.5 206t116 176.5t172 121.5t204.5 46q87 0 159 -19t123.5 -50 +t95 -80t72.5 -99t58.5 -117t50.5 -124.5t50 -130.5t55 -127q96 -200 233 -200q81 0 138.5 48.5t57.5 128.5q0 42 -19 72t-50.5 46t-72.5 31.5t-84.5 27t-87.5 34t-81 52t-65 82t-39 122.5q-3 16 -3 33q0 110 87.5 192t198.5 78q78 -3 120.5 -14.5t90.5 -53.5h-1 +q12 -11 23 -24.5t26 -36t19 -27.5l-129 -99q-26 49 -54 70v1q-23 21 -97 21q-49 0 -84 -33t-35 -83z" /> + <glyph glyph-name="_483" unicode="" +d="M1432 484q0 173 -234 239q-35 10 -53 16.5t-38 25t-29 46.5q0 2 -2 8.5t-3 12t-1 7.5q0 36 24.5 59.5t60.5 23.5q54 0 71 -15h-1q20 -15 39 -51l93 71q-39 54 -49 64q-33 29 -67.5 39t-85.5 10q-80 0 -142 -57.5t-62 -137.5q0 -7 2 -23q16 -96 64.5 -140t148.5 -73 +q29 -8 49 -15.5t45 -21.5t38.5 -34.5t13.5 -46.5v-5q1 -58 -40.5 -93t-100.5 -35q-97 0 -167 144q-23 47 -51.5 121.5t-48 125.5t-54 110.5t-74 95.5t-103.5 60.5t-147 24.5q-101 0 -192 -56t-144 -148t-50 -192v-1q4 -108 50.5 -199t133.5 -147.5t196 -56.5q186 0 279 110 +q20 27 31 51l-60 109q-42 -80 -99 -116t-146 -36q-115 0 -191 87t-76 204q0 105 82 189t186 84q112 0 170 -53.5t104 -172.5q8 -21 25.5 -68.5t28.5 -76.5t31.5 -74.5t38.5 -74t45.5 -62.5t55.5 -53.5t66 -33t80 -13.5q107 0 183 69.5t76 174.5zM1536 1120v-960 +q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="_484" unicode="" horiz-adv-x="2048" +d="M1152 640q0 104 -40.5 198.5t-109.5 163.5t-163.5 109.5t-198.5 40.5t-198.5 -40.5t-163.5 -109.5t-109.5 -163.5t-40.5 -198.5t40.5 -198.5t109.5 -163.5t163.5 -109.5t198.5 -40.5t198.5 40.5t163.5 109.5t109.5 163.5t40.5 198.5zM1920 640q0 104 -40.5 198.5 +t-109.5 163.5t-163.5 109.5t-198.5 40.5h-386q119 -90 188.5 -224t69.5 -288t-69.5 -288t-188.5 -224h386q104 0 198.5 40.5t163.5 109.5t109.5 163.5t40.5 198.5zM2048 640q0 -130 -51 -248.5t-136.5 -204t-204 -136.5t-248.5 -51h-768q-130 0 -248.5 51t-204 136.5 +t-136.5 204t-51 248.5t51 248.5t136.5 204t204 136.5t248.5 51h768q130 0 248.5 -51t204 -136.5t136.5 -204t51 -248.5z" /> + <glyph glyph-name="_485" unicode="" horiz-adv-x="2048" +d="M0 640q0 130 51 248.5t136.5 204t204 136.5t248.5 51h768q130 0 248.5 -51t204 -136.5t136.5 -204t51 -248.5t-51 -248.5t-136.5 -204t-204 -136.5t-248.5 -51h-768q-130 0 -248.5 51t-204 136.5t-136.5 204t-51 248.5zM1408 128q104 0 198.5 40.5t163.5 109.5 +t109.5 163.5t40.5 198.5t-40.5 198.5t-109.5 163.5t-163.5 109.5t-198.5 40.5t-198.5 -40.5t-163.5 -109.5t-109.5 -163.5t-40.5 -198.5t40.5 -198.5t109.5 -163.5t163.5 -109.5t198.5 -40.5z" /> + <glyph glyph-name="_486" unicode="" horiz-adv-x="2304" +d="M762 384h-314q-40 0 -57.5 35t6.5 67l188 251q-65 31 -137 31q-132 0 -226 -94t-94 -226t94 -226t226 -94q115 0 203 72.5t111 183.5zM576 512h186q-18 85 -75 148zM1056 512l288 384h-480l-99 -132q105 -103 126 -252h165zM2176 448q0 132 -94 226t-226 94 +q-60 0 -121 -24l174 -260q15 -23 10 -49t-27 -40q-15 -11 -36 -11q-35 0 -53 29l-174 260q-93 -95 -93 -225q0 -132 94 -226t226 -94t226 94t94 226zM2304 448q0 -185 -131.5 -316.5t-316.5 -131.5t-316.5 131.5t-131.5 316.5q0 97 39.5 183.5t109.5 149.5l-65 98l-353 -469 +q-18 -26 -51 -26h-197q-23 -164 -149 -274t-294 -110q-185 0 -316.5 131.5t-131.5 316.5t131.5 316.5t316.5 131.5q114 0 215 -55l137 183h-224q-26 0 -45 19t-19 45t19 45t45 19h384v-128h435l-85 128h-222q-26 0 -45 19t-19 45t19 45t45 19h256q33 0 53 -28l267 -400 +q91 44 192 44q185 0 316.5 -131.5t131.5 -316.5z" /> + <glyph glyph-name="_487" unicode="" +d="M384 320q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1408 320q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1362 716l-72 384q-5 23 -22.5 37.5t-40.5 14.5 +h-918q-23 0 -40.5 -14.5t-22.5 -37.5l-72 -384q-5 -30 14 -53t49 -23h1062q30 0 49 23t14 53zM1136 1328q0 20 -14 34t-34 14h-640q-20 0 -34 -14t-14 -34t14 -34t34 -14h640q20 0 34 14t14 34zM1536 603v-603h-128v-128q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5 +t-37.5 90.5v128h-768v-128q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5v128h-128v603q0 112 25 223l103 454q9 78 97.5 137t230 89t312.5 30t312.5 -30t230 -89t97.5 -137l105 -454q23 -102 23 -223z" /> + <glyph glyph-name="_488" unicode="" horiz-adv-x="2048" +d="M1463 704q0 -35 -25 -60.5t-61 -25.5h-702q-36 0 -61 25.5t-25 60.5t25 60.5t61 25.5h702q36 0 61 -25.5t25 -60.5zM1677 704q0 86 -23 170h-982q-36 0 -61 25t-25 60q0 36 25 61t61 25h908q-88 143 -235 227t-320 84q-177 0 -327.5 -87.5t-238 -237.5t-87.5 -327 +q0 -86 23 -170h982q36 0 61 -25t25 -60q0 -36 -25 -61t-61 -25h-908q88 -143 235.5 -227t320.5 -84q132 0 253 51.5t208 139t139 208t52 253.5zM2048 959q0 -35 -25 -60t-61 -25h-131q17 -85 17 -170q0 -167 -65.5 -319.5t-175.5 -263t-262.5 -176t-319.5 -65.5 +q-246 0 -448.5 133t-301.5 350h-189q-36 0 -61 25t-25 61q0 35 25 60t61 25h132q-17 85 -17 170q0 167 65.5 319.5t175.5 263t262.5 176t320.5 65.5q245 0 447.5 -133t301.5 -350h188q36 0 61 -25t25 -61z" /> + <glyph glyph-name="_489" unicode="" horiz-adv-x="1280" +d="M953 1158l-114 -328l117 -21q165 451 165 518q0 56 -38 56q-57 0 -130 -225zM654 471l33 -88q37 42 71 67l-33 5.5t-38.5 7t-32.5 8.5zM362 1367q0 -98 159 -521q17 10 49 10q15 0 75 -5l-121 351q-75 220 -123 220q-19 0 -29 -17.5t-10 -37.5zM283 608q0 -36 51.5 -119 +t117.5 -153t100 -70q14 0 25.5 13t11.5 27q0 24 -32 102q-13 32 -32 72t-47.5 89t-61.5 81t-62 32q-20 0 -45.5 -27t-25.5 -47zM125 273q0 -41 25 -104q59 -145 183.5 -227t281.5 -82q227 0 382 170q152 169 152 427q0 43 -1 67t-11.5 62t-30.5 56q-56 49 -211.5 75.5 +t-270.5 26.5q-37 0 -49 -11q-12 -5 -12 -35q0 -34 21.5 -60t55.5 -40t77.5 -23.5t87.5 -11.5t85 -4t70 0h23q24 0 40 -19q15 -19 19 -55q-28 -28 -96 -54q-61 -22 -93 -46q-64 -46 -108.5 -114t-44.5 -137q0 -31 18.5 -88.5t18.5 -87.5l-3 -12q-4 -12 -4 -14 +q-137 10 -146 216q-8 -2 -41 -2q2 -7 2 -21q0 -53 -40.5 -89.5t-94.5 -36.5q-82 0 -166.5 78t-84.5 159q0 34 33 67q52 -64 60 -76q77 -104 133 -104q12 0 26.5 8.5t14.5 20.5q0 34 -87.5 145t-116.5 111q-43 0 -70 -44.5t-27 -90.5zM11 264q0 101 42.5 163t136.5 88 +q-28 74 -28 104q0 62 61 123t122 61q29 0 70 -15q-163 462 -163 567q0 80 41 130.5t119 50.5q131 0 325 -581q6 -17 8 -23q6 16 29 79.5t43.5 118.5t54 127.5t64.5 123t70.5 86.5t76.5 36q71 0 112 -49t41 -122q0 -108 -159 -550q61 -15 100.5 -46t58.5 -78t26 -93.5 +t7 -110.5q0 -150 -47 -280t-132 -225t-211 -150t-278 -55q-111 0 -223 42q-149 57 -258 191.5t-109 286.5z" /> + <glyph glyph-name="_490" unicode="" horiz-adv-x="2048" +d="M785 528h207q-14 -158 -98.5 -248.5t-214.5 -90.5q-162 0 -254.5 116t-92.5 316q0 194 93 311.5t233 117.5q148 0 232 -87t97 -247h-203q-5 64 -35.5 99t-81.5 35q-57 0 -88.5 -60.5t-31.5 -177.5q0 -48 5 -84t18 -69.5t40 -51.5t66 -18q95 0 109 139zM1497 528h206 +q-14 -158 -98 -248.5t-214 -90.5q-162 0 -254.5 116t-92.5 316q0 194 93 311.5t233 117.5q148 0 232 -87t97 -247h-204q-4 64 -35 99t-81 35q-57 0 -88.5 -60.5t-31.5 -177.5q0 -48 5 -84t18 -69.5t39.5 -51.5t65.5 -18q49 0 76.5 38t33.5 101zM1856 647q0 207 -15.5 307 +t-60.5 161q-6 8 -13.5 14t-21.5 15t-16 11q-86 63 -697 63q-625 0 -710 -63q-5 -4 -17.5 -11.5t-21 -14t-14.5 -14.5q-45 -60 -60 -159.5t-15 -308.5q0 -208 15 -307.5t60 -160.5q6 -8 15 -15t20.5 -14t17.5 -12q44 -33 239.5 -49t470.5 -16q610 0 697 65q5 4 17 11t20.5 14 +t13.5 16q46 60 61 159t15 309zM2048 1408v-1536h-2048v1536h2048z" /> + <glyph glyph-name="_491" unicode="" +d="M992 912v-496q0 -14 -9 -23t-23 -9h-160q-14 0 -23 9t-9 23v496q0 112 -80 192t-192 80h-272v-1152q0 -14 -9 -23t-23 -9h-160q-14 0 -23 9t-9 23v1344q0 14 9 23t23 9h464q135 0 249 -66.5t180.5 -180.5t66.5 -249zM1376 1376v-880q0 -135 -66.5 -249t-180.5 -180.5 +t-249 -66.5h-464q-14 0 -23 9t-9 23v960q0 14 9 23t23 9h160q14 0 23 -9t9 -23v-768h272q112 0 192 80t80 192v880q0 14 9 23t23 9h160q14 0 23 -9t9 -23z" /> + <glyph glyph-name="_492" unicode="" +d="M1311 694v-114q0 -24 -13.5 -38t-37.5 -14h-202q-24 0 -38 14t-14 38v114q0 24 14 38t38 14h202q24 0 37.5 -14t13.5 -38zM821 464v250q0 53 -32.5 85.5t-85.5 32.5h-133q-68 0 -96 -52q-28 52 -96 52h-130q-53 0 -85.5 -32.5t-32.5 -85.5v-250q0 -22 21 -22h55 +q22 0 22 22v230q0 24 13.5 38t38.5 14h94q24 0 38 -14t14 -38v-230q0 -22 21 -22h54q22 0 22 22v230q0 24 14 38t38 14h97q24 0 37.5 -14t13.5 -38v-230q0 -22 22 -22h55q21 0 21 22zM1410 560v154q0 53 -33 85.5t-86 32.5h-264q-53 0 -86 -32.5t-33 -85.5v-410 +q0 -21 22 -21h55q21 0 21 21v180q31 -42 94 -42h191q53 0 86 32.5t33 85.5zM1536 1176v-1072q0 -96 -68 -164t-164 -68h-1072q-96 0 -164 68t-68 164v1072q0 96 68 164t164 68h1072q96 0 164 -68t68 -164z" /> + <glyph glyph-name="_493" unicode="" +d="M915 450h-294l147 551zM1001 128h311l-324 1024h-440l-324 -1024h311l383 314zM1536 1120v-960q0 -118 -85 -203t-203 -85h-960q-118 0 -203 85t-85 203v960q0 118 85 203t203 85h960q118 0 203 -85t85 -203z" /> + <glyph glyph-name="_494" unicode="" horiz-adv-x="2048" +d="M2048 641q0 -21 -13 -36.5t-33 -19.5l-205 -356q3 -9 3 -18q0 -20 -12.5 -35.5t-32.5 -19.5l-193 -337q3 -8 3 -16q0 -23 -16.5 -40t-40.5 -17q-25 0 -41 18h-400q-17 -20 -43 -20t-43 20h-399q-17 -20 -43 -20q-23 0 -40 16.5t-17 40.5q0 8 4 20l-193 335 +q-20 4 -32.5 19.5t-12.5 35.5q0 9 3 18l-206 356q-20 5 -32.5 20.5t-12.5 35.5q0 21 13.5 36.5t33.5 19.5l199 344q0 1 -0.5 3t-0.5 3q0 36 34 51l209 363q-4 10 -4 18q0 24 17 40.5t40 16.5q26 0 44 -21h396q16 21 43 21t43 -21h398q18 21 44 21q23 0 40 -16.5t17 -40.5 +q0 -6 -4 -18l207 -358q23 -1 39 -17.5t16 -38.5q0 -13 -7 -27l187 -324q19 -4 31.5 -19.5t12.5 -35.5zM1063 -158h389l-342 354h-143l-342 -354h360q18 16 39 16t39 -16zM112 654q1 -4 1 -13q0 -10 -2 -15l208 -360l15 -6l188 199v347l-187 194q-13 -8 -29 -10zM986 1438 +h-388l190 -200l554 200h-280q-16 -16 -38 -16t-38 16zM1689 226q1 6 5 11l-64 68l-17 -79h76zM1583 226l22 105l-252 266l-296 -307l63 -64h463zM1495 -142l16 28l65 310h-427l333 -343q8 4 13 5zM578 -158h5l342 354h-373v-335l4 -6q14 -5 22 -13zM552 226h402l64 66 +l-309 321l-157 -166v-221zM359 226h163v189l-168 -177q4 -8 5 -12zM358 1051q0 -1 0.5 -2t0.5 -2q0 -16 -8 -29l171 -177v269zM552 1121v-311l153 -157l297 314l-223 236zM556 1425l-4 -8v-264l205 74l-191 201q-6 -2 -10 -3zM1447 1438h-16l-621 -224l213 -225zM1023 946 +l-297 -315l311 -319l296 307zM688 634l-136 141v-284zM1038 270l-42 -44h85zM1374 618l238 -251l132 624l-3 5l-1 1zM1718 1018q-8 13 -8 29v2l-216 376q-5 1 -13 5l-437 -463l310 -327zM522 1142v223l-163 -282zM522 196h-163l163 -283v283zM1607 196l-48 -227l130 227h-82 +zM1729 266l207 361q-2 10 -2 14q0 1 3 16l-171 296l-129 -612l77 -82q5 3 15 7z" /> + <glyph glyph-name="f210" unicode="" +d="M0 856q0 131 91.5 226.5t222.5 95.5h742l352 358v-1470q0 -132 -91.5 -227t-222.5 -95h-780q-131 0 -222.5 95t-91.5 227v790zM1232 102l-176 180v425q0 46 -32 79t-78 33h-484q-46 0 -78 -33t-32 -79v-492q0 -46 32.5 -79.5t77.5 -33.5h770z" /> + <glyph glyph-name="_496" unicode="" +d="M934 1386q-317 -121 -556 -362.5t-358 -560.5q-20 89 -20 176q0 208 102.5 384.5t278.5 279t384 102.5q82 0 169 -19zM1203 1267q93 -65 164 -155q-389 -113 -674.5 -400.5t-396.5 -676.5q-93 72 -155 162q112 386 395 671t667 399zM470 -67q115 356 379.5 622t619.5 384 +q40 -92 54 -195q-292 -120 -516 -345t-343 -518q-103 14 -194 52zM1536 -125q-193 50 -367 115q-135 -84 -290 -107q109 205 274 370.5t369 275.5q-21 -152 -101 -284q65 -175 115 -370z" /> + <glyph glyph-name="f212" unicode="" horiz-adv-x="2048" +d="M1893 1144l155 -1272q-131 0 -257 57q-200 91 -393 91q-226 0 -374 -148q-148 148 -374 148q-193 0 -393 -91q-128 -57 -252 -57h-5l155 1272q224 127 482 127q233 0 387 -106q154 106 387 106q258 0 482 -127zM1398 157q129 0 232 -28.5t260 -93.5l-124 1021 +q-171 78 -368 78q-224 0 -374 -141q-150 141 -374 141q-197 0 -368 -78l-124 -1021q105 43 165.5 65t148.5 39.5t178 17.5q202 0 374 -108q172 108 374 108zM1438 191l-55 907q-211 -4 -359 -155q-152 155 -374 155q-176 0 -336 -66l-114 -941q124 51 228.5 76t221.5 25 +q209 0 374 -102q172 107 374 102z" /> + <glyph glyph-name="_498" unicode="" horiz-adv-x="2048" +d="M1500 165v733q0 21 -15 36t-35 15h-93q-20 0 -35 -15t-15 -36v-733q0 -20 15 -35t35 -15h93q20 0 35 15t15 35zM1216 165v531q0 20 -15 35t-35 15h-101q-20 0 -35 -15t-15 -35v-531q0 -20 15 -35t35 -15h101q20 0 35 15t15 35zM924 165v429q0 20 -15 35t-35 15h-101 +q-20 0 -35 -15t-15 -35v-429q0 -20 15 -35t35 -15h101q20 0 35 15t15 35zM632 165v362q0 20 -15 35t-35 15h-101q-20 0 -35 -15t-15 -35v-362q0 -20 15 -35t35 -15h101q20 0 35 15t15 35zM2048 311q0 -166 -118 -284t-284 -118h-1244q-166 0 -284 118t-118 284 +q0 116 63 214.5t168 148.5q-10 34 -10 73q0 113 80.5 193.5t193.5 80.5q102 0 180 -67q45 183 194 300t338 117q149 0 275 -73.5t199.5 -199.5t73.5 -275q0 -66 -14 -122q135 -33 221 -142.5t86 -247.5z" /> + <glyph glyph-name="_499" unicode="" +d="M0 1536h1536v-1392l-776 -338l-760 338v1392zM1436 209v926h-1336v-926l661 -294zM1436 1235v201h-1336v-201h1336zM181 937v-115h-37v115h37zM181 789v-115h-37v115h37zM181 641v-115h-37v115h37zM181 493v-115h-37v115h37zM181 345v-115h-37v115h37zM207 202l15 34 +l105 -47l-15 -33zM343 142l15 34l105 -46l-15 -34zM478 82l15 34l105 -46l-15 -34zM614 23l15 33l104 -46l-15 -34zM797 10l105 46l15 -33l-105 -47zM932 70l105 46l15 -34l-105 -46zM1068 130l105 46l15 -34l-105 -46zM1203 189l105 47l15 -34l-105 -46zM259 1389v-36h-114 +v36h114zM421 1389v-36h-115v36h115zM583 1389v-36h-115v36h115zM744 1389v-36h-114v36h114zM906 1389v-36h-114v36h114zM1068 1389v-36h-115v36h115zM1230 1389v-36h-115v36h115zM1391 1389v-36h-114v36h114zM181 1049v-79h-37v115h115v-36h-78zM421 1085v-36h-115v36h115z +M583 1085v-36h-115v36h115zM744 1085v-36h-114v36h114zM906 1085v-36h-114v36h114zM1068 1085v-36h-115v36h115zM1230 1085v-36h-115v36h115zM1355 970v79h-78v36h115v-115h-37zM1355 822v115h37v-115h-37zM1355 674v115h37v-115h-37zM1355 526v115h37v-115h-37zM1355 378 +v115h37v-115h-37zM1355 230v115h37v-115h-37zM760 265q-129 0 -221 91.5t-92 221.5q0 129 92 221t221 92q130 0 221.5 -92t91.5 -221q0 -130 -91.5 -221.5t-221.5 -91.5zM595 646q0 -36 19.5 -56.5t49.5 -25t64 -7t64 -2t49.5 -9t19.5 -30.5q0 -49 -112 -49q-97 0 -123 51 +h-3l-31 -63q67 -42 162 -42q29 0 56.5 5t55.5 16t45.5 33t17.5 53q0 46 -27.5 69.5t-67.5 27t-79.5 3t-67 5t-27.5 25.5q0 21 20.5 33t40.5 15t41 3q34 0 70.5 -11t51.5 -34h3l30 58q-3 1 -21 8.5t-22.5 9t-19.5 7t-22 7t-20 4.5t-24 4t-23 1q-29 0 -56.5 -5t-54 -16.5 +t-43 -34t-16.5 -53.5z" /> + <glyph glyph-name="_500" unicode="" horiz-adv-x="2048" +d="M863 504q0 112 -79.5 191.5t-191.5 79.5t-191 -79.5t-79 -191.5t79 -191t191 -79t191.5 79t79.5 191zM1726 505q0 112 -79 191t-191 79t-191.5 -79t-79.5 -191q0 -113 79.5 -192t191.5 -79t191 79.5t79 191.5zM2048 1314v-1348q0 -44 -31.5 -75.5t-76.5 -31.5h-1832 +q-45 0 -76.5 31.5t-31.5 75.5v1348q0 44 31.5 75.5t76.5 31.5h431q44 0 76 -31.5t32 -75.5v-161h754v161q0 44 32 75.5t76 31.5h431q45 0 76.5 -31.5t31.5 -75.5z" /> + <glyph glyph-name="_501" unicode="" horiz-adv-x="2048" +d="M1430 953zM1690 749q148 0 253 -98.5t105 -244.5q0 -157 -109 -261.5t-267 -104.5q-85 0 -162 27.5t-138 73.5t-118 106t-109 126t-103.5 132.5t-108.5 126.5t-117 106t-136 73.5t-159 27.5q-154 0 -251.5 -91.5t-97.5 -244.5q0 -157 104 -250t263 -93q100 0 208 37.5 +t193 98.5q5 4 21 18.5t30 24t22 9.5q14 0 24.5 -10.5t10.5 -24.5q0 -24 -60 -77q-101 -88 -234.5 -142t-260.5 -54q-133 0 -245.5 58t-180 165t-67.5 241q0 205 141.5 341t347.5 136q120 0 226.5 -43.5t185.5 -113t151.5 -153t139 -167.5t133.5 -153.5t149.5 -113 +t172.5 -43.5q102 0 168.5 61.5t66.5 162.5q0 95 -64.5 159t-159.5 64q-30 0 -81.5 -18.5t-68.5 -18.5q-20 0 -35.5 15t-15.5 35q0 18 8.5 57t8.5 59q0 159 -107.5 263t-266.5 104q-58 0 -111.5 -18.5t-84 -40.5t-55.5 -40.5t-33 -18.5q-15 0 -25.5 10.5t-10.5 25.5 +q0 19 25 46q59 67 147 103.5t182 36.5q191 0 318 -125.5t127 -315.5q0 -37 -4 -66q57 15 115 15z" /> + <glyph glyph-name="_502" unicode="" horiz-adv-x="1664" +d="M1216 832q0 26 -19 45t-45 19h-128v128q0 26 -19 45t-45 19t-45 -19t-19 -45v-128h-128q-26 0 -45 -19t-19 -45t19 -45t45 -19h128v-128q0 -26 19 -45t45 -19t45 19t19 45v128h128q26 0 45 19t19 45zM640 0q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5 +t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1536 0q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1664 1088v-512q0 -24 -16 -42.5t-41 -21.5l-1044 -122q1 -7 4.5 -21.5t6 -26.5t2.5 -22q0 -16 -24 -64h920 +q26 0 45 -19t19 -45t-19 -45t-45 -19h-1024q-26 0 -45 19t-19 45q0 14 11 39.5t29.5 59.5t20.5 38l-177 823h-204q-26 0 -45 19t-19 45t19 45t45 19h256q16 0 28.5 -6.5t20 -15.5t13 -24.5t7.5 -26.5t5.5 -29.5t4.5 -25.5h1201q26 0 45 -19t19 -45z" /> + <glyph glyph-name="_503" unicode="" horiz-adv-x="1664" +d="M1280 832q0 26 -19 45t-45 19t-45 -19l-147 -146v293q0 26 -19 45t-45 19t-45 -19t-19 -45v-293l-147 146q-19 19 -45 19t-45 -19t-19 -45t19 -45l256 -256q19 -19 45 -19t45 19l256 256q19 19 19 45zM640 0q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5 +t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1536 0q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1664 1088v-512q0 -24 -16 -42.5t-41 -21.5l-1044 -122q1 -7 4.5 -21.5t6 -26.5t2.5 -22q0 -16 -24 -64h920 +q26 0 45 -19t19 -45t-19 -45t-45 -19h-1024q-26 0 -45 19t-19 45q0 14 11 39.5t29.5 59.5t20.5 38l-177 823h-204q-26 0 -45 19t-19 45t19 45t45 19h256q16 0 28.5 -6.5t20 -15.5t13 -24.5t7.5 -26.5t5.5 -29.5t4.5 -25.5h1201q26 0 45 -19t19 -45z" /> + <glyph glyph-name="_504" unicode="" horiz-adv-x="2048" +d="M212 768l623 -665l-300 665h-323zM1024 -4l349 772h-698zM538 896l204 384h-262l-288 -384h346zM1213 103l623 665h-323zM683 896h682l-204 384h-274zM1510 896h346l-288 384h-262zM1651 1382l384 -512q14 -18 13 -41.5t-17 -40.5l-960 -1024q-18 -20 -47 -20t-47 20 +l-960 1024q-16 17 -17 40.5t13 41.5l384 512q18 26 51 26h1152q33 0 51 -26z" /> + <glyph glyph-name="_505" unicode="" horiz-adv-x="2048" +d="M1811 -19q19 19 45 19t45 -19l128 -128l-90 -90l-83 83l-83 -83q-18 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-83 83l-83 -83 +q-19 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-128 128l90 90l83 -83l83 83q19 19 45 19t45 -19l83 -83l83 83q19 19 45 19t45 -19l83 -83l83 83q19 19 45 19t45 -19l83 -83l83 83q19 19 45 19t45 -19l83 -83l83 83q19 19 45 19t45 -19l83 -83l83 83 +q19 19 45 19t45 -19l83 -83zM237 19q-19 -19 -45 -19t-45 19l-128 128l90 90l83 -82l83 82q19 19 45 19t45 -19l83 -82l64 64v293l-210 314q-17 26 -7 56.5t40 40.5l177 58v299h128v128h256v128h256v-128h256v-128h128v-299l177 -58q30 -10 40 -40.5t-7 -56.5l-210 -314 +v-293l19 18q19 19 45 19t45 -19l83 -82l83 82q19 19 45 19t45 -19l128 -128l-90 -90l-83 83l-83 -83q-18 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-83 83l-83 -83 +q-19 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-83 83zM640 1152v-128l384 128l384 -128v128h-128v128h-512v-128h-128z" /> + <glyph glyph-name="_506" unicode="" +d="M576 0l96 448l-96 128l-128 64zM832 0l128 640l-128 -64l-96 -128zM992 1010q-2 4 -4 6q-10 8 -96 8q-70 0 -167 -19q-7 -2 -21 -2t-21 2q-97 19 -167 19q-86 0 -96 -8q-2 -2 -4 -6q2 -18 4 -27q2 -3 7.5 -6.5t7.5 -10.5q2 -4 7.5 -20.5t7 -20.5t7.5 -17t8.5 -17t9 -14 +t12 -13.5t14 -9.5t17.5 -8t20.5 -4t24.5 -2q36 0 59 12.5t32.5 30t14.5 34.5t11.5 29.5t17.5 12.5h12q11 0 17.5 -12.5t11.5 -29.5t14.5 -34.5t32.5 -30t59 -12.5q13 0 24.5 2t20.5 4t17.5 8t14 9.5t12 13.5t9 14t8.5 17t7.5 17t7 20.5t7.5 20.5q2 7 7.5 10.5t7.5 6.5 +q2 9 4 27zM1408 131q0 -121 -73 -190t-194 -69h-874q-121 0 -194 69t-73 190q0 61 4.5 118t19 125.5t37.5 123.5t63.5 103.5t93.5 74.5l-90 220h214q-22 64 -22 128q0 12 2 32q-194 40 -194 96q0 57 210 99q17 62 51.5 134t70.5 114q32 37 76 37q30 0 84 -31t84 -31t84 31 +t84 31q44 0 76 -37q36 -42 70.5 -114t51.5 -134q210 -42 210 -99q0 -56 -194 -96q7 -81 -20 -160h214l-82 -225q63 -33 107.5 -96.5t65.5 -143.5t29 -151.5t8 -148.5z" /> + <glyph glyph-name="_507" unicode="" horiz-adv-x="2304" +d="M2301 500q12 -103 -22 -198.5t-99 -163.5t-158.5 -106t-196.5 -31q-161 11 -279.5 125t-134.5 274q-12 111 27.5 210.5t118.5 170.5l-71 107q-96 -80 -151 -194t-55 -244q0 -27 -18.5 -46.5t-45.5 -19.5h-256h-69q-23 -164 -149 -274t-294 -110q-185 0 -316.5 131.5 +t-131.5 316.5t131.5 316.5t316.5 131.5q76 0 152 -27l24 45q-123 110 -304 110h-64q-26 0 -45 19t-19 45t19 45t45 19h128q78 0 145 -13.5t116.5 -38.5t71.5 -39.5t51 -36.5h512h115l-85 128h-222q-30 0 -49 22.5t-14 52.5q4 23 23 38t43 15h253q33 0 53 -28l70 -105 +l114 114q19 19 46 19h101q26 0 45 -19t19 -45v-128q0 -26 -19 -45t-45 -19h-179l115 -172q131 63 275 36q143 -26 244 -134.5t118 -253.5zM448 128q115 0 203 72.5t111 183.5h-314q-35 0 -55 31q-18 32 -1 63l147 277q-47 13 -91 13q-132 0 -226 -94t-94 -226t94 -226 +t226 -94zM1856 128q132 0 226 94t94 226t-94 226t-226 94q-60 0 -121 -24l174 -260q15 -23 10 -49t-27 -40q-15 -11 -36 -11q-35 0 -53 29l-174 260q-93 -95 -93 -225q0 -132 94 -226t226 -94z" /> + <glyph glyph-name="_508" unicode="" +d="M1408 0q0 -63 -61.5 -113.5t-164 -81t-225 -46t-253.5 -15.5t-253.5 15.5t-225 46t-164 81t-61.5 113.5q0 49 33 88.5t91 66.5t118 44.5t131 29.5q26 5 48 -10.5t26 -41.5q5 -26 -10.5 -48t-41.5 -26q-58 -10 -106 -23.5t-76.5 -25.5t-48.5 -23.5t-27.5 -19.5t-8.5 -12 +q3 -11 27 -26.5t73 -33t114 -32.5t160.5 -25t201.5 -10t201.5 10t160.5 25t114 33t73 33.5t27 27.5q-1 4 -8.5 11t-27.5 19t-48.5 23.5t-76.5 25t-106 23.5q-26 4 -41.5 26t-10.5 48q4 26 26 41.5t48 10.5q71 -12 131 -29.5t118 -44.5t91 -66.5t33 -88.5zM1024 896v-384 +q0 -26 -19 -45t-45 -19h-64v-384q0 -26 -19 -45t-45 -19h-256q-26 0 -45 19t-19 45v384h-64q-26 0 -45 19t-19 45v384q0 53 37.5 90.5t90.5 37.5h384q53 0 90.5 -37.5t37.5 -90.5zM928 1280q0 -93 -65.5 -158.5t-158.5 -65.5t-158.5 65.5t-65.5 158.5t65.5 158.5t158.5 65.5 +t158.5 -65.5t65.5 -158.5z" /> + <glyph glyph-name="_509" unicode="" horiz-adv-x="1792" +d="M1280 512h305q-5 -6 -10 -10.5t-9 -7.5l-3 -4l-623 -600q-18 -18 -44 -18t-44 18l-624 602q-5 2 -21 20h369q22 0 39.5 13.5t22.5 34.5l70 281l190 -667q6 -20 23 -33t39 -13q21 0 38 13t23 33l146 485l56 -112q18 -35 57 -35zM1792 940q0 -145 -103 -300h-369l-111 221 +q-8 17 -25.5 27t-36.5 8q-45 -5 -56 -46l-129 -430l-196 686q-6 20 -23.5 33t-39.5 13t-39 -13.5t-22 -34.5l-116 -464h-423q-103 155 -103 300q0 220 127 344t351 124q62 0 126.5 -21.5t120 -58t95.5 -68.5t76 -68q36 36 76 68t95.5 68.5t120 58t126.5 21.5q224 0 351 -124 +t127 -344z" /> + <glyph glyph-name="venus" unicode="" horiz-adv-x="1280" +d="M1152 960q0 -221 -147.5 -384.5t-364.5 -187.5v-260h224q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-224v-224q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v224h-224q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h224v260q-150 16 -271.5 103t-186 224t-52.5 292 +q11 134 80.5 249t182 188t245.5 88q170 19 319 -54t236 -212t87 -306zM128 960q0 -185 131.5 -316.5t316.5 -131.5t316.5 131.5t131.5 316.5t-131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5z" /> + <glyph glyph-name="_511" unicode="" +d="M1472 1408q26 0 45 -19t19 -45v-416q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v262l-382 -383q126 -156 126 -359q0 -117 -45.5 -223.5t-123 -184t-184 -123t-223.5 -45.5t-223.5 45.5t-184 123t-123 184t-45.5 223.5t45.5 223.5t123 184t184 123t223.5 45.5 +q203 0 359 -126l382 382h-261q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h416zM576 0q185 0 316.5 131.5t131.5 316.5t-131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" /> + <glyph glyph-name="_512" unicode="" horiz-adv-x="1280" +d="M830 1220q145 -72 233.5 -210.5t88.5 -305.5q0 -221 -147.5 -384.5t-364.5 -187.5v-132h96q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-96v-96q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v96h-96q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96v132q-217 24 -364.5 187.5 +t-147.5 384.5q0 167 88.5 305.5t233.5 210.5q-165 96 -228 273q-6 16 3.5 29.5t26.5 13.5h69q21 0 29 -20q44 -106 140 -171t214 -65t214 65t140 171q8 20 37 20h61q17 0 26.5 -13.5t3.5 -29.5q-63 -177 -228 -273zM576 256q185 0 316.5 131.5t131.5 316.5t-131.5 316.5 +t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" /> + <glyph glyph-name="_513" unicode="" +d="M1024 1504q0 14 9 23t23 9h288q26 0 45 -19t19 -45v-288q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v134l-254 -255q126 -158 126 -359q0 -221 -147.5 -384.5t-364.5 -187.5v-132h96q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-96v-96q0 -14 -9 -23t-23 -9h-64 +q-14 0 -23 9t-9 23v96h-96q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96v132q-149 16 -270.5 103t-186.5 223.5t-53 291.5q16 204 160 353.5t347 172.5q118 14 228 -19t198 -103l255 254h-134q-14 0 -23 9t-9 23v64zM576 256q185 0 316.5 131.5t131.5 316.5t-131.5 316.5 +t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" /> + <glyph glyph-name="_514" unicode="" horiz-adv-x="1792" +d="M1280 1504q0 14 9 23t23 9h288q26 0 45 -19t19 -45v-288q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v134l-254 -255q126 -158 126 -359q0 -221 -147.5 -384.5t-364.5 -187.5v-132h96q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-96v-96q0 -14 -9 -23t-23 -9h-64 +q-14 0 -23 9t-9 23v96h-96q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96v132q-217 24 -364.5 187.5t-147.5 384.5q0 201 126 359l-52 53l-101 -111q-9 -10 -22 -10.5t-23 7.5l-48 44q-10 8 -10.5 21.5t8.5 23.5l105 115l-111 112v-134q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9 +t-9 23v288q0 26 19 45t45 19h288q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-133l106 -107l86 94q9 10 22 10.5t23 -7.5l48 -44q10 -8 10.5 -21.5t-8.5 -23.5l-90 -99l57 -56q158 126 359 126t359 -126l255 254h-134q-14 0 -23 9t-9 23v64zM832 256q185 0 316.5 131.5 +t131.5 316.5t-131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" /> + <glyph glyph-name="_515" unicode="" horiz-adv-x="1792" +d="M1790 1007q12 -155 -52.5 -292t-186 -224t-271.5 -103v-260h224q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-224v-224q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v224h-512v-224q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v224h-224q-14 0 -23 9t-9 23v64q0 14 9 23 +t23 9h224v260q-150 16 -271.5 103t-186 224t-52.5 292q17 206 164.5 356.5t352.5 169.5q206 21 377 -94q171 115 377 94q205 -19 352.5 -169.5t164.5 -356.5zM896 647q128 131 128 313t-128 313q-128 -131 -128 -313t128 -313zM576 512q115 0 218 57q-154 165 -154 391 +q0 224 154 391q-103 57 -218 57q-185 0 -316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5zM1152 128v260q-137 15 -256 94q-119 -79 -256 -94v-260h512zM1216 512q185 0 316.5 131.5t131.5 316.5t-131.5 316.5t-316.5 131.5q-115 0 -218 -57q154 -167 154 -391 +q0 -226 -154 -391q103 -57 218 -57z" /> + <glyph glyph-name="_516" unicode="" horiz-adv-x="1920" +d="M1536 1120q0 14 9 23t23 9h288q26 0 45 -19t19 -45v-288q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v134l-254 -255q76 -95 107.5 -214t9.5 -247q-31 -182 -166 -312t-318 -156q-210 -29 -384.5 80t-241.5 300q-117 6 -221 57.5t-177.5 133t-113.5 192.5t-32 230 +q9 135 78 252t182 191.5t248 89.5q118 14 227.5 -19t198.5 -103l255 254h-134q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h288q26 0 45 -19t19 -45v-288q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v134l-254 -255q59 -74 93 -169q182 -9 328 -124l255 254h-134q-14 0 -23 9 +t-9 23v64zM1024 704q0 20 -4 58q-162 -25 -271 -150t-109 -292q0 -20 4 -58q162 25 271 150t109 292zM128 704q0 -168 111 -294t276 -149q-3 29 -3 59q0 210 135 369.5t338 196.5q-53 120 -163.5 193t-245.5 73q-185 0 -316.5 -131.5t-131.5 -316.5zM1088 -128 +q185 0 316.5 131.5t131.5 316.5q0 168 -111 294t-276 149q3 -28 3 -59q0 -210 -135 -369.5t-338 -196.5q53 -120 163.5 -193t245.5 -73z" /> + <glyph glyph-name="_517" unicode="" horiz-adv-x="2048" +d="M1664 1504q0 14 9 23t23 9h288q26 0 45 -19t19 -45v-288q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v134l-254 -255q76 -95 107.5 -214t9.5 -247q-32 -180 -164.5 -310t-313.5 -157q-223 -34 -409 90q-117 -78 -256 -93v-132h96q14 0 23 -9t9 -23v-64q0 -14 -9 -23 +t-23 -9h-96v-96q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v96h-96q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96v132q-155 17 -279.5 109.5t-187 237.5t-39.5 307q25 187 159.5 322.5t320.5 164.5q224 34 410 -90q146 97 320 97q201 0 359 -126l255 254h-134q-14 0 -23 9 +t-9 23v64zM896 391q128 131 128 313t-128 313q-128 -131 -128 -313t128 -313zM128 704q0 -185 131.5 -316.5t316.5 -131.5q117 0 218 57q-154 167 -154 391t154 391q-101 57 -218 57q-185 0 -316.5 -131.5t-131.5 -316.5zM1216 256q185 0 316.5 131.5t131.5 316.5 +t-131.5 316.5t-316.5 131.5q-117 0 -218 -57q154 -167 154 -391t-154 -391q101 -57 218 -57z" /> + <glyph glyph-name="_518" unicode="" +d="M1472 1408q26 0 45 -19t19 -45v-416q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v262l-213 -214l140 -140q9 -10 9 -23t-9 -22l-46 -46q-9 -9 -22 -9t-23 9l-140 141l-78 -79q126 -156 126 -359q0 -117 -45.5 -223.5t-123 -184t-184 -123t-223.5 -45.5t-223.5 45.5 +t-184 123t-123 184t-45.5 223.5t45.5 223.5t123 184t184 123t223.5 45.5q203 0 359 -126l78 78l-172 172q-9 10 -9 23t9 22l46 46q9 9 22 9t23 -9l172 -172l213 213h-261q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h416zM576 0q185 0 316.5 131.5t131.5 316.5t-131.5 316.5 +t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" /> + <glyph glyph-name="_519" unicode="" horiz-adv-x="1280" +d="M640 892q217 -24 364.5 -187.5t147.5 -384.5q0 -167 -87 -306t-236 -212t-319 -54q-133 15 -245.5 88t-182 188t-80.5 249q-12 155 52.5 292t186 224t271.5 103v132h-160q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h160v165l-92 -92q-10 -9 -23 -9t-22 9l-46 46q-9 9 -9 22 +t9 23l202 201q19 19 45 19t45 -19l202 -201q9 -10 9 -23t-9 -22l-46 -46q-9 -9 -22 -9t-23 9l-92 92v-165h160q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-160v-132zM576 -128q185 0 316.5 131.5t131.5 316.5t-131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5 +t131.5 -316.5t316.5 -131.5z" /> + <glyph glyph-name="_520" unicode="" horiz-adv-x="2048" +d="M1901 621q19 -19 19 -45t-19 -45l-294 -294q-9 -10 -22.5 -10t-22.5 10l-45 45q-10 9 -10 22.5t10 22.5l185 185h-294v-224q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v224h-132q-24 -217 -187.5 -364.5t-384.5 -147.5q-167 0 -306 87t-212 236t-54 319q15 133 88 245.5 +t188 182t249 80.5q155 12 292 -52.5t224 -186t103 -271.5h132v224q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-224h294l-185 185q-10 9 -10 22.5t10 22.5l45 45q9 10 22.5 10t22.5 -10zM576 128q185 0 316.5 131.5t131.5 316.5t-131.5 316.5t-316.5 131.5t-316.5 -131.5 +t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" /> + <glyph glyph-name="_521" unicode="" horiz-adv-x="1280" +d="M1152 960q0 -221 -147.5 -384.5t-364.5 -187.5v-612q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v612q-217 24 -364.5 187.5t-147.5 384.5q0 117 45.5 223.5t123 184t184 123t223.5 45.5t223.5 -45.5t184 -123t123 -184t45.5 -223.5zM576 512q185 0 316.5 131.5 +t131.5 316.5t-131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" /> + <glyph glyph-name="_522" unicode="" horiz-adv-x="1280" +d="M1024 576q0 185 -131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5t316.5 131.5t131.5 316.5zM1152 576q0 -117 -45.5 -223.5t-123 -184t-184 -123t-223.5 -45.5t-223.5 45.5t-184 123t-123 184t-45.5 223.5t45.5 223.5t123 184t184 123 +t223.5 45.5t223.5 -45.5t184 -123t123 -184t45.5 -223.5z" /> + <glyph glyph-name="_523" unicode="" horiz-adv-x="1792" + /> + <glyph glyph-name="_524" unicode="" horiz-adv-x="1792" + /> + <glyph glyph-name="_525" unicode="" +d="M1451 1408q35 0 60 -25t25 -60v-1366q0 -35 -25 -60t-60 -25h-391v595h199l30 232h-229v148q0 56 23.5 84t91.5 28l122 1v207q-63 9 -178 9q-136 0 -217.5 -80t-81.5 -226v-171h-200v-232h200v-595h-735q-35 0 -60 25t-25 60v1366q0 35 25 60t60 25h1366z" /> + <glyph glyph-name="_526" unicode="" horiz-adv-x="1280" +d="M0 939q0 108 37.5 203.5t103.5 166.5t152 123t185 78t202 26q158 0 294 -66.5t221 -193.5t85 -287q0 -96 -19 -188t-60 -177t-100 -149.5t-145 -103t-189 -38.5q-68 0 -135 32t-96 88q-10 -39 -28 -112.5t-23.5 -95t-20.5 -71t-26 -71t-32 -62.5t-46 -77.5t-62 -86.5 +l-14 -5l-9 10q-15 157 -15 188q0 92 21.5 206.5t66.5 287.5t52 203q-32 65 -32 169q0 83 52 156t132 73q61 0 95 -40.5t34 -102.5q0 -66 -44 -191t-44 -187q0 -63 45 -104.5t109 -41.5q55 0 102 25t78.5 68t56 95t38 110.5t20 111t6.5 99.5q0 173 -109.5 269.5t-285.5 96.5 +q-200 0 -334 -129.5t-134 -328.5q0 -44 12.5 -85t27 -65t27 -45.5t12.5 -30.5q0 -28 -15 -73t-37 -45q-2 0 -17 3q-51 15 -90.5 56t-61 94.5t-32.5 108t-11 106.5z" /> + <glyph glyph-name="_527" unicode="" +d="M985 562q13 0 97.5 -44t89.5 -53q2 -5 2 -15q0 -33 -17 -76q-16 -39 -71 -65.5t-102 -26.5q-57 0 -190 62q-98 45 -170 118t-148 185q-72 107 -71 194v8q3 91 74 158q24 22 52 22q6 0 18 -1.5t19 -1.5q19 0 26.5 -6.5t15.5 -27.5q8 -20 33 -88t25 -75q0 -21 -34.5 -57.5 +t-34.5 -46.5q0 -7 5 -15q34 -73 102 -137q56 -53 151 -101q12 -7 22 -7q15 0 54 48.5t52 48.5zM782 32q127 0 243.5 50t200.5 134t134 200.5t50 243.5t-50 243.5t-134 200.5t-200.5 134t-243.5 50t-243.5 -50t-200.5 -134t-134 -200.5t-50 -243.5q0 -203 120 -368l-79 -233 +l242 77q158 -104 345 -104zM782 1414q153 0 292.5 -60t240.5 -161t161 -240.5t60 -292.5t-60 -292.5t-161 -240.5t-240.5 -161t-292.5 -60q-195 0 -365 94l-417 -134l136 405q-108 178 -108 389q0 153 60 292.5t161 240.5t240.5 161t292.5 60z" /> + <glyph glyph-name="_528" unicode="" horiz-adv-x="1792" +d="M128 128h1024v128h-1024v-128zM128 640h1024v128h-1024v-128zM1696 192q0 40 -28 68t-68 28t-68 -28t-28 -68t28 -68t68 -28t68 28t28 68zM128 1152h1024v128h-1024v-128zM1696 704q0 40 -28 68t-68 28t-68 -28t-28 -68t28 -68t68 -28t68 28t28 68zM1696 1216 +q0 40 -28 68t-68 28t-68 -28t-28 -68t28 -68t68 -28t68 28t28 68zM1792 384v-384h-1792v384h1792zM1792 896v-384h-1792v384h1792zM1792 1408v-384h-1792v384h1792z" /> + <glyph glyph-name="_529" unicode="" horiz-adv-x="2048" +d="M704 640q-159 0 -271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5t271.5 -112.5t112.5 -271.5t-112.5 -271.5t-271.5 -112.5zM1664 512h352q13 0 22.5 -9.5t9.5 -22.5v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-352v-352q0 -13 -9.5 -22.5t-22.5 -9.5h-192q-13 0 -22.5 9.5 +t-9.5 22.5v352h-352q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h352v352q0 13 9.5 22.5t22.5 9.5h192q13 0 22.5 -9.5t9.5 -22.5v-352zM928 288q0 -52 38 -90t90 -38h256v-238q-68 -50 -171 -50h-874q-121 0 -194 69t-73 190q0 53 3.5 103.5t14 109t26.5 108.5 +t43 97.5t62 81t85.5 53.5t111.5 20q19 0 39 -17q79 -61 154.5 -91.5t164.5 -30.5t164.5 30.5t154.5 91.5q20 17 39 17q132 0 217 -96h-223q-52 0 -90 -38t-38 -90v-192z" /> + <glyph glyph-name="_530" unicode="" horiz-adv-x="2048" +d="M704 640q-159 0 -271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5t271.5 -112.5t112.5 -271.5t-112.5 -271.5t-271.5 -112.5zM1781 320l249 -249q9 -9 9 -23q0 -13 -9 -22l-136 -136q-9 -9 -22 -9q-14 0 -23 9l-249 249l-249 -249q-9 -9 -23 -9q-13 0 -22 9l-136 136 +q-9 9 -9 22q0 14 9 23l249 249l-249 249q-9 9 -9 23q0 13 9 22l136 136q9 9 22 9q14 0 23 -9l249 -249l249 249q9 9 23 9q13 0 22 -9l136 -136q9 -9 9 -22q0 -14 -9 -23zM1283 320l-181 -181q-37 -37 -37 -91q0 -53 37 -90l83 -83q-21 -3 -44 -3h-874q-121 0 -194 69 +t-73 190q0 53 3.5 103.5t14 109t26.5 108.5t43 97.5t62 81t85.5 53.5t111.5 20q19 0 39 -17q154 -122 319 -122t319 122q20 17 39 17q28 0 57 -6q-28 -27 -41 -50t-13 -56q0 -54 37 -91z" /> + <glyph glyph-name="_531" unicode="" horiz-adv-x="2048" +d="M256 512h1728q26 0 45 -19t19 -45v-448h-256v256h-1536v-256h-256v1216q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-704zM832 832q0 106 -75 181t-181 75t-181 -75t-75 -181t75 -181t181 -75t181 75t75 181zM2048 576v64q0 159 -112.5 271.5t-271.5 112.5h-704 +q-26 0 -45 -19t-19 -45v-384h1152z" /> + <glyph glyph-name="_532" unicode="" +d="M1536 1536l-192 -448h192v-192h-274l-55 -128h329v-192h-411l-357 -832l-357 832h-411v192h329l-55 128h-274v192h192l-192 448h256l323 -768h378l323 768h256zM768 320l108 256h-216z" /> + <glyph glyph-name="_533" unicode="" +d="M1088 1536q185 0 316.5 -93.5t131.5 -226.5v-896q0 -130 -125.5 -222t-305.5 -97l213 -202q16 -15 8 -35t-30 -20h-1056q-22 0 -30 20t8 35l213 202q-180 5 -305.5 97t-125.5 222v896q0 133 131.5 226.5t316.5 93.5h640zM768 192q80 0 136 56t56 136t-56 136t-136 56 +t-136 -56t-56 -136t56 -136t136 -56zM1344 768v512h-1152v-512h1152z" /> + <glyph glyph-name="_534" unicode="" +d="M1088 1536q185 0 316.5 -93.5t131.5 -226.5v-896q0 -130 -125.5 -222t-305.5 -97l213 -202q16 -15 8 -35t-30 -20h-1056q-22 0 -30 20t8 35l213 202q-180 5 -305.5 97t-125.5 222v896q0 133 131.5 226.5t316.5 93.5h640zM288 224q66 0 113 47t47 113t-47 113t-113 47 +t-113 -47t-47 -113t47 -113t113 -47zM704 768v512h-544v-512h544zM1248 224q66 0 113 47t47 113t-47 113t-113 47t-113 -47t-47 -113t47 -113t113 -47zM1408 768v512h-576v-512h576z" /> + <glyph glyph-name="_535" unicode="" horiz-adv-x="1792" +d="M597 1115v-1173q0 -25 -12.5 -42.5t-36.5 -17.5q-17 0 -33 8l-465 233q-21 10 -35.5 33.5t-14.5 46.5v1140q0 20 10 34t29 14q14 0 44 -15l511 -256q3 -3 3 -5zM661 1014l534 -866l-534 266v600zM1792 996v-1054q0 -25 -14 -40.5t-38 -15.5t-47 13l-441 220zM1789 1116 +q0 -3 -256.5 -419.5t-300.5 -487.5l-390 634l324 527q17 28 52 28q14 0 26 -6l541 -270q4 -2 4 -6z" /> + <glyph glyph-name="_536" unicode="" +d="M809 532l266 499h-112l-157 -312q-24 -48 -44 -92l-42 92l-155 312h-120l263 -493v-324h101v318zM1536 1408v-1536h-1536v1536h1536z" /> + <glyph glyph-name="_537" unicode="" horiz-adv-x="2296" +d="M478 -139q-8 -16 -27 -34.5t-37 -25.5q-25 -9 -51.5 3.5t-28.5 31.5q-1 22 40 55t68 38q23 4 34 -21.5t2 -46.5zM1819 -139q7 -16 26 -34.5t38 -25.5q25 -9 51.5 3.5t27.5 31.5q2 22 -39.5 55t-68.5 38q-22 4 -33 -21.5t-2 -46.5zM1867 -30q13 -27 56.5 -59.5t77.5 -41.5 +q45 -13 82 4.5t37 50.5q0 46 -67.5 100.5t-115.5 59.5q-40 5 -63.5 -37.5t-6.5 -76.5zM428 -30q-13 -27 -56 -59.5t-77 -41.5q-45 -13 -82 4.5t-37 50.5q0 46 67.5 100.5t115.5 59.5q40 5 63 -37.5t6 -76.5zM1158 1094h1q-41 0 -76 -15q27 -8 44 -30.5t17 -49.5 +q0 -35 -27 -60t-65 -25q-52 0 -80 43q-5 -23 -5 -42q0 -74 56 -126.5t135 -52.5q80 0 136 52.5t56 126.5t-56 126.5t-136 52.5zM1462 1312q-99 109 -220.5 131.5t-245.5 -44.5q27 60 82.5 96.5t118 39.5t121.5 -17t99.5 -74.5t44.5 -131.5zM2212 73q8 -11 -11 -42 +q7 -23 7 -40q1 -56 -44.5 -112.5t-109.5 -91.5t-118 -37q-48 -2 -92 21.5t-66 65.5q-687 -25 -1259 0q-23 -41 -66.5 -65t-92.5 -22q-86 3 -179.5 80.5t-92.5 160.5q2 22 7 40q-19 31 -11 42q6 10 31 1q14 22 41 51q-7 29 2 38q11 10 39 -4q29 20 59 34q0 29 13 37 +q23 12 51 -16q35 5 61 -2q18 -4 38 -19v73q-11 0 -18 2q-53 10 -97 44.5t-55 87.5q-9 38 0 81q15 62 93 95q2 17 19 35.5t36 23.5t33 -7.5t19 -30.5h13q46 -5 60 -23q3 -3 5 -7q10 1 30.5 3.5t30.5 3.5q-15 11 -30 17q-23 40 -91 43q0 6 1 10q-62 2 -118.5 18.5t-84.5 47.5 +q-32 36 -42.5 92t-2.5 112q16 126 90 179q23 16 52 4.5t32 -40.5q0 -1 1.5 -14t2.5 -21t3 -20t5.5 -19t8.5 -10q27 -14 76 -12q48 46 98 74q-40 4 -162 -14l47 46q61 58 163 111q145 73 282 86q-20 8 -41 15.5t-47 14t-42.5 10.5t-47.5 11t-43 10q595 126 904 -139 +q98 -84 158 -222q85 -10 121 9h1q5 3 8.5 10t5.5 19t3 19.5t3 21.5l1 14q3 28 32 40t52 -5q73 -52 91 -178q7 -57 -3.5 -113t-42.5 -91q-28 -32 -83.5 -48.5t-115.5 -18.5v-10q-71 -2 -95 -43q-14 -5 -31 -17q11 -1 32 -3.5t30 -3.5q1 5 5 8q16 18 60 23h13q5 18 19 30t33 8 +t36 -23t19 -36q79 -32 93 -95q9 -40 1 -81q-12 -53 -56 -88t-97 -44q-10 -2 -17 -2q0 -49 -1 -73q20 15 38 19q26 7 61 2q28 28 51 16q14 -9 14 -37q33 -16 59 -34q27 13 38 4q10 -10 2 -38q28 -30 41 -51q23 8 31 -1zM1937 1025q0 -29 -9 -54q82 -32 112 -132 +q4 37 -9.5 98.5t-41.5 90.5q-20 19 -36 17t-16 -20zM1859 925q35 -42 47.5 -108.5t-0.5 -124.5q67 13 97 45q13 14 18 28q-3 64 -31 114.5t-79 66.5q-15 -15 -52 -21zM1822 921q-30 0 -44 1q42 -115 53 -239q21 0 43 3q16 68 1 135t-53 100zM258 839q30 100 112 132 +q-9 25 -9 54q0 18 -16.5 20t-35.5 -17q-28 -29 -41.5 -90.5t-9.5 -98.5zM294 737q29 -31 97 -45q-13 58 -0.5 124.5t47.5 108.5v0q-37 6 -52 21q-51 -16 -78.5 -66t-31.5 -115q9 -17 18 -28zM471 683q14 124 73 235q-19 -4 -55 -18l-45 -19v1q-46 -89 -20 -196q25 -3 47 -3z +M1434 644q8 -38 16.5 -108.5t11.5 -89.5q3 -18 9.5 -21.5t23.5 4.5q40 20 62 85.5t23 125.5q-24 2 -146 4zM1152 1285q-116 0 -199 -82.5t-83 -198.5q0 -117 83 -199.5t199 -82.5t199 82.5t83 199.5q0 116 -83 198.5t-199 82.5zM1380 646q-105 2 -211 0v1q-1 -27 2.5 -86 +t13.5 -66q29 -14 93.5 -14.5t95.5 10.5q9 3 11 39t-0.5 69.5t-4.5 46.5zM1112 447q8 4 9.5 48t-0.5 88t-4 63v1q-212 -3 -214 -3q-4 -20 -7 -62t0 -83t14 -46q34 -15 101 -16t101 10zM718 636q-16 -59 4.5 -118.5t77.5 -84.5q15 -8 24 -5t12 21q3 16 8 90t10 103 +q-69 -2 -136 -6zM591 510q3 -23 -34 -36q132 -141 271.5 -240t305.5 -154q172 49 310.5 146t293.5 250q-33 13 -30 34q0 2 0.5 3.5t1.5 3t1 2.5v1v-1q-17 2 -50 5.5t-48 4.5q-26 -90 -82 -132q-51 -38 -82 1q-5 6 -9 14q-7 13 -17 62q-2 -5 -5 -9t-7.5 -7t-8 -5.5t-9.5 -4 +l-10 -2.5t-12 -2l-12 -1.5t-13.5 -1t-13.5 -0.5q-106 -9 -163 11q-4 -17 -10 -26.5t-21 -15t-23 -7t-36 -3.5q-6 -1 -9 -1q-179 -17 -203 40q-2 -63 -56 -54q-47 8 -91 54q-12 13 -20 26q-17 29 -26 65q-58 -6 -87 -10q1 -2 4 -10zM507 -118q3 14 3 30q-17 71 -51 130 +t-73 70q-41 12 -101.5 -14.5t-104.5 -80t-39 -107.5q35 -53 100 -93t119 -42q51 -2 94 28t53 79zM510 53q23 -63 27 -119q195 113 392 174q-98 52 -180.5 120t-179.5 165q-6 -4 -29 -13q0 -1 -1 -4t-1 -5q31 -18 22 -37q-12 -23 -56 -34q-10 -13 -29 -24h-1q-2 -83 1 -150 +q19 -34 35 -73zM579 -113q532 -21 1145 0q-254 147 -428 196q-76 -35 -156 -57q-8 -3 -16 0q-65 21 -129 49q-208 -60 -416 -188h-1v-1q1 0 1 1zM1763 -67q4 54 28 120q14 38 33 71l-1 -1q3 77 3 153q-15 8 -30 25q-42 9 -56 33q-9 20 22 38q-2 4 -2 9q-16 4 -28 12 +q-204 -190 -383 -284q198 -59 414 -176zM2155 -90q5 54 -39 107.5t-104 80t-102 14.5q-38 -11 -72.5 -70.5t-51.5 -129.5q0 -16 3 -30q10 -49 53 -79t94 -28q54 2 119 42t100 93z" /> + <glyph glyph-name="_538" unicode="" horiz-adv-x="2304" +d="M1524 -25q0 -68 -48 -116t-116 -48t-116.5 48t-48.5 116t48.5 116.5t116.5 48.5t116 -48.5t48 -116.5zM775 -25q0 -68 -48.5 -116t-116.5 -48t-116 48t-48 116t48 116.5t116 48.5t116.5 -48.5t48.5 -116.5zM0 1469q57 -60 110.5 -104.5t121 -82t136 -63t166 -45.5 +t200 -31.5t250 -18.5t304 -9.5t372.5 -2.5q139 0 244.5 -5t181 -16.5t124 -27.5t71 -39.5t24 -51.5t-19.5 -64t-56.5 -76.5t-89.5 -91t-116 -104.5t-139 -119q-185 -157 -286 -247q29 51 76.5 109t94 105.5t94.5 98.5t83 91.5t54 80.5t13 70t-45.5 55.5t-116.5 41t-204 23.5 +t-304 5q-168 -2 -314 6t-256 23t-204.5 41t-159.5 51.5t-122.5 62.5t-91.5 66.5t-68 71.5t-50.5 69.5t-40 68t-36.5 59.5z" /> + <glyph glyph-name="_539" unicode="" horiz-adv-x="1792" +d="M896 1472q-169 0 -323 -66t-265.5 -177.5t-177.5 -265.5t-66 -323t66 -323t177.5 -265.5t265.5 -177.5t323 -66t323 66t265.5 177.5t177.5 265.5t66 323t-66 323t-177.5 265.5t-265.5 177.5t-323 66zM896 1536q182 0 348 -71t286 -191t191 -286t71 -348t-71 -348 +t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71zM496 704q16 0 16 -16v-480q0 -16 -16 -16h-32q-16 0 -16 16v480q0 16 16 16h32zM896 640q53 0 90.5 -37.5t37.5 -90.5q0 -35 -17.5 -64t-46.5 -46v-114q0 -14 -9 -23 +t-23 -9h-64q-14 0 -23 9t-9 23v114q-29 17 -46.5 46t-17.5 64q0 53 37.5 90.5t90.5 37.5zM896 1408q209 0 385.5 -103t279.5 -279.5t103 -385.5t-103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103zM544 928v-96 +q0 -14 9 -23t23 -9h64q14 0 23 9t9 23v96q0 93 65.5 158.5t158.5 65.5t158.5 -65.5t65.5 -158.5v-96q0 -14 9 -23t23 -9h64q14 0 23 9t9 23v96q0 146 -103 249t-249 103t-249 -103t-103 -249zM1408 192v512q0 26 -19 45t-45 19h-896q-26 0 -45 -19t-19 -45v-512 +q0 -26 19 -45t45 -19h896q26 0 45 19t19 45z" /> + <glyph glyph-name="_540" unicode="" horiz-adv-x="2304" +d="M1920 1024v-768h-1664v768h1664zM2048 448h128v384h-128v288q0 14 -9 23t-23 9h-1856q-14 0 -23 -9t-9 -23v-960q0 -14 9 -23t23 -9h1856q14 0 23 9t9 23v288zM2304 832v-384q0 -53 -37.5 -90.5t-90.5 -37.5v-160q0 -66 -47 -113t-113 -47h-1856q-66 0 -113 47t-47 113 +v960q0 66 47 113t113 47h1856q66 0 113 -47t47 -113v-160q53 0 90.5 -37.5t37.5 -90.5z" /> + <glyph glyph-name="_541" unicode="" horiz-adv-x="2304" +d="M256 256v768h1280v-768h-1280zM2176 960q53 0 90.5 -37.5t37.5 -90.5v-384q0 -53 -37.5 -90.5t-90.5 -37.5v-160q0 -66 -47 -113t-113 -47h-1856q-66 0 -113 47t-47 113v960q0 66 47 113t113 47h1856q66 0 113 -47t47 -113v-160zM2176 448v384h-128v288q0 14 -9 23t-23 9 +h-1856q-14 0 -23 -9t-9 -23v-960q0 -14 9 -23t23 -9h1856q14 0 23 9t9 23v288h128z" /> + <glyph glyph-name="_542" unicode="" horiz-adv-x="2304" +d="M256 256v768h896v-768h-896zM2176 960q53 0 90.5 -37.5t37.5 -90.5v-384q0 -53 -37.5 -90.5t-90.5 -37.5v-160q0 -66 -47 -113t-113 -47h-1856q-66 0 -113 47t-47 113v960q0 66 47 113t113 47h1856q66 0 113 -47t47 -113v-160zM2176 448v384h-128v288q0 14 -9 23t-23 9 +h-1856q-14 0 -23 -9t-9 -23v-960q0 -14 9 -23t23 -9h1856q14 0 23 9t9 23v288h128z" /> + <glyph glyph-name="_543" unicode="" horiz-adv-x="2304" +d="M256 256v768h512v-768h-512zM2176 960q53 0 90.5 -37.5t37.5 -90.5v-384q0 -53 -37.5 -90.5t-90.5 -37.5v-160q0 -66 -47 -113t-113 -47h-1856q-66 0 -113 47t-47 113v960q0 66 47 113t113 47h1856q66 0 113 -47t47 -113v-160zM2176 448v384h-128v288q0 14 -9 23t-23 9 +h-1856q-14 0 -23 -9t-9 -23v-960q0 -14 9 -23t23 -9h1856q14 0 23 9t9 23v288h128z" /> + <glyph glyph-name="_544" unicode="" horiz-adv-x="2304" +d="M2176 960q53 0 90.5 -37.5t37.5 -90.5v-384q0 -53 -37.5 -90.5t-90.5 -37.5v-160q0 -66 -47 -113t-113 -47h-1856q-66 0 -113 47t-47 113v960q0 66 47 113t113 47h1856q66 0 113 -47t47 -113v-160zM2176 448v384h-128v288q0 14 -9 23t-23 9h-1856q-14 0 -23 -9t-9 -23 +v-960q0 -14 9 -23t23 -9h1856q14 0 23 9t9 23v288h128z" /> + <glyph glyph-name="_545" unicode="" horiz-adv-x="1280" +d="M1133 493q31 -30 14 -69q-17 -40 -59 -40h-382l201 -476q10 -25 0 -49t-34 -35l-177 -75q-25 -10 -49 0t-35 34l-191 452l-312 -312q-19 -19 -45 -19q-12 0 -24 5q-40 17 -40 59v1504q0 42 40 59q12 5 24 5q27 0 45 -19z" /> + <glyph glyph-name="_546" unicode="" horiz-adv-x="1024" +d="M832 1408q-320 0 -320 -224v-416h128v-128h-128v-544q0 -224 320 -224h64v-128h-64q-272 0 -384 146q-112 -146 -384 -146h-64v128h64q320 0 320 224v544h-128v128h128v416q0 224 -320 224h-64v128h64q272 0 384 -146q112 146 384 146h64v-128h-64z" /> + <glyph glyph-name="_547" unicode="" horiz-adv-x="2048" +d="M2048 1152h-128v-1024h128v-384h-384v128h-1280v-128h-384v384h128v1024h-128v384h384v-128h1280v128h384v-384zM1792 1408v-128h128v128h-128zM128 1408v-128h128v128h-128zM256 -128v128h-128v-128h128zM1664 0v128h128v1024h-128v128h-1280v-128h-128v-1024h128v-128 +h1280zM1920 -128v128h-128v-128h128zM1280 896h384v-768h-896v256h-384v768h896v-256zM512 512h640v512h-640v-512zM1536 256v512h-256v-384h-384v-128h640z" /> + <glyph glyph-name="_548" unicode="" horiz-adv-x="2304" +d="M2304 768h-128v-640h128v-384h-384v128h-896v-128h-384v384h128v128h-384v-128h-384v384h128v640h-128v384h384v-128h896v128h384v-384h-128v-128h384v128h384v-384zM2048 1024v-128h128v128h-128zM1408 1408v-128h128v128h-128zM128 1408v-128h128v128h-128zM256 256 +v128h-128v-128h128zM1536 384h-128v-128h128v128zM384 384h896v128h128v640h-128v128h-896v-128h-128v-640h128v-128zM896 -128v128h-128v-128h128zM2176 -128v128h-128v-128h128zM2048 128v640h-128v128h-384v-384h128v-384h-384v128h-384v-128h128v-128h896v128h128z" /> + <glyph glyph-name="_549" unicode="" +d="M1024 288v-416h-928q-40 0 -68 28t-28 68v1344q0 40 28 68t68 28h1344q40 0 68 -28t28 -68v-928h-416q-40 0 -68 -28t-28 -68zM1152 256h381q-15 -82 -65 -132l-184 -184q-50 -50 -132 -65v381z" /> + <glyph glyph-name="_550" unicode="" +d="M1400 256h-248v-248q29 10 41 22l185 185q12 12 22 41zM1120 384h288v896h-1280v-1280h896v288q0 40 28 68t68 28zM1536 1312v-1024q0 -40 -20 -88t-48 -76l-184 -184q-28 -28 -76 -48t-88 -20h-1024q-40 0 -68 28t-28 68v1344q0 40 28 68t68 28h1344q40 0 68 -28t28 -68 +z" /> + <glyph glyph-name="_551" unicode="" horiz-adv-x="2304" +d="M1951 538q0 -26 -15.5 -44.5t-38.5 -23.5q-8 -2 -18 -2h-153v140h153q10 0 18 -2q23 -5 38.5 -23.5t15.5 -44.5zM1933 751q0 -25 -15 -42t-38 -21q-3 -1 -15 -1h-139v129h139q3 0 8.5 -0.5t6.5 -0.5q23 -4 38 -21.5t15 -42.5zM728 587v308h-228v-308q0 -58 -38 -94.5 +t-105 -36.5q-108 0 -229 59v-112q53 -15 121 -23t109 -9l42 -1q328 0 328 217zM1442 403v113q-99 -52 -200 -59q-108 -8 -169 41t-61 142t61 142t169 41q101 -7 200 -58v112q-48 12 -100 19.5t-80 9.5l-28 2q-127 6 -218.5 -14t-140.5 -60t-71 -88t-22 -106t22 -106t71 -88 +t140.5 -60t218.5 -14q101 4 208 31zM2176 518q0 54 -43 88.5t-109 39.5v3q57 8 89 41.5t32 79.5q0 55 -41 88t-107 36q-3 0 -12 0.5t-14 0.5h-455v-510h491q74 0 121.5 36.5t47.5 96.5zM2304 1280v-1280q0 -52 -38 -90t-90 -38h-2048q-52 0 -90 38t-38 90v1280q0 52 38 90 +t90 38h2048q52 0 90 -38t38 -90z" /> + <glyph glyph-name="_552" unicode="" horiz-adv-x="2304" +d="M858 295v693q-106 -41 -172 -135.5t-66 -211.5t66 -211.5t172 -134.5zM1362 641q0 117 -66 211.5t-172 135.5v-694q106 41 172 135.5t66 211.5zM1577 641q0 -159 -78.5 -294t-213.5 -213.5t-294 -78.5q-119 0 -227.5 46.5t-187 125t-125 187t-46.5 227.5q0 159 78.5 294 +t213.5 213.5t294 78.5t294 -78.5t213.5 -213.5t78.5 -294zM1960 634q0 139 -55.5 261.5t-147.5 205.5t-213.5 131t-252.5 48h-301q-176 0 -323.5 -81t-235 -230t-87.5 -335q0 -171 87 -317.5t236 -231.5t323 -85h301q129 0 251.5 50.5t214.5 135t147.5 202.5t55.5 246z +M2304 1280v-1280q0 -52 -38 -90t-90 -38h-2048q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h2048q52 0 90 -38t38 -90z" /> + <glyph glyph-name="_553" unicode="" horiz-adv-x="1792" +d="M1664 -96v1088q0 13 -9.5 22.5t-22.5 9.5h-1088q-13 0 -22.5 -9.5t-9.5 -22.5v-1088q0 -13 9.5 -22.5t22.5 -9.5h1088q13 0 22.5 9.5t9.5 22.5zM1792 992v-1088q0 -66 -47 -113t-113 -47h-1088q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h1088q66 0 113 -47t47 -113 +zM1408 1376v-160h-128v160q0 13 -9.5 22.5t-22.5 9.5h-1088q-13 0 -22.5 -9.5t-9.5 -22.5v-1088q0 -13 9.5 -22.5t22.5 -9.5h160v-128h-160q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h1088q66 0 113 -47t47 -113z" /> + <glyph glyph-name="_554" unicode="" horiz-adv-x="2304" +d="M1728 1088l-384 -704h768zM448 1088l-384 -704h768zM1269 1280q-14 -40 -45.5 -71.5t-71.5 -45.5v-1291h608q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-1344q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h608v1291q-40 14 -71.5 45.5t-45.5 71.5h-491q-14 0 -23 9t-9 23v64 +q0 14 9 23t23 9h491q21 57 70 92.5t111 35.5t111 -35.5t70 -92.5h491q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-491zM1088 1264q33 0 56.5 23.5t23.5 56.5t-23.5 56.5t-56.5 23.5t-56.5 -23.5t-23.5 -56.5t23.5 -56.5t56.5 -23.5zM2176 384q0 -73 -46.5 -131t-117.5 -91 +t-144.5 -49.5t-139.5 -16.5t-139.5 16.5t-144.5 49.5t-117.5 91t-46.5 131q0 11 35 81t92 174.5t107 195.5t102 184t56 100q18 33 56 33t56 -33q4 -7 56 -100t102 -184t107 -195.5t92 -174.5t35 -81zM896 384q0 -73 -46.5 -131t-117.5 -91t-144.5 -49.5t-139.5 -16.5 +t-139.5 16.5t-144.5 49.5t-117.5 91t-46.5 131q0 11 35 81t92 174.5t107 195.5t102 184t56 100q18 33 56 33t56 -33q4 -7 56 -100t102 -184t107 -195.5t92 -174.5t35 -81z" /> + <glyph glyph-name="_555" unicode="" +d="M1408 1408q0 -261 -106.5 -461.5t-266.5 -306.5q160 -106 266.5 -306.5t106.5 -461.5h96q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-1472q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96q0 261 106.5 461.5t266.5 306.5q-160 106 -266.5 306.5t-106.5 461.5h-96q-14 0 -23 9 +t-9 23v64q0 14 9 23t23 9h1472q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-96zM874 700q77 29 149 92.5t129.5 152.5t92.5 210t35 253h-1024q0 -132 35 -253t92.5 -210t129.5 -152.5t149 -92.5q19 -7 30.5 -23.5t11.5 -36.5t-11.5 -36.5t-30.5 -23.5q-77 -29 -149 -92.5 +t-129.5 -152.5t-92.5 -210t-35 -253h1024q0 132 -35 253t-92.5 210t-129.5 152.5t-149 92.5q-19 7 -30.5 23.5t-11.5 36.5t11.5 36.5t30.5 23.5z" /> + <glyph glyph-name="_556" unicode="" +d="M1408 1408q0 -261 -106.5 -461.5t-266.5 -306.5q160 -106 266.5 -306.5t106.5 -461.5h96q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-1472q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96q0 261 106.5 461.5t266.5 306.5q-160 106 -266.5 306.5t-106.5 461.5h-96q-14 0 -23 9 +t-9 23v64q0 14 9 23t23 9h1472q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-96zM1280 1408h-1024q0 -66 9 -128h1006q9 61 9 128zM1280 -128q0 130 -34 249.5t-90.5 208t-126.5 152t-146 94.5h-230q-76 -31 -146 -94.5t-126.5 -152t-90.5 -208t-34 -249.5h1024z" /> + <glyph glyph-name="_557" unicode="" +d="M1408 1408q0 -261 -106.5 -461.5t-266.5 -306.5q160 -106 266.5 -306.5t106.5 -461.5h96q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-1472q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96q0 261 106.5 461.5t266.5 306.5q-160 106 -266.5 306.5t-106.5 461.5h-96q-14 0 -23 9 +t-9 23v64q0 14 9 23t23 9h1472q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-96zM1280 1408h-1024q0 -206 85 -384h854q85 178 85 384zM1223 192q-54 141 -145.5 241.5t-194.5 142.5h-230q-103 -42 -194.5 -142.5t-145.5 -241.5h910z" /> + <glyph glyph-name="_558" unicode="" +d="M1408 1408q0 -261 -106.5 -461.5t-266.5 -306.5q160 -106 266.5 -306.5t106.5 -461.5h96q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-1472q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96q0 261 106.5 461.5t266.5 306.5q-160 106 -266.5 306.5t-106.5 461.5h-96q-14 0 -23 9 +t-9 23v64q0 14 9 23t23 9h1472q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-96zM874 700q77 29 149 92.5t129.5 152.5t92.5 210t35 253h-1024q0 -132 35 -253t92.5 -210t129.5 -152.5t149 -92.5q19 -7 30.5 -23.5t11.5 -36.5t-11.5 -36.5t-30.5 -23.5q-137 -51 -244 -196 +h700q-107 145 -244 196q-19 7 -30.5 23.5t-11.5 36.5t11.5 36.5t30.5 23.5z" /> + <glyph glyph-name="_559" unicode="" +d="M1504 -64q14 0 23 -9t9 -23v-128q0 -14 -9 -23t-23 -9h-1472q-14 0 -23 9t-9 23v128q0 14 9 23t23 9h1472zM130 0q3 55 16 107t30 95t46 87t53.5 76t64.5 69.5t66 60t70.5 55t66.5 47.5t65 43q-43 28 -65 43t-66.5 47.5t-70.5 55t-66 60t-64.5 69.5t-53.5 76t-46 87 +t-30 95t-16 107h1276q-3 -55 -16 -107t-30 -95t-46 -87t-53.5 -76t-64.5 -69.5t-66 -60t-70.5 -55t-66.5 -47.5t-65 -43q43 -28 65 -43t66.5 -47.5t70.5 -55t66 -60t64.5 -69.5t53.5 -76t46 -87t30 -95t16 -107h-1276zM1504 1536q14 0 23 -9t9 -23v-128q0 -14 -9 -23t-23 -9 +h-1472q-14 0 -23 9t-9 23v128q0 14 9 23t23 9h1472z" /> + <glyph glyph-name="_560" unicode="" +d="M768 1152q-53 0 -90.5 -37.5t-37.5 -90.5v-128h-32v93q0 48 -32 81.5t-80 33.5q-46 0 -79 -33t-33 -79v-429l-32 30v172q0 48 -32 81.5t-80 33.5q-46 0 -79 -33t-33 -79v-224q0 -47 35 -82l310 -296q39 -39 39 -102q0 -26 19 -45t45 -19h640q26 0 45 19t19 45v25 +q0 41 10 77l108 436q10 36 10 77v246q0 48 -32 81.5t-80 33.5q-46 0 -79 -33t-33 -79v-32h-32v125q0 40 -25 72.5t-64 40.5q-14 2 -23 2q-46 0 -79 -33t-33 -79v-128h-32v122q0 51 -32.5 89.5t-82.5 43.5q-5 1 -13 1zM768 1280q84 0 149 -50q57 34 123 34q59 0 111 -27 +t86 -76q27 7 59 7q100 0 170 -71.5t70 -171.5v-246q0 -51 -13 -108l-109 -436q-6 -24 -6 -71q0 -80 -56 -136t-136 -56h-640q-84 0 -138 58.5t-54 142.5l-308 296q-76 73 -76 175v224q0 99 70.5 169.5t169.5 70.5q11 0 16 -1q6 95 75.5 160t164.5 65q52 0 98 -21 +q72 69 174 69z" /> + <glyph glyph-name="_561" unicode="" horiz-adv-x="1792" +d="M880 1408q-46 0 -79 -33t-33 -79v-656h-32v528q0 46 -33 79t-79 33t-79 -33t-33 -79v-528v-256l-154 205q-38 51 -102 51q-53 0 -90.5 -37.5t-37.5 -90.5q0 -43 26 -77l384 -512q38 -51 102 -51h688q34 0 61 22t34 56l76 405q5 32 5 59v498q0 46 -33 79t-79 33t-79 -33 +t-33 -79v-272h-32v528q0 46 -33 79t-79 33t-79 -33t-33 -79v-528h-32v656q0 46 -33 79t-79 33zM880 1536q68 0 125.5 -35.5t88.5 -96.5q19 4 42 4q99 0 169.5 -70.5t70.5 -169.5v-17q105 6 180.5 -64t75.5 -175v-498q0 -40 -8 -83l-76 -404q-14 -79 -76.5 -131t-143.5 -52 +h-688q-60 0 -114.5 27.5t-90.5 74.5l-384 512q-51 68 -51 154q0 106 75 181t181 75q78 0 128 -34v434q0 99 70.5 169.5t169.5 70.5q23 0 42 -4q31 61 88.5 96.5t125.5 35.5z" /> + <glyph glyph-name="_562" unicode="" horiz-adv-x="1792" +d="M1073 -128h-177q-163 0 -226 141q-23 49 -23 102v5q-62 30 -98.5 88.5t-36.5 127.5q0 38 5 48h-261q-106 0 -181 75t-75 181t75 181t181 75h113l-44 17q-74 28 -119.5 93.5t-45.5 145.5q0 106 75 181t181 75q46 0 91 -17l628 -239h401q106 0 181 -75t75 -181v-668 +q0 -88 -54 -157.5t-140 -90.5l-339 -85q-92 -23 -186 -23zM1024 583l-155 -71l-163 -74q-30 -14 -48 -41.5t-18 -60.5q0 -46 33 -79t79 -33q26 0 46 10l338 154q-49 10 -80.5 50t-31.5 90v55zM1344 272q0 46 -33 79t-79 33q-26 0 -46 -10l-290 -132q-28 -13 -37 -17 +t-30.5 -17t-29.5 -23.5t-16 -29t-8 -40.5q0 -50 31.5 -82t81.5 -32q20 0 38 9l352 160q30 14 48 41.5t18 60.5zM1112 1024l-650 248q-24 8 -46 8q-53 0 -90.5 -37.5t-37.5 -90.5q0 -40 22.5 -73t59.5 -47l526 -200v-64h-640q-53 0 -90.5 -37.5t-37.5 -90.5t37.5 -90.5 +t90.5 -37.5h535l233 106v198q0 63 46 106l111 102h-69zM1073 0q82 0 155 19l339 85q43 11 70 45.5t27 78.5v668q0 53 -37.5 90.5t-90.5 37.5h-308l-136 -126q-36 -33 -36 -82v-296q0 -46 33 -77t79 -31t79 35t33 81v208h32v-208q0 -70 -57 -114q52 -8 86.5 -48.5t34.5 -93.5 +q0 -42 -23 -78t-61 -53l-310 -141h91z" /> + <glyph glyph-name="_563" unicode="" horiz-adv-x="2048" +d="M1151 1536q61 0 116 -28t91 -77l572 -781q118 -159 118 -359v-355q0 -80 -56 -136t-136 -56h-384q-80 0 -136 56t-56 136v177l-286 143h-546q-80 0 -136 56t-56 136v32q0 119 84.5 203.5t203.5 84.5h420l42 128h-686q-100 0 -173.5 67.5t-81.5 166.5q-65 79 -65 182v32 +q0 80 56 136t136 56h959zM1920 -64v355q0 157 -93 284l-573 781q-39 52 -103 52h-959q-26 0 -45 -19t-19 -45q0 -32 1.5 -49.5t9.5 -40.5t25 -43q10 31 35.5 50t56.5 19h832v-32h-832q-26 0 -45 -19t-19 -45q0 -44 3 -58q8 -44 44 -73t81 -29h640h91q40 0 68 -28t28 -68 +q0 -15 -5 -30l-64 -192q-10 -29 -35 -47.5t-56 -18.5h-443q-66 0 -113 -47t-47 -113v-32q0 -26 19 -45t45 -19h561q16 0 29 -7l317 -158q24 -13 38.5 -36t14.5 -50v-197q0 -26 19 -45t45 -19h384q26 0 45 19t19 45z" /> + <glyph glyph-name="_564" unicode="" horiz-adv-x="2048" +d="M459 -256q-77 0 -137.5 47.5t-79.5 122.5l-101 401q-13 57 -13 108q0 45 -5 67l-116 477q-7 27 -7 57q0 93 62 161t155 78q17 85 82.5 139t152.5 54q83 0 148 -51.5t85 -132.5l83 -348l103 428q20 81 85 132.5t148 51.5q89 0 155.5 -57.5t80.5 -144.5q92 -10 152 -79 +t60 -162q0 -24 -7 -59l-123 -512q10 7 37.5 28.5t38.5 29.5t35 23t41 20.5t41.5 11t49.5 5.5q105 0 180 -74t75 -179q0 -62 -28.5 -118t-78.5 -94l-507 -380q-68 -51 -153 -51h-694zM1104 1408q-38 0 -68.5 -24t-39.5 -62l-164 -682h-127l-145 602q-9 38 -39.5 62t-68.5 24 +q-48 0 -80 -33t-32 -80q0 -15 3 -28l132 -547h-26l-99 408q-9 37 -40 62.5t-69 25.5q-47 0 -80 -33t-33 -79q0 -14 3 -26l116 -478q7 -28 9 -86t10 -88l100 -401q8 -32 34 -52.5t59 -20.5h694q42 0 76 26l507 379q56 43 56 110q0 52 -37.5 88.5t-89.5 36.5q-43 0 -77 -26 +l-307 -230v227q0 4 32 138t68 282t39 161q4 18 4 29q0 47 -32 81t-79 34q-39 0 -69.5 -24t-39.5 -62l-116 -482h-26l150 624q3 14 3 28q0 48 -31.5 82t-79.5 34z" /> + <glyph glyph-name="_565" unicode="" horiz-adv-x="1792" +d="M640 1408q-53 0 -90.5 -37.5t-37.5 -90.5v-512v-384l-151 202q-41 54 -107 54q-52 0 -89 -38t-37 -90q0 -43 26 -77l384 -512q38 -51 102 -51h718q22 0 39.5 13.5t22.5 34.5l92 368q24 96 24 194v217q0 41 -28 71t-68 30t-68 -28t-28 -68h-32v61q0 48 -32 81.5t-80 33.5 +q-46 0 -79 -33t-33 -79v-64h-32v90q0 55 -37 94.5t-91 39.5q-53 0 -90.5 -37.5t-37.5 -90.5v-96h-32v570q0 55 -37 94.5t-91 39.5zM640 1536q107 0 181.5 -77.5t74.5 -184.5v-220q22 2 32 2q99 0 173 -69q47 21 99 21q113 0 184 -87q27 7 56 7q94 0 159 -67.5t65 -161.5 +v-217q0 -116 -28 -225l-92 -368q-16 -64 -68 -104.5t-118 -40.5h-718q-60 0 -114.5 27.5t-90.5 74.5l-384 512q-51 68 -51 154q0 105 74.5 180.5t179.5 75.5q71 0 130 -35v547q0 106 75 181t181 75zM768 128v384h-32v-384h32zM1024 128v384h-32v-384h32zM1280 128v384h-32 +v-384h32z" /> + <glyph glyph-name="_566" unicode="" +d="M1288 889q60 0 107 -23q141 -63 141 -226v-177q0 -94 -23 -186l-85 -339q-21 -86 -90.5 -140t-157.5 -54h-668q-106 0 -181 75t-75 181v401l-239 628q-17 45 -17 91q0 106 75 181t181 75q80 0 145.5 -45.5t93.5 -119.5l17 -44v113q0 106 75 181t181 75t181 -75t75 -181 +v-261q27 5 48 5q69 0 127.5 -36.5t88.5 -98.5zM1072 896q-33 0 -60.5 -18t-41.5 -48l-74 -163l-71 -155h55q50 0 90 -31.5t50 -80.5l154 338q10 20 10 46q0 46 -33 79t-79 33zM1293 761q-22 0 -40.5 -8t-29 -16t-23.5 -29.5t-17 -30.5t-17 -37l-132 -290q-10 -20 -10 -46 +q0 -46 33 -79t79 -33q33 0 60.5 18t41.5 48l160 352q9 18 9 38q0 50 -32 81.5t-82 31.5zM128 1120q0 -22 8 -46l248 -650v-69l102 111q43 46 106 46h198l106 233v535q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5v-640h-64l-200 526q-14 37 -47 59.5t-73 22.5 +q-53 0 -90.5 -37.5t-37.5 -90.5zM1180 -128q44 0 78.5 27t45.5 70l85 339q19 73 19 155v91l-141 -310q-17 -38 -53 -61t-78 -23q-53 0 -93.5 34.5t-48.5 86.5q-44 -57 -114 -57h-208v32h208q46 0 81 33t35 79t-31 79t-77 33h-296q-49 0 -82 -36l-126 -136v-308 +q0 -53 37.5 -90.5t90.5 -37.5h668z" /> + <glyph glyph-name="_567" unicode="" horiz-adv-x="1973" +d="M857 992v-117q0 -13 -9.5 -22t-22.5 -9h-298v-812q0 -13 -9 -22.5t-22 -9.5h-135q-13 0 -22.5 9t-9.5 23v812h-297q-13 0 -22.5 9t-9.5 22v117q0 14 9 23t23 9h793q13 0 22.5 -9.5t9.5 -22.5zM1895 995l77 -961q1 -13 -8 -24q-10 -10 -23 -10h-134q-12 0 -21 8.5 +t-10 20.5l-46 588l-189 -425q-8 -19 -29 -19h-120q-20 0 -29 19l-188 427l-45 -590q-1 -12 -10 -20.5t-21 -8.5h-135q-13 0 -23 10q-9 10 -9 24l78 961q1 12 10 20.5t21 8.5h142q20 0 29 -19l220 -520q10 -24 20 -51q3 7 9.5 24.5t10.5 26.5l221 520q9 19 29 19h141 +q13 0 22 -8.5t10 -20.5z" /> + <glyph glyph-name="_568" unicode="" horiz-adv-x="1792" +d="M1042 833q0 88 -60 121q-33 18 -117 18h-123v-281h162q66 0 102 37t36 105zM1094 548l205 -373q8 -17 -1 -31q-8 -16 -27 -16h-152q-20 0 -28 17l-194 365h-155v-350q0 -14 -9 -23t-23 -9h-134q-14 0 -23 9t-9 23v960q0 14 9 23t23 9h294q128 0 190 -24q85 -31 134 -109 +t49 -180q0 -92 -42.5 -165.5t-115.5 -109.5q6 -10 9 -16zM896 1376q-150 0 -286 -58.5t-234.5 -157t-157 -234.5t-58.5 -286t58.5 -286t157 -234.5t234.5 -157t286 -58.5t286 58.5t234.5 157t157 234.5t58.5 286t-58.5 286t-157 234.5t-234.5 157t-286 58.5zM1792 640 +q0 -182 -71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" /> + <glyph glyph-name="_569" unicode="" horiz-adv-x="1792" +d="M605 303q153 0 257 104q14 18 3 36l-45 82q-6 13 -24 17q-16 2 -27 -11l-4 -3q-4 -4 -11.5 -10t-17.5 -13.5t-23.5 -14.5t-28.5 -13t-33.5 -9.5t-37.5 -3.5q-76 0 -125 50t-49 127q0 76 48 125.5t122 49.5q37 0 71.5 -14t50.5 -28l16 -14q11 -11 26 -10q16 2 24 14l53 78 +q13 20 -2 39q-3 4 -11 12t-30 23.5t-48.5 28t-67.5 22.5t-86 10q-148 0 -246 -96.5t-98 -240.5q0 -146 97 -241.5t247 -95.5zM1235 303q153 0 257 104q14 18 4 36l-45 82q-8 14 -25 17q-16 2 -27 -11l-4 -3q-4 -4 -11.5 -10t-17.5 -13.5t-23.5 -14.5t-28.5 -13t-33.5 -9.5 +t-37.5 -3.5q-76 0 -125 50t-49 127q0 76 48 125.5t122 49.5q37 0 71.5 -14t50.5 -28l16 -14q11 -11 26 -10q16 2 24 14l53 78q13 20 -2 39q-3 4 -11 12t-30 23.5t-48.5 28t-67.5 22.5t-86 10q-147 0 -245.5 -96.5t-98.5 -240.5q0 -146 97 -241.5t247 -95.5zM896 1376 +q-150 0 -286 -58.5t-234.5 -157t-157 -234.5t-58.5 -286t58.5 -286t157 -234.5t234.5 -157t286 -58.5t286 58.5t234.5 157t157 234.5t58.5 286t-58.5 286t-157 234.5t-234.5 157t-286 58.5zM896 1536q182 0 348 -71t286 -191t191 -286t71 -348t-71 -348t-191 -286t-286 -191 +t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71z" /> + <glyph glyph-name="f260" unicode="" horiz-adv-x="2048" +d="M736 736l384 -384l-384 -384l-672 672l672 672l168 -168l-96 -96l-72 72l-480 -480l480 -480l193 193l-289 287zM1312 1312l672 -672l-672 -672l-168 168l96 96l72 -72l480 480l-480 480l-193 -193l289 -287l-96 -96l-384 384z" /> + <glyph glyph-name="f261" unicode="" horiz-adv-x="1792" +d="M717 182l271 271l-279 279l-88 -88l192 -191l-96 -96l-279 279l279 279l40 -40l87 87l-127 128l-454 -454zM1075 190l454 454l-454 454l-271 -271l279 -279l88 88l-192 191l96 96l279 -279l-279 -279l-40 40l-87 -88zM1792 640q0 -182 -71 -348t-191 -286t-286 -191 +t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" /> + <glyph glyph-name="_572" unicode="" horiz-adv-x="2304" +d="M651 539q0 -39 -27.5 -66.5t-65.5 -27.5q-39 0 -66.5 27.5t-27.5 66.5q0 38 27.5 65.5t66.5 27.5q38 0 65.5 -27.5t27.5 -65.5zM1805 540q0 -39 -27.5 -66.5t-66.5 -27.5t-66.5 27.5t-27.5 66.5t27.5 66t66.5 27t66.5 -27t27.5 -66zM765 539q0 79 -56.5 136t-136.5 57 +t-136.5 -56.5t-56.5 -136.5t56.5 -136.5t136.5 -56.5t136.5 56.5t56.5 136.5zM1918 540q0 80 -56.5 136.5t-136.5 56.5q-79 0 -136 -56.5t-57 -136.5t56.5 -136.5t136.5 -56.5t136.5 56.5t56.5 136.5zM850 539q0 -116 -81.5 -197.5t-196.5 -81.5q-116 0 -197.5 82t-81.5 197 +t82 196.5t197 81.5t196.5 -81.5t81.5 -196.5zM2004 540q0 -115 -81.5 -196.5t-197.5 -81.5q-115 0 -196.5 81.5t-81.5 196.5t81.5 196.5t196.5 81.5q116 0 197.5 -81.5t81.5 -196.5zM1040 537q0 191 -135.5 326.5t-326.5 135.5q-125 0 -231 -62t-168 -168.5t-62 -231.5 +t62 -231.5t168 -168.5t231 -62q191 0 326.5 135.5t135.5 326.5zM1708 1110q-254 111 -556 111q-319 0 -573 -110q117 0 223 -45.5t182.5 -122.5t122 -183t45.5 -223q0 115 43.5 219.5t118 180.5t177.5 123t217 50zM2187 537q0 191 -135 326.5t-326 135.5t-326.5 -135.5 +t-135.5 -326.5t135.5 -326.5t326.5 -135.5t326 135.5t135 326.5zM1921 1103h383q-44 -51 -75 -114.5t-40 -114.5q110 -151 110 -337q0 -156 -77 -288t-209 -208.5t-287 -76.5q-133 0 -249 56t-196 155q-47 -56 -129 -179q-11 22 -53.5 82.5t-74.5 97.5 +q-80 -99 -196.5 -155.5t-249.5 -56.5q-155 0 -287 76.5t-209 208.5t-77 288q0 186 110 337q-9 51 -40 114.5t-75 114.5h365q149 100 355 156.5t432 56.5q224 0 421 -56t348 -157z" /> + <glyph glyph-name="f263" unicode="" horiz-adv-x="1280" +d="M640 629q-188 0 -321 133t-133 320q0 188 133 321t321 133t321 -133t133 -321q0 -187 -133 -320t-321 -133zM640 1306q-92 0 -157.5 -65.5t-65.5 -158.5q0 -92 65.5 -157.5t157.5 -65.5t157.5 65.5t65.5 157.5q0 93 -65.5 158.5t-157.5 65.5zM1163 574q13 -27 15 -49.5 +t-4.5 -40.5t-26.5 -38.5t-42.5 -37t-61.5 -41.5q-115 -73 -315 -94l73 -72l267 -267q30 -31 30 -74t-30 -73l-12 -13q-31 -30 -74 -30t-74 30q-67 68 -267 268l-267 -268q-31 -30 -74 -30t-73 30l-12 13q-31 30 -31 73t31 74l267 267l72 72q-203 21 -317 94 +q-39 25 -61.5 41.5t-42.5 37t-26.5 38.5t-4.5 40.5t15 49.5q10 20 28 35t42 22t56 -2t65 -35q5 -4 15 -11t43 -24.5t69 -30.5t92 -24t113 -11q91 0 174 25.5t120 50.5l38 25q33 26 65 35t56 2t42 -22t28 -35z" /> + <glyph glyph-name="_574" unicode="" +d="M927 956q0 -66 -46.5 -112.5t-112.5 -46.5t-112.5 46.5t-46.5 112.5t46.5 112.5t112.5 46.5t112.5 -46.5t46.5 -112.5zM1141 593q-10 20 -28 32t-47.5 9.5t-60.5 -27.5q-10 -8 -29 -20t-81 -32t-127 -20t-124 18t-86 36l-27 18q-31 25 -60.5 27.5t-47.5 -9.5t-28 -32 +q-22 -45 -2 -74.5t87 -73.5q83 -53 226 -67l-51 -52q-142 -142 -191 -190q-22 -22 -22 -52.5t22 -52.5l9 -9q22 -22 52.5 -22t52.5 22l191 191q114 -115 191 -191q22 -22 52.5 -22t52.5 22l9 9q22 22 22 52.5t-22 52.5l-191 190l-52 52q141 14 225 67q67 44 87 73.5t-2 74.5 +zM1092 956q0 134 -95 229t-229 95t-229 -95t-95 -229t95 -229t229 -95t229 95t95 229zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="_575" unicode="" horiz-adv-x="1720" +d="M1565 1408q65 0 110 -45.5t45 -110.5v-519q0 -176 -68 -336t-182.5 -275t-274 -182.5t-334.5 -67.5q-176 0 -335.5 67.5t-274.5 182.5t-183 275t-68 336v519q0 64 46 110t110 46h1409zM861 344q47 0 82 33l404 388q37 35 37 85q0 49 -34.5 83.5t-83.5 34.5q-47 0 -82 -33 +l-323 -310l-323 310q-35 33 -81 33q-49 0 -83.5 -34.5t-34.5 -83.5q0 -51 36 -85l405 -388q33 -33 81 -33z" /> + <glyph glyph-name="_576" unicode="" horiz-adv-x="2304" +d="M1494 -103l-295 695q-25 -49 -158.5 -305.5t-198.5 -389.5q-1 -1 -27.5 -0.5t-26.5 1.5q-82 193 -255.5 587t-259.5 596q-21 50 -66.5 107.5t-103.5 100.5t-102 43q0 5 -0.5 24t-0.5 27h583v-50q-39 -2 -79.5 -16t-66.5 -43t-10 -64q26 -59 216.5 -499t235.5 -540 +q31 61 140 266.5t131 247.5q-19 39 -126 281t-136 295q-38 69 -201 71v50l513 -1v-47q-60 -2 -93.5 -25t-12.5 -69q33 -70 87 -189.5t86 -187.5q110 214 173 363q24 55 -10 79.5t-129 26.5q1 7 1 25v24q64 0 170.5 0.5t180 1t92.5 0.5v-49q-62 -2 -119 -33t-90 -81 +l-213 -442q13 -33 127.5 -290t121.5 -274l441 1017q-14 38 -49.5 62.5t-65 31.5t-55.5 8v50l460 -4l1 -2l-1 -44q-139 -4 -201 -145q-526 -1216 -559 -1291h-49z" /> + <glyph glyph-name="_577" unicode="" horiz-adv-x="1792" +d="M949 643q0 -26 -16.5 -45t-41.5 -19q-26 0 -45 16.5t-19 41.5q0 26 17 45t42 19t44 -16.5t19 -41.5zM964 585l350 581q-9 -8 -67.5 -62.5t-125.5 -116.5t-136.5 -127t-117 -110.5t-50.5 -51.5l-349 -580q7 7 67 62t126 116.5t136 127t117 111t50 50.5zM1611 640 +q0 -201 -104 -371q-3 2 -17 11t-26.5 16.5t-16.5 7.5q-13 0 -13 -13q0 -10 59 -44q-74 -112 -184.5 -190.5t-241.5 -110.5l-16 67q-1 10 -15 10q-5 0 -8 -5.5t-2 -9.5l16 -68q-72 -15 -146 -15q-199 0 -372 105q1 2 13 20.5t21.5 33.5t9.5 19q0 13 -13 13q-6 0 -17 -14.5 +t-22.5 -34.5t-13.5 -23q-113 75 -192 187.5t-110 244.5l69 15q10 3 10 15q0 5 -5.5 8t-10.5 2l-68 -15q-14 72 -14 139q0 206 109 379q2 -1 18.5 -12t30 -19t17.5 -8q13 0 13 12q0 6 -12.5 15.5t-32.5 21.5l-20 12q77 112 189 189t244 107l15 -67q2 -10 15 -10q5 0 8 5.5 +t2 10.5l-15 66q71 13 134 13q204 0 379 -109q-39 -56 -39 -65q0 -13 12 -13q11 0 48 64q111 -75 187.5 -186t107.5 -241l-56 -12q-10 -2 -10 -16q0 -5 5.5 -8t9.5 -2l57 13q14 -72 14 -140zM1696 640q0 163 -63.5 311t-170.5 255t-255 170.5t-311 63.5t-311 -63.5 +t-255 -170.5t-170.5 -255t-63.5 -311t63.5 -311t170.5 -255t255 -170.5t311 -63.5t311 63.5t255 170.5t170.5 255t63.5 311zM1792 640q0 -182 -71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71t286 -191 +t191 -286t71 -348z" /> + <glyph glyph-name="_578" unicode="" horiz-adv-x="1792" +d="M893 1536q240 2 451 -120q232 -134 352 -372l-742 39q-160 9 -294 -74.5t-185 -229.5l-276 424q128 159 311 245.5t383 87.5zM146 1131l337 -663q72 -143 211 -217t293 -45l-230 -451q-212 33 -385 157.5t-272.5 316t-99.5 411.5q0 267 146 491zM1732 962 +q58 -150 59.5 -310.5t-48.5 -306t-153 -272t-246 -209.5q-230 -133 -498 -119l405 623q88 131 82.5 290.5t-106.5 277.5zM896 942q125 0 213.5 -88.5t88.5 -213.5t-88.5 -213.5t-213.5 -88.5t-213.5 88.5t-88.5 213.5t88.5 213.5t213.5 88.5z" /> + <glyph glyph-name="_579" unicode="" horiz-adv-x="1792" +d="M903 -256q-283 0 -504.5 150.5t-329.5 398.5q-58 131 -67 301t26 332.5t111 312t179 242.5l-11 -281q11 14 68 15.5t70 -15.5q42 81 160.5 138t234.5 59q-54 -45 -119.5 -148.5t-58.5 -163.5q25 -8 62.5 -13.5t63 -7.5t68 -4t50.5 -3q15 -5 9.5 -45.5t-30.5 -75.5 +q-5 -7 -16.5 -18.5t-56.5 -35.5t-101 -34l15 -189l-139 67q-18 -43 -7.5 -81.5t36 -66.5t65.5 -41.5t81 -6.5q51 9 98 34.5t83.5 45t73.5 17.5q61 -4 89.5 -33t19.5 -65q-1 -2 -2.5 -5.5t-8.5 -12.5t-18 -15.5t-31.5 -10.5t-46.5 -1q-60 -95 -144.5 -135.5t-209.5 -29.5 +q74 -61 162.5 -82.5t168.5 -6t154.5 52t128 87.5t80.5 104q43 91 39 192.5t-37.5 188.5t-78.5 125q87 -38 137 -79.5t77 -112.5q15 170 -57.5 343t-209.5 284q265 -77 412 -279.5t151 -517.5q2 -127 -40.5 -255t-123.5 -238t-189 -196t-247.5 -135.5t-288.5 -49.5z" /> + <glyph glyph-name="_580" unicode="" horiz-adv-x="1792" +d="M1493 1308q-165 110 -359 110q-155 0 -293 -73t-240 -200q-75 -93 -119.5 -218t-48.5 -266v-42q4 -141 48.5 -266t119.5 -218q102 -127 240 -200t293 -73q194 0 359 110q-121 -108 -274.5 -168t-322.5 -60q-29 0 -43 1q-175 8 -333 82t-272 193t-181 281t-67 339 +q0 182 71 348t191 286t286 191t348 71h3q168 -1 320.5 -60.5t273.5 -167.5zM1792 640q0 -192 -77 -362.5t-213 -296.5q-104 -63 -222 -63q-137 0 -255 84q154 56 253.5 233t99.5 405q0 227 -99 404t-253 234q119 83 254 83q119 0 226 -65q135 -125 210.5 -295t75.5 -361z +" /> + <glyph glyph-name="_581" unicode="" horiz-adv-x="1792" +d="M1792 599q0 -56 -7 -104h-1151q0 -146 109.5 -244.5t257.5 -98.5q99 0 185.5 46.5t136.5 130.5h423q-56 -159 -170.5 -281t-267.5 -188.5t-321 -66.5q-187 0 -356 83q-228 -116 -394 -116q-237 0 -237 263q0 115 45 275q17 60 109 229q199 360 475 606 +q-184 -79 -427 -354q63 274 283.5 449.5t501.5 175.5q30 0 45 -1q255 117 433 117q64 0 116 -13t94.5 -40.5t66.5 -76.5t24 -115q0 -116 -75 -286q101 -182 101 -390zM1722 1239q0 83 -53 132t-137 49q-108 0 -254 -70q121 -47 222.5 -131.5t170.5 -195.5q51 135 51 216z +M128 2q0 -86 48.5 -132.5t134.5 -46.5q115 0 266 83q-122 72 -213.5 183t-137.5 245q-98 -205 -98 -332zM632 715h728q-5 142 -113 237t-251 95q-144 0 -251.5 -95t-112.5 -237z" /> + <glyph glyph-name="_582" unicode="" horiz-adv-x="2048" +d="M1792 288v960q0 13 -9.5 22.5t-22.5 9.5h-1600q-13 0 -22.5 -9.5t-9.5 -22.5v-960q0 -13 9.5 -22.5t22.5 -9.5h1600q13 0 22.5 9.5t9.5 22.5zM1920 1248v-960q0 -66 -47 -113t-113 -47h-736v-128h352q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-832q-14 0 -23 9t-9 23 +v64q0 14 9 23t23 9h352v128h-736q-66 0 -113 47t-47 113v960q0 66 47 113t113 47h1600q66 0 113 -47t47 -113z" /> + <glyph glyph-name="_583" unicode="" horiz-adv-x="1792" +d="M138 1408h197q-70 -64 -126 -149q-36 -56 -59 -115t-30 -125.5t-8.5 -120t10.5 -132t21 -126t28 -136.5q4 -19 6 -28q51 -238 81 -329q57 -171 152 -275h-272q-48 0 -82 34t-34 82v1304q0 48 34 82t82 34zM1346 1408h308q48 0 82 -34t34 -82v-1304q0 -48 -34 -82t-82 -34 +h-178q212 210 196 565l-469 -101q-2 -45 -12 -82t-31 -72t-59.5 -59.5t-93.5 -36.5q-123 -26 -199 40q-32 27 -53 61t-51.5 129t-64.5 258q-35 163 -45.5 263t-5.5 139t23 77q20 41 62.5 73t102.5 45q45 12 83.5 6.5t67 -17t54 -35t43 -48t34.5 -56.5l468 100 +q-68 175 -180 287z" /> + <glyph glyph-name="_584" unicode="" +d="M1401 -11l-6 -6q-113 -113 -259 -175q-154 -64 -317 -64q-165 0 -317 64q-148 63 -259 175q-113 112 -175 258q-42 103 -54 189q-4 28 48 36q51 8 56 -20q1 -1 1 -4q18 -90 46 -159q50 -124 152 -226q98 -98 226 -152q132 -56 276 -56q143 0 276 56q128 55 225 152l6 6 +q10 10 25 6q12 -3 33 -22q36 -37 17 -58zM929 604l-66 -66l63 -63q21 -21 -7 -49q-17 -17 -32 -17q-10 0 -19 10l-62 61l-66 -66q-5 -5 -15 -5q-15 0 -31 16l-2 2q-18 15 -18 29q0 7 8 17l66 65l-66 66q-16 16 14 45q18 18 31 18q6 0 13 -5l65 -66l65 65q18 17 48 -13 +q27 -27 11 -44zM1400 547q0 -118 -46 -228q-45 -105 -126 -186q-80 -80 -187 -126t-228 -46t-228 46t-187 126q-82 82 -125 186q-15 33 -15 40h-1q-9 27 43 44q50 16 60 -12q37 -99 97 -167h1v339v2q3 136 102 232q105 103 253 103q147 0 251 -103t104 -249 +q0 -147 -104.5 -251t-250.5 -104q-58 0 -112 16q-28 11 -13 61q16 51 44 43l14 -3q14 -3 33 -6t30 -3q104 0 176 71.5t72 174.5q0 101 -72 171q-71 71 -175 71q-107 0 -178 -80q-64 -72 -64 -160v-413q110 -67 242 -67q96 0 185 36.5t156 103.5t103.5 155t36.5 183 +q0 198 -141 339q-140 140 -339 140q-200 0 -340 -140q-53 -53 -77 -87l-2 -2q-8 -11 -13 -15.5t-21.5 -9.5t-38.5 3q-21 5 -36.5 16.5t-15.5 26.5v680q0 15 10.5 26.5t27.5 11.5h877q30 0 30 -55t-30 -55h-811v-483h1q40 42 102 84t108 61q109 46 231 46q121 0 228 -46 +t187 -126q81 -81 126 -186q46 -112 46 -229zM1369 1128q9 -8 9 -18t-5.5 -18t-16.5 -21q-26 -26 -39 -26q-9 0 -16 7q-106 91 -207 133q-128 56 -276 56q-133 0 -262 -49q-27 -10 -45 37q-9 25 -8 38q3 16 16 20q130 57 299 57q164 0 316 -64q137 -58 235 -152z" /> + <glyph glyph-name="_585" unicode="" horiz-adv-x="1792" +d="M1551 60q15 6 26 3t11 -17.5t-15 -33.5q-13 -16 -44 -43.5t-95.5 -68t-141 -74t-188 -58t-229.5 -24.5q-119 0 -238 31t-209 76.5t-172.5 104t-132.5 105t-84 87.5q-8 9 -10 16.5t1 12t8 7t11.5 2t11.5 -4.5q192 -117 300 -166q389 -176 799 -90q190 40 391 135z +M1758 175q11 -16 2.5 -69.5t-28.5 -102.5q-34 -83 -85 -124q-17 -14 -26 -9t0 24q21 45 44.5 121.5t6.5 98.5q-5 7 -15.5 11.5t-27 6t-29.5 2.5t-35 0t-31.5 -2t-31 -3t-22.5 -2q-6 -1 -13 -1.5t-11 -1t-8.5 -1t-7 -0.5h-5.5h-4.5t-3 0.5t-2 1.5l-1.5 3q-6 16 47 40t103 30 +q46 7 108 1t76 -24zM1364 618q0 -31 13.5 -64t32 -58t37.5 -46t33 -32l13 -11l-227 -224q-40 37 -79 75.5t-58 58.5l-19 20q-11 11 -25 33q-38 -59 -97.5 -102.5t-127.5 -63.5t-140 -23t-137.5 21t-117.5 65.5t-83 113t-31 162.5q0 84 28 154t72 116.5t106.5 83t122.5 57 +t130 34.5t119.5 18.5t99.5 6.5v127q0 65 -21 97q-34 53 -121 53q-6 0 -16.5 -1t-40.5 -12t-56 -29.5t-56 -59.5t-48 -96l-294 27q0 60 22 119t67 113t108 95t151.5 65.5t190.5 24.5q100 0 181 -25t129.5 -61.5t81 -83t45 -86t12.5 -73.5v-589zM692 597q0 -86 70 -133 +q66 -44 139 -22q84 25 114 123q14 45 14 101v162q-59 -2 -111 -12t-106.5 -33.5t-87 -71t-32.5 -114.5z" /> + <glyph glyph-name="_586" unicode="" horiz-adv-x="1792" +d="M1536 1280q52 0 90 -38t38 -90v-1280q0 -52 -38 -90t-90 -38h-1408q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h128v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h384v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h128zM1152 1376v-288q0 -14 9 -23t23 -9 +h64q14 0 23 9t9 23v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23zM384 1376v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23zM1536 -128v1024h-1408v-1024h1408zM896 448h224q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-224 +v-224q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v224h-224q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h224v224q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-224z" /> + <glyph glyph-name="_587" unicode="" horiz-adv-x="1792" +d="M1152 416v-64q0 -14 -9 -23t-23 -9h-576q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h576q14 0 23 -9t9 -23zM128 -128h1408v1024h-1408v-1024zM512 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1280 1088v288q0 14 -9 23 +t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1664 1152v-1280q0 -52 -38 -90t-90 -38h-1408q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h128v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h384v96q0 66 47 113t113 47h64q66 0 113 -47 +t47 -113v-96h128q52 0 90 -38t38 -90z" /> + <glyph glyph-name="_588" unicode="" horiz-adv-x="1792" +d="M1111 151l-46 -46q-9 -9 -22 -9t-23 9l-188 189l-188 -189q-10 -9 -23 -9t-22 9l-46 46q-9 9 -9 22t9 23l189 188l-189 188q-9 10 -9 23t9 22l46 46q9 9 22 9t23 -9l188 -188l188 188q10 9 23 9t22 -9l46 -46q9 -9 9 -22t-9 -23l-188 -188l188 -188q9 -10 9 -23t-9 -22z +M128 -128h1408v1024h-1408v-1024zM512 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1280 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1664 1152v-1280 +q0 -52 -38 -90t-90 -38h-1408q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h128v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h384v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h128q52 0 90 -38t38 -90z" /> + <glyph glyph-name="_589" unicode="" horiz-adv-x="1792" +d="M1303 572l-512 -512q-10 -9 -23 -9t-23 9l-288 288q-9 10 -9 23t9 22l46 46q9 9 22 9t23 -9l220 -220l444 444q10 9 23 9t22 -9l46 -46q9 -9 9 -22t-9 -23zM128 -128h1408v1024h-1408v-1024zM512 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23 +t23 -9h64q14 0 23 9t9 23zM1280 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1664 1152v-1280q0 -52 -38 -90t-90 -38h-1408q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h128v96q0 66 47 113t113 47h64q66 0 113 -47 +t47 -113v-96h384v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h128q52 0 90 -38t38 -90z" /> + <glyph glyph-name="_590" unicode="" horiz-adv-x="1792" +d="M448 1536q26 0 45 -19t19 -45v-891l536 429q17 14 40 14q26 0 45 -19t19 -45v-379l536 429q17 14 40 14q26 0 45 -19t19 -45v-1152q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v1664q0 26 19 45t45 19h384z" /> + <glyph glyph-name="_591" unicode="" horiz-adv-x="1024" +d="M512 448q66 0 128 15v-655q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v655q62 -15 128 -15zM512 1536q212 0 362 -150t150 -362t-150 -362t-362 -150t-362 150t-150 362t150 362t362 150zM512 1312q14 0 23 9t9 23t-9 23t-23 9q-146 0 -249 -103t-103 -249 +q0 -14 9 -23t23 -9t23 9t9 23q0 119 84.5 203.5t203.5 84.5z" /> + <glyph glyph-name="_592" unicode="" horiz-adv-x="1792" +d="M1745 1239q10 -10 10 -23t-10 -23l-141 -141q-28 -28 -68 -28h-1344q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h576v64q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-64h512q40 0 68 -28zM768 320h256v-512q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v512zM1600 768 +q26 0 45 -19t19 -45v-256q0 -26 -19 -45t-45 -19h-1344q-40 0 -68 28l-141 141q-10 10 -10 23t10 23l141 141q28 28 68 28h512v192h256v-192h576z" /> + <glyph glyph-name="_593" unicode="" horiz-adv-x="2048" +d="M2020 1525q28 -20 28 -53v-1408q0 -20 -11 -36t-29 -23l-640 -256q-24 -11 -48 0l-616 246l-616 -246q-10 -5 -24 -5q-19 0 -36 11q-28 20 -28 53v1408q0 20 11 36t29 23l640 256q24 11 48 0l616 -246l616 246q32 13 60 -6zM736 1390v-1270l576 -230v1270zM128 1173 +v-1270l544 217v1270zM1920 107v1270l-544 -217v-1270z" /> + <glyph glyph-name="_594" unicode="" horiz-adv-x="1792" +d="M512 1536q13 0 22.5 -9.5t9.5 -22.5v-1472q0 -20 -17 -28l-480 -256q-7 -4 -15 -4q-13 0 -22.5 9.5t-9.5 22.5v1472q0 20 17 28l480 256q7 4 15 4zM1760 1536q13 0 22.5 -9.5t9.5 -22.5v-1472q0 -20 -17 -28l-480 -256q-7 -4 -15 -4q-13 0 -22.5 9.5t-9.5 22.5v1472 +q0 20 17 28l480 256q7 4 15 4zM640 1536q8 0 14 -3l512 -256q18 -10 18 -29v-1472q0 -13 -9.5 -22.5t-22.5 -9.5q-8 0 -14 3l-512 256q-18 10 -18 29v1472q0 13 9.5 22.5t22.5 9.5z" /> + <glyph glyph-name="_595" unicode="" horiz-adv-x="1792" +d="M640 640q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1024 640q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1408 640q0 53 -37.5 90.5t-90.5 37.5 +t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1792 640q0 -174 -120 -321.5t-326 -233t-450 -85.5q-110 0 -211 18q-173 -173 -435 -229q-52 -10 -86 -13q-12 -1 -22 6t-13 18q-4 15 20 37q5 5 23.5 21.5t25.5 23.5t23.5 25.5t24 31.5t20.5 37 +t20 48t14.5 57.5t12.5 72.5q-146 90 -229.5 216.5t-83.5 269.5q0 174 120 321.5t326 233t450 85.5t450 -85.5t326 -233t120 -321.5z" /> + <glyph glyph-name="_596" unicode="" horiz-adv-x="1792" +d="M640 640q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1024 640q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1408 640q0 -53 -37.5 -90.5t-90.5 -37.5 +t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM896 1152q-204 0 -381.5 -69.5t-282 -187.5t-104.5 -255q0 -112 71.5 -213.5t201.5 -175.5l87 -50l-27 -96q-24 -91 -70 -172q152 63 275 171l43 38l57 -6q69 -8 130 -8q204 0 381.5 69.5t282 187.5 +t104.5 255t-104.5 255t-282 187.5t-381.5 69.5zM1792 640q0 -174 -120 -321.5t-326 -233t-450 -85.5q-70 0 -145 8q-198 -175 -460 -242q-49 -14 -114 -22h-5q-15 0 -27 10.5t-16 27.5v1q-3 4 -0.5 12t2 10t4.5 9.5l6 9t7 8.5t8 9q7 8 31 34.5t34.5 38t31 39.5t32.5 51 +t27 59t26 76q-157 89 -247.5 220t-90.5 281q0 130 71 248.5t191 204.5t286 136.5t348 50.5t348 -50.5t286 -136.5t191 -204.5t71 -248.5z" /> + <glyph glyph-name="_597" unicode="" horiz-adv-x="1024" +d="M512 345l512 295v-591l-512 -296v592zM0 640v-591l512 296zM512 1527v-591l-512 -296v591zM512 936l512 295v-591z" /> + <glyph glyph-name="_598" unicode="" horiz-adv-x="1792" +d="M1709 1018q-10 -236 -332 -651q-333 -431 -562 -431q-142 0 -240 263q-44 160 -132 482q-72 262 -157 262q-18 0 -127 -76l-77 98q24 21 108 96.5t130 115.5q156 138 241 146q95 9 153 -55.5t81 -203.5q44 -287 66 -373q55 -249 120 -249q51 0 154 161q101 161 109 246 +q13 139 -109 139q-57 0 -121 -26q120 393 459 382q251 -8 236 -326z" /> + <glyph glyph-name="f27e" unicode="" +d="M0 1408h1536v-1536h-1536v1536zM1085 293l-221 631l221 297h-634l221 -297l-221 -631l317 -304z" /> + <glyph glyph-name="uniF280" unicode="" +d="M0 1408h1536v-1536h-1536v1536zM908 1088l-12 -33l75 -83l-31 -114l25 -25l107 57l107 -57l25 25l-31 114l75 83l-12 33h-95l-53 96h-32l-53 -96h-95zM641 925q32 0 44.5 -16t11.5 -63l174 21q0 55 -17.5 92.5t-50.5 56t-69 25.5t-85 7q-133 0 -199 -57.5t-66 -182.5v-72 +h-96v-128h76q20 0 20 -8v-382q0 -14 -5 -20t-18 -7l-73 -7v-88h448v86l-149 14q-6 1 -8.5 1.5t-3.5 2.5t-0.5 4t1 7t0.5 10v387h191l38 128h-231q-6 0 -2 6t4 9v80q0 27 1.5 40.5t7.5 28t19.5 20t36.5 5.5zM1248 96v86l-54 9q-7 1 -9.5 2.5t-2.5 3t1 7.5t1 12v520h-275 +l-23 -101l83 -22q23 -7 23 -27v-370q0 -14 -6 -18.5t-20 -6.5l-70 -9v-86h352z" /> + <glyph glyph-name="uniF281" unicode="" horiz-adv-x="1792" +d="M1792 690q0 -58 -29.5 -105.5t-79.5 -72.5q12 -46 12 -96q0 -155 -106.5 -287t-290.5 -208.5t-400 -76.5t-399.5 76.5t-290 208.5t-106.5 287q0 47 11 94q-51 25 -82 73.5t-31 106.5q0 82 58 140.5t141 58.5q85 0 145 -63q218 152 515 162l116 521q3 13 15 21t26 5 +l369 -81q18 37 54 59.5t79 22.5q62 0 106 -43.5t44 -105.5t-44 -106t-106 -44t-105.5 43.5t-43.5 105.5l-334 74l-104 -472q300 -9 519 -160q58 61 143 61q83 0 141 -58.5t58 -140.5zM418 491q0 -62 43.5 -106t105.5 -44t106 44t44 106t-44 105.5t-106 43.5q-61 0 -105 -44 +t-44 -105zM1228 136q11 11 11 26t-11 26q-10 10 -25 10t-26 -10q-41 -42 -121 -62t-160 -20t-160 20t-121 62q-11 10 -26 10t-25 -10q-11 -10 -11 -25.5t11 -26.5q43 -43 118.5 -68t122.5 -29.5t91 -4.5t91 4.5t122.5 29.5t118.5 68zM1225 341q62 0 105.5 44t43.5 106 +q0 61 -44 105t-105 44q-62 0 -106 -43.5t-44 -105.5t44 -106t106 -44z" /> + <glyph glyph-name="_602" unicode="" horiz-adv-x="1792" +d="M69 741h1q16 126 58.5 241.5t115 217t167.5 176t223.5 117.5t276.5 43q231 0 414 -105.5t294 -303.5q104 -187 104 -442v-188h-1125q1 -111 53.5 -192.5t136.5 -122.5t189.5 -57t213 -3t208 46.5t173.5 84.5v-377q-92 -55 -229.5 -92t-312.5 -38t-316 53 +q-189 73 -311.5 249t-124.5 372q-3 242 111 412t325 268q-48 -60 -78 -125.5t-46 -159.5h635q8 77 -8 140t-47 101.5t-70.5 66.5t-80.5 41t-75 20.5t-56 8.5l-22 1q-135 -5 -259.5 -44.5t-223.5 -104.5t-176 -140.5t-138 -163.5z" /> + <glyph glyph-name="_603" unicode="" horiz-adv-x="2304" +d="M0 32v608h2304v-608q0 -66 -47 -113t-113 -47h-1984q-66 0 -113 47t-47 113zM640 256v-128h384v128h-384zM256 256v-128h256v128h-256zM2144 1408q66 0 113 -47t47 -113v-224h-2304v224q0 66 47 113t113 47h1984z" /> + <glyph glyph-name="_604" unicode="" horiz-adv-x="1792" +d="M1584 246l-218 111q-74 -120 -196.5 -189t-263.5 -69q-147 0 -271 72t-196 196t-72 270q0 110 42.5 209.5t115 172t172 115t209.5 42.5q131 0 247.5 -60.5t192.5 -168.5l215 125q-110 169 -286.5 265t-378.5 96q-161 0 -308 -63t-253 -169t-169 -253t-63 -308t63 -308 +t169 -253t253 -169t308 -63q213 0 397.5 107t290.5 292zM1030 643l693 -352q-116 -253 -334.5 -400t-492.5 -147q-182 0 -348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71q260 0 470.5 -133.5t335.5 -366.5zM1543 640h-39v-160h-96v352h136q32 0 54.5 -20 +t28.5 -48t1 -56t-27.5 -48t-57.5 -20z" /> + <glyph glyph-name="uniF285" unicode="" horiz-adv-x="1792" +d="M1427 827l-614 386l92 151h855zM405 562l-184 116v858l1183 -743zM1424 697l147 -95v-858l-532 335zM1387 718l-500 -802h-855l356 571z" /> + <glyph glyph-name="uniF286" unicode="" horiz-adv-x="1792" +d="M640 528v224q0 16 -16 16h-96q-16 0 -16 -16v-224q0 -16 16 -16h96q16 0 16 16zM1152 528v224q0 16 -16 16h-96q-16 0 -16 -16v-224q0 -16 16 -16h96q16 0 16 16zM1664 496v-752h-640v320q0 80 -56 136t-136 56t-136 -56t-56 -136v-320h-640v752q0 16 16 16h96 +q16 0 16 -16v-112h128v624q0 16 16 16h96q16 0 16 -16v-112h128v112q0 16 16 16h96q16 0 16 -16v-112h128v112q0 6 2.5 9.5t8.5 5t9.5 2t11.5 0t9 -0.5v391q-32 15 -32 50q0 23 16.5 39t38.5 16t38.5 -16t16.5 -39q0 -35 -32 -50v-17q45 10 83 10q21 0 59.5 -7.5t54.5 -7.5 +q17 0 47 7.5t37 7.5q16 0 16 -16v-210q0 -15 -35 -21.5t-62 -6.5q-18 0 -54.5 7.5t-55.5 7.5q-40 0 -90 -12v-133q1 0 9 0.5t11.5 0t9.5 -2t8.5 -5t2.5 -9.5v-112h128v112q0 16 16 16h96q16 0 16 -16v-112h128v112q0 16 16 16h96q16 0 16 -16v-624h128v112q0 16 16 16h96 +q16 0 16 -16z" /> + <glyph glyph-name="_607" unicode="" horiz-adv-x="2304" +d="M2288 731q16 -8 16 -27t-16 -27l-320 -192q-8 -5 -16 -5q-9 0 -16 4q-16 10 -16 28v128h-858q37 -58 83 -165q16 -37 24.5 -55t24 -49t27 -47t27 -34t31.5 -26t33 -8h96v96q0 14 9 23t23 9h320q14 0 23 -9t9 -23v-320q0 -14 -9 -23t-23 -9h-320q-14 0 -23 9t-9 23v96h-96 +q-32 0 -61 10t-51 23.5t-45 40.5t-37 46t-33.5 57t-28.5 57.5t-28 60.5q-23 53 -37 81.5t-36 65t-44.5 53.5t-46.5 17h-360q-22 -84 -91 -138t-157 -54q-106 0 -181 75t-75 181t75 181t181 75q88 0 157 -54t91 -138h104q24 0 46.5 17t44.5 53.5t36 65t37 81.5q19 41 28 60.5 +t28.5 57.5t33.5 57t37 46t45 40.5t51 23.5t61 10h107q21 57 70 92.5t111 35.5q80 0 136 -56t56 -136t-56 -136t-136 -56q-62 0 -111 35.5t-70 92.5h-107q-17 0 -33 -8t-31.5 -26t-27 -34t-27 -47t-24 -49t-24.5 -55q-46 -107 -83 -165h1114v128q0 18 16 28t32 -1z" /> + <glyph glyph-name="_608" unicode="" horiz-adv-x="1792" +d="M1150 774q0 -56 -39.5 -95t-95.5 -39h-253v269h253q56 0 95.5 -39.5t39.5 -95.5zM1329 774q0 130 -91.5 222t-222.5 92h-433v-896h180v269h253q130 0 222 91.5t92 221.5zM1792 640q0 -182 -71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348 +t71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" /> + <glyph glyph-name="_609" unicode="" horiz-adv-x="2304" +d="M1645 438q0 59 -34 106.5t-87 68.5q-7 -45 -23 -92q-7 -24 -27.5 -38t-44.5 -14q-12 0 -24 3q-31 10 -45 38.5t-4 58.5q23 71 23 143q0 123 -61 227.5t-166 165.5t-228 61q-134 0 -247 -73t-167 -194q108 -28 188 -106q22 -23 22 -55t-22 -54t-54 -22t-55 22 +q-75 75 -180 75q-106 0 -181 -74.5t-75 -180.5t75 -180.5t181 -74.5h1046q79 0 134.5 55.5t55.5 133.5zM1798 438q0 -142 -100.5 -242t-242.5 -100h-1046q-169 0 -289 119.5t-120 288.5q0 153 100 267t249 136q62 184 221 298t354 114q235 0 408.5 -158.5t196.5 -389.5 +q116 -25 192.5 -118.5t76.5 -214.5zM2048 438q0 -175 -97 -319q-23 -33 -64 -33q-24 0 -43 13q-26 17 -32 48.5t12 57.5q71 104 71 233t-71 233q-18 26 -12 57t32 49t57.5 11.5t49.5 -32.5q97 -142 97 -318zM2304 438q0 -244 -134 -443q-23 -34 -64 -34q-23 0 -42 13 +q-26 18 -32.5 49t11.5 57q108 164 108 358q0 195 -108 357q-18 26 -11.5 57.5t32.5 48.5q26 18 57 12t49 -33q134 -198 134 -442z" /> + <glyph glyph-name="_610" unicode="" +d="M1500 -13q0 -89 -63 -152.5t-153 -63.5t-153.5 63.5t-63.5 152.5q0 90 63.5 153.5t153.5 63.5t153 -63.5t63 -153.5zM1267 268q-115 -15 -192.5 -102.5t-77.5 -205.5q0 -74 33 -138q-146 -78 -379 -78q-109 0 -201 21t-153.5 54.5t-110.5 76.5t-76 85t-44.5 83 +t-23.5 66.5t-6 39.5q0 19 4.5 42.5t18.5 56t36.5 58t64 43.5t94.5 18t94 -17.5t63 -41t35.5 -53t17.5 -49t4 -33.5q0 -34 -23 -81q28 -27 82 -42t93 -17l40 -1q115 0 190 51t75 133q0 26 -9 48.5t-31.5 44.5t-49.5 41t-74 44t-93.5 47.5t-119.5 56.5q-28 13 -43 20 +q-116 55 -187 100t-122.5 102t-72 125.5t-20.5 162.5q0 78 20.5 150t66 137.5t112.5 114t166.5 77t221.5 28.5q120 0 220 -26t164.5 -67t109.5 -94t64 -105.5t19 -103.5q0 -46 -15 -82.5t-36.5 -58t-48.5 -36t-49 -19.5t-39 -5h-8h-32t-39 5t-44 14t-41 28t-37 46t-24 70.5 +t-10 97.5q-15 16 -59 25.5t-81 10.5l-37 1q-68 0 -117.5 -31t-70.5 -70t-21 -76q0 -24 5 -43t24 -46t53 -51t97 -53.5t150 -58.5q76 -25 138.5 -53.5t109 -55.5t83 -59t60.5 -59.5t41 -62.5t26.5 -62t14.5 -63.5t6 -62t1 -62.5z" /> + <glyph glyph-name="_611" unicode="" +d="M704 352v576q0 14 -9 23t-23 9h-256q-14 0 -23 -9t-9 -23v-576q0 -14 9 -23t23 -9h256q14 0 23 9t9 23zM1152 352v576q0 14 -9 23t-23 9h-256q-14 0 -23 -9t-9 -23v-576q0 -14 9 -23t23 -9h256q14 0 23 9t9 23zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103 +t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="_612" unicode="" +d="M768 1408q209 0 385.5 -103t279.5 -279.5t103 -385.5t-103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103zM768 96q148 0 273 73t198 198t73 273t-73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273 +t73 -273t198 -198t273 -73zM864 320q-14 0 -23 9t-9 23v576q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-576q0 -14 -9 -23t-23 -9h-192zM480 320q-14 0 -23 9t-9 23v576q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-576q0 -14 -9 -23t-23 -9h-192z" /> + <glyph glyph-name="_613" unicode="" +d="M1088 352v576q0 14 -9 23t-23 9h-576q-14 0 -23 -9t-9 -23v-576q0 -14 9 -23t23 -9h576q14 0 23 9t9 23zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5 +t103 -385.5z" /> + <glyph glyph-name="_614" unicode="" +d="M768 1408q209 0 385.5 -103t279.5 -279.5t103 -385.5t-103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103zM768 96q148 0 273 73t198 198t73 273t-73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273 +t73 -273t198 -198t273 -73zM480 320q-14 0 -23 9t-9 23v576q0 14 9 23t23 9h576q14 0 23 -9t9 -23v-576q0 -14 -9 -23t-23 -9h-576z" /> + <glyph glyph-name="_615" unicode="" horiz-adv-x="1792" +d="M1757 128l35 -313q3 -28 -16 -50q-19 -21 -48 -21h-1664q-29 0 -48 21q-19 22 -16 50l35 313h1722zM1664 967l86 -775h-1708l86 775q3 24 21 40.5t43 16.5h256v-128q0 -53 37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5v128h384v-128q0 -53 37.5 -90.5t90.5 -37.5 +t90.5 37.5t37.5 90.5v128h256q25 0 43 -16.5t21 -40.5zM1280 1152v-256q0 -26 -19 -45t-45 -19t-45 19t-19 45v256q0 106 -75 181t-181 75t-181 -75t-75 -181v-256q0 -26 -19 -45t-45 -19t-45 19t-19 45v256q0 159 112.5 271.5t271.5 112.5t271.5 -112.5t112.5 -271.5z" /> + <glyph glyph-name="_616" unicode="" horiz-adv-x="2048" +d="M1920 768q53 0 90.5 -37.5t37.5 -90.5t-37.5 -90.5t-90.5 -37.5h-15l-115 -662q-8 -46 -44 -76t-82 -30h-1280q-46 0 -82 30t-44 76l-115 662h-15q-53 0 -90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5h1792zM485 -32q26 2 43.5 22.5t15.5 46.5l-32 416q-2 26 -22.5 43.5 +t-46.5 15.5t-43.5 -22.5t-15.5 -46.5l32 -416q2 -25 20.5 -42t43.5 -17h5zM896 32v416q0 26 -19 45t-45 19t-45 -19t-19 -45v-416q0 -26 19 -45t45 -19t45 19t19 45zM1280 32v416q0 26 -19 45t-45 19t-45 -19t-19 -45v-416q0 -26 19 -45t45 -19t45 19t19 45zM1632 27l32 416 +q2 26 -15.5 46.5t-43.5 22.5t-46.5 -15.5t-22.5 -43.5l-32 -416q-2 -26 15.5 -46.5t43.5 -22.5h5q25 0 43.5 17t20.5 42zM476 1244l-93 -412h-132l101 441q19 88 89 143.5t160 55.5h167q0 26 19 45t45 19h384q26 0 45 -19t19 -45h167q90 0 160 -55.5t89 -143.5l101 -441 +h-132l-93 412q-11 44 -45.5 72t-79.5 28h-167q0 -26 -19 -45t-45 -19h-384q-26 0 -45 19t-19 45h-167q-45 0 -79.5 -28t-45.5 -72z" /> + <glyph glyph-name="_617" unicode="" horiz-adv-x="1792" +d="M991 512l64 256h-254l-64 -256h254zM1759 1016l-56 -224q-7 -24 -31 -24h-327l-64 -256h311q15 0 25 -12q10 -14 6 -28l-56 -224q-5 -24 -31 -24h-327l-81 -328q-7 -24 -31 -24h-224q-16 0 -26 12q-9 12 -6 28l78 312h-254l-81 -328q-7 -24 -31 -24h-225q-15 0 -25 12 +q-9 12 -6 28l78 312h-311q-15 0 -25 12q-9 12 -6 28l56 224q7 24 31 24h327l64 256h-311q-15 0 -25 12q-10 14 -6 28l56 224q5 24 31 24h327l81 328q7 24 32 24h224q15 0 25 -12q9 -12 6 -28l-78 -312h254l81 328q7 24 32 24h224q15 0 25 -12q9 -12 6 -28l-78 -312h311 +q15 0 25 -12q9 -12 6 -28z" /> + <glyph glyph-name="_618" unicode="" +d="M841 483l148 -148l-149 -149zM840 1094l149 -149l-148 -148zM710 -130l464 464l-306 306l306 306l-464 464v-611l-255 255l-93 -93l320 -321l-320 -321l93 -93l255 255v-611zM1429 640q0 -209 -32 -365.5t-87.5 -257t-140.5 -162.5t-181.5 -86.5t-219.5 -24.5 +t-219.5 24.5t-181.5 86.5t-140.5 162.5t-87.5 257t-32 365.5t32 365.5t87.5 257t140.5 162.5t181.5 86.5t219.5 24.5t219.5 -24.5t181.5 -86.5t140.5 -162.5t87.5 -257t32 -365.5z" /> + <glyph glyph-name="_619" unicode="" horiz-adv-x="1024" +d="M596 113l173 172l-173 172v-344zM596 823l173 172l-173 172v-344zM628 640l356 -356l-539 -540v711l-297 -296l-108 108l372 373l-372 373l108 108l297 -296v711l539 -540z" /> + <glyph glyph-name="_620" unicode="" +d="M1280 256q0 52 -38 90t-90 38t-90 -38t-38 -90t38 -90t90 -38t90 38t38 90zM512 1024q0 52 -38 90t-90 38t-90 -38t-38 -90t38 -90t90 -38t90 38t38 90zM1536 256q0 -159 -112.5 -271.5t-271.5 -112.5t-271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5t271.5 -112.5 +t112.5 -271.5zM1440 1344q0 -20 -13 -38l-1056 -1408q-19 -26 -51 -26h-160q-26 0 -45 19t-19 45q0 20 13 38l1056 1408q19 26 51 26h160q26 0 45 -19t19 -45zM768 1024q0 -159 -112.5 -271.5t-271.5 -112.5t-271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5 +t271.5 -112.5t112.5 -271.5z" /> + <glyph glyph-name="_621" unicode="" horiz-adv-x="1792" +d="M104 830l792 -1015l-868 630q-18 13 -25 34.5t0 42.5l101 308v0zM566 830h660l-330 -1015v0zM368 1442l198 -612h-462l198 612q8 23 33 23t33 -23zM1688 830l101 -308q7 -21 0 -42.5t-25 -34.5l-868 -630l792 1015v0zM1688 830h-462l198 612q8 23 33 23t33 -23z" /> + <glyph glyph-name="_622" unicode="" horiz-adv-x="1792" +d="M384 704h160v224h-160v-224zM1221 372v92q-104 -36 -243 -38q-135 -1 -259.5 46.5t-220.5 122.5l1 -96q88 -80 212 -128.5t272 -47.5q129 0 238 49zM640 704h640v224h-640v-224zM1792 736q0 -187 -99 -352q89 -102 89 -229q0 -157 -129.5 -268t-313.5 -111 +q-122 0 -225 52.5t-161 140.5q-19 -1 -57 -1t-57 1q-58 -88 -161 -140.5t-225 -52.5q-184 0 -313.5 111t-129.5 268q0 127 89 229q-99 165 -99 352q0 209 120 385.5t326.5 279.5t449.5 103t449.5 -103t326.5 -279.5t120 -385.5z" /> + <glyph glyph-name="_623" unicode="" +d="M515 625v-128h-252v128h252zM515 880v-127h-252v127h252zM1273 369v-128h-341v128h341zM1273 625v-128h-672v128h672zM1273 880v-127h-672v127h672zM1408 20v1240q0 8 -6 14t-14 6h-32l-378 -256l-210 171l-210 -171l-378 256h-32q-8 0 -14 -6t-6 -14v-1240q0 -8 6 -14 +t14 -6h1240q8 0 14 6t6 14zM553 1130l185 150h-406zM983 1130l221 150h-406zM1536 1260v-1240q0 -62 -43 -105t-105 -43h-1240q-62 0 -105 43t-43 105v1240q0 62 43 105t105 43h1240q62 0 105 -43t43 -105z" /> + <glyph glyph-name="_624" unicode="" horiz-adv-x="1792" +d="M896 720q-104 196 -160 278q-139 202 -347 318q-34 19 -70 36q-89 40 -94 32t34 -38l39 -31q62 -43 112.5 -93.5t94.5 -116.5t70.5 -113t70.5 -131q9 -17 13 -25q44 -84 84 -153t98 -154t115.5 -150t131 -123.5t148.5 -90.5q153 -66 154 -60q1 3 -49 37q-53 36 -81 57 +q-77 58 -179 211t-185 310zM549 177q-76 60 -132.5 125t-98 143.5t-71 154.5t-58.5 186t-52 209t-60.5 252t-76.5 289q273 0 497.5 -36t379 -92t271 -144.5t185.5 -172.5t110 -198.5t56 -199.5t12.5 -198.5t-9.5 -173t-20 -143.5t-13 -107l323 -327h-104l-281 285 +q-22 -2 -91.5 -14t-121.5 -19t-138 -6t-160.5 17t-167.5 59t-179 111z" /> + <glyph glyph-name="_625" unicode="" horiz-adv-x="1792" +d="M1374 879q-6 26 -28.5 39.5t-48.5 7.5q-261 -62 -401 -62t-401 62q-26 6 -48.5 -7.5t-28.5 -39.5t7.5 -48.5t39.5 -28.5q194 -46 303 -58q-2 -158 -15.5 -269t-26.5 -155.5t-41 -115.5l-9 -21q-10 -25 1 -49t36 -34q9 -4 23 -4q44 0 60 41l8 20q54 139 71 259h42 +q17 -120 71 -259l8 -20q16 -41 60 -41q14 0 23 4q25 10 36 34t1 49l-9 21q-28 71 -41 115.5t-26.5 155.5t-15.5 269q109 12 303 58q26 6 39.5 28.5t7.5 48.5zM1024 1024q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5z +M1600 640q0 -143 -55.5 -273.5t-150 -225t-225 -150t-273.5 -55.5t-273.5 55.5t-225 150t-150 225t-55.5 273.5t55.5 273.5t150 225t225 150t273.5 55.5t273.5 -55.5t225 -150t150 -225t55.5 -273.5zM896 1408q-156 0 -298 -61t-245 -164t-164 -245t-61 -298t61 -298 +t164 -245t245 -164t298 -61t298 61t245 164t164 245t61 298t-61 298t-164 245t-245 164t-298 61zM1792 640q0 -182 -71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" /> + <glyph glyph-name="_626" unicode="" +d="M1438 723q34 -35 29 -82l-44 -551q-4 -42 -34.5 -70t-71.5 -28q-6 0 -9 1q-44 3 -72.5 36.5t-25.5 77.5l35 429l-143 -8q55 -113 55 -240q0 -216 -148 -372l-137 137q91 101 91 235q0 145 -102.5 248t-247.5 103q-134 0 -236 -92l-137 138q120 114 284 141l264 300 +l-149 87l-181 -161q-33 -30 -77 -27.5t-73 35.5t-26.5 77t34.5 73l239 213q26 23 60 26.5t64 -14.5l488 -283q36 -21 48 -68q17 -67 -26 -117l-205 -232l371 20q49 3 83 -32zM1240 1180q-74 0 -126 52t-52 126t52 126t126 52t126.5 -52t52.5 -126t-52.5 -126t-126.5 -52z +M613 -62q106 0 196 61l139 -139q-146 -116 -335 -116q-148 0 -273.5 73t-198.5 198t-73 273q0 188 116 336l139 -139q-60 -88 -60 -197q0 -145 102.5 -247.5t247.5 -102.5z" /> + <glyph glyph-name="_627" unicode="" +d="M880 336v-160q0 -14 -9 -23t-23 -9h-160q-14 0 -23 9t-9 23v160q0 14 9 23t23 9h160q14 0 23 -9t9 -23zM1136 832q0 -50 -15 -90t-45.5 -69t-52 -44t-59.5 -36q-32 -18 -46.5 -28t-26 -24t-11.5 -29v-32q0 -14 -9 -23t-23 -9h-160q-14 0 -23 9t-9 23v68q0 35 10.5 64.5 +t24 47.5t39 35.5t41 25.5t44.5 21q53 25 75 43t22 49q0 42 -43.5 71.5t-95.5 29.5q-56 0 -95 -27q-29 -20 -80 -83q-9 -12 -25 -12q-11 0 -19 6l-108 82q-10 7 -12 20t5 23q122 192 349 192q129 0 238.5 -89.5t109.5 -214.5zM768 1280q-130 0 -248.5 -51t-204 -136.5 +t-136.5 -204t-51 -248.5t51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5t136.5 204t51 248.5t-51 248.5t-136.5 204t-204 136.5t-248.5 51zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5 +t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="_628" unicode="" horiz-adv-x="1408" +d="M366 1225q-64 0 -110 45.5t-46 110.5q0 64 46 109.5t110 45.5t109.5 -45.5t45.5 -109.5q0 -65 -45.5 -110.5t-109.5 -45.5zM917 583q0 -50 -30 -67.5t-63.5 -6.5t-47.5 34l-367 438q-7 12 -14 15.5t-11 1.5l-3 -3q-7 -8 4 -21l122 -139l1 -354l-161 -457 +q-67 -192 -92 -234q-15 -26 -28 -32q-50 -26 -103 -1q-29 13 -41.5 43t-9.5 57q2 17 197 618l5 416l-85 -164l35 -222q4 -24 -1 -42t-14 -27.5t-19 -16t-17 -7.5l-7 -2q-19 -3 -34.5 3t-24 16t-14 22t-7.5 19.5t-2 9.5l-46 299l211 381q23 34 113 34q75 0 107 -40l424 -521 +q7 -5 14 -17l3 -3l-1 -1q7 -13 7 -29zM514 433q43 -113 88.5 -225t69.5 -168l24 -55q36 -93 42 -125q11 -70 -36 -97q-35 -22 -66 -16t-51 22t-29 35h-1q-6 16 -8 25l-124 351zM1338 -159q31 -49 31 -57q0 -5 -3 -7q-9 -5 -14.5 0.5t-15.5 26t-16 30.5q-114 172 -423 661 +q3 -1 7 1t7 4l3 2q11 9 11 17z" /> + <glyph glyph-name="_629" unicode="" horiz-adv-x="2304" +d="M504 542h171l-1 265zM1530 641q0 87 -50.5 140t-146.5 53h-54v-388h52q91 0 145 57t54 138zM956 1018l1 -756q0 -14 -9.5 -24t-23.5 -10h-216q-14 0 -23.5 10t-9.5 24v62h-291l-55 -81q-10 -15 -28 -15h-267q-21 0 -30.5 18t3.5 35l556 757q9 14 27 14h332q14 0 24 -10 +t10 -24zM1783 641q0 -193 -125.5 -303t-324.5 -110h-270q-14 0 -24 10t-10 24v756q0 14 10 24t24 10h268q200 0 326 -109t126 -302zM1939 640q0 -11 -0.5 -29t-8 -71.5t-21.5 -102t-44.5 -108t-73.5 -102.5h-51q38 45 66.5 104.5t41.5 112t21 98t9 72.5l1 27q0 8 -0.5 22.5 +t-7.5 60t-20 91.5t-41 111.5t-66 124.5h43q41 -47 72 -107t45.5 -111.5t23 -96t10.5 -70.5zM2123 640q0 -11 -0.5 -29t-8 -71.5t-21.5 -102t-45 -108t-74 -102.5h-51q38 45 66.5 104.5t41.5 112t21 98t9 72.5l1 27q0 8 -0.5 22.5t-7.5 60t-19.5 91.5t-40.5 111.5t-66 124.5 +h43q41 -47 72 -107t45.5 -111.5t23 -96t10.5 -70.5zM2304 640q0 -11 -0.5 -29t-8 -71.5t-21.5 -102t-44.5 -108t-73.5 -102.5h-51q38 45 66 104.5t41 112t21 98t9 72.5l1 27q0 8 -0.5 22.5t-7.5 60t-19.5 91.5t-40.5 111.5t-66 124.5h43q41 -47 72 -107t45.5 -111.5t23 -96 +t9.5 -70.5z" /> + <glyph glyph-name="uniF2A0" unicode="" horiz-adv-x="1408" +d="M617 -153q0 11 -13 58t-31 107t-20 69q-1 4 -5 26.5t-8.5 36t-13.5 21.5q-15 14 -51 14q-23 0 -70 -5.5t-71 -5.5q-34 0 -47 11q-6 5 -11 15.5t-7.5 20t-6.5 24t-5 18.5q-37 128 -37 255t37 255q1 4 5 18.5t6.5 24t7.5 20t11 15.5q13 11 47 11q24 0 71 -5.5t70 -5.5 +q36 0 51 14q9 8 13.5 21.5t8.5 36t5 26.5q2 9 20 69t31 107t13 58q0 22 -43.5 52.5t-75.5 42.5q-20 8 -45 8q-34 0 -98 -18q-57 -17 -96.5 -40.5t-71 -66t-46 -70t-45.5 -94.5q-6 -12 -9 -19q-49 -107 -68 -216t-19 -244t19 -244t68 -216q56 -122 83 -161q63 -91 179 -127 +l6 -2q64 -18 98 -18q25 0 45 8q32 12 75.5 42.5t43.5 52.5zM776 760q-26 0 -45 19t-19 45.5t19 45.5q37 37 37 90q0 52 -37 91q-19 19 -19 45t19 45t45 19t45 -19q75 -75 75 -181t-75 -181q-21 -19 -45 -19zM957 579q-27 0 -45 19q-19 19 -19 45t19 45q112 114 112 272 +t-112 272q-19 19 -19 45t19 45t45 19t45 -19q150 -150 150 -362t-150 -362q-18 -19 -45 -19zM1138 398q-27 0 -45 19q-19 19 -19 45t19 45q90 91 138.5 208t48.5 245t-48.5 245t-138.5 208q-19 19 -19 45t19 45t45 19t45 -19q109 -109 167 -249t58 -294t-58 -294t-167 -249 +q-18 -19 -45 -19z" /> + <glyph glyph-name="uniF2A1" unicode="" horiz-adv-x="2176" +d="M192 352q-66 0 -113 -47t-47 -113t47 -113t113 -47t113 47t47 113t-47 113t-113 47zM704 352q-66 0 -113 -47t-47 -113t47 -113t113 -47t113 47t47 113t-47 113t-113 47zM704 864q-66 0 -113 -47t-47 -113t47 -113t113 -47t113 47t47 113t-47 113t-113 47zM1472 352 +q-66 0 -113 -47t-47 -113t47 -113t113 -47t113 47t47 113t-47 113t-113 47zM1984 352q-66 0 -113 -47t-47 -113t47 -113t113 -47t113 47t47 113t-47 113t-113 47zM1472 864q-66 0 -113 -47t-47 -113t47 -113t113 -47t113 47t47 113t-47 113t-113 47zM1984 864 +q-66 0 -113 -47t-47 -113t47 -113t113 -47t113 47t47 113t-47 113t-113 47zM1984 1376q-66 0 -113 -47t-47 -113t47 -113t113 -47t113 47t47 113t-47 113t-113 47zM384 192q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM896 192q0 -80 -56 -136 +t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM384 704q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM896 704q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM384 1216q0 -80 -56 -136t-136 -56 +t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM1664 192q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM896 1216q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM2176 192q0 -80 -56 -136t-136 -56t-136 56 +t-56 136t56 136t136 56t136 -56t56 -136zM1664 704q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM2176 704q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM1664 1216q0 -80 -56 -136t-136 -56t-136 56t-56 136 +t56 136t136 56t136 -56t56 -136zM2176 1216q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136z" /> + <glyph glyph-name="uniF2A2" unicode="" horiz-adv-x="1792" +d="M128 -192q0 -26 -19 -45t-45 -19t-45 19t-19 45t19 45t45 19t45 -19t19 -45zM320 0q0 -26 -19 -45t-45 -19t-45 19t-19 45t19 45t45 19t45 -19t19 -45zM365 365l256 -256l-90 -90l-256 256zM704 384q0 -26 -19 -45t-45 -19t-45 19t-19 45t19 45t45 19t45 -19t19 -45z +M1411 704q0 -59 -11.5 -108.5t-37.5 -93.5t-44 -67.5t-53 -64.5q-31 -35 -45.5 -54t-33.5 -50t-26.5 -64t-7.5 -74q0 -159 -112.5 -271.5t-271.5 -112.5q-26 0 -45 19t-19 45t19 45t45 19q106 0 181 75t75 181q0 57 11.5 105.5t37 91t43.5 66.5t52 63q40 46 59.5 72 +t37.5 74.5t18 103.5q0 185 -131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5q0 -26 -19 -45t-45 -19t-45 19t-19 45q0 117 45.5 223.5t123 184t184 123t223.5 45.5t223.5 -45.5t184 -123t123 -184t45.5 -223.5zM896 576q0 -26 -19 -45t-45 -19t-45 19t-19 45t19 45 +t45 19t45 -19t19 -45zM1184 704q0 -26 -19 -45t-45 -19t-45 19t-19 45q0 93 -65.5 158.5t-158.5 65.5q-92 0 -158 -65.5t-66 -158.5q0 -26 -19 -45t-45 -19t-45 19t-19 45q0 146 103 249t249 103t249 -103t103 -249zM1578 993q10 -25 -1 -49t-36 -34q-9 -4 -23 -4 +q-19 0 -35.5 11t-23.5 30q-68 178 -224 295q-21 16 -25 42t12 47q17 21 43 25t47 -12q183 -137 266 -351zM1788 1074q9 -25 -1.5 -49t-35.5 -34q-11 -4 -23 -4q-44 0 -60 41q-92 238 -297 393q-22 16 -25.5 42t12.5 47q16 22 42 25.5t47 -12.5q235 -175 341 -449z" /> + <glyph glyph-name="uniF2A3" unicode="" horiz-adv-x="2304" +d="M1032 576q-59 2 -84 55q-17 34 -48 53.5t-68 19.5q-53 0 -90.5 -37.5t-37.5 -90.5q0 -56 36 -89l10 -8q34 -31 82 -31q37 0 68 19.5t48 53.5q25 53 84 55zM1600 704q0 56 -36 89l-10 8q-34 31 -82 31q-37 0 -68 -19.5t-48 -53.5q-25 -53 -84 -55q59 -2 84 -55 +q17 -34 48 -53.5t68 -19.5q53 0 90.5 37.5t37.5 90.5zM1174 925q-17 -35 -55 -48t-73 4q-62 31 -134 31q-51 0 -99 -17q3 0 9.5 0.5t9.5 0.5q92 0 170.5 -50t118.5 -133q17 -36 3.5 -73.5t-49.5 -54.5q-18 -9 -39 -9q21 0 39 -9q36 -17 49.5 -54.5t-3.5 -73.5 +q-40 -83 -118.5 -133t-170.5 -50h-6q-16 2 -44 4l-290 27l-239 -120q-14 -7 -29 -7q-40 0 -57 35l-160 320q-11 23 -4 47.5t29 37.5l209 119l148 267q17 155 91.5 291.5t195.5 236.5q31 25 70.5 21.5t64.5 -34.5t21.5 -70t-34.5 -65q-70 -59 -117 -128q123 84 267 101 +q40 5 71.5 -19t35.5 -64q5 -40 -19 -71.5t-64 -35.5q-84 -10 -159 -55q46 10 99 10q115 0 218 -50q36 -18 49 -55.5t-5 -73.5zM2137 1085l160 -320q11 -23 4 -47.5t-29 -37.5l-209 -119l-148 -267q-17 -155 -91.5 -291.5t-195.5 -236.5q-26 -22 -61 -22q-45 0 -74 35 +q-25 31 -21.5 70t34.5 65q70 59 117 128q-123 -84 -267 -101q-4 -1 -12 -1q-36 0 -63.5 24t-31.5 60q-5 40 19 71.5t64 35.5q84 10 159 55q-46 -10 -99 -10q-115 0 -218 50q-36 18 -49 55.5t5 73.5q17 35 55 48t73 -4q62 -31 134 -31q51 0 99 17q-3 0 -9.5 -0.5t-9.5 -0.5 +q-92 0 -170.5 50t-118.5 133q-17 36 -3.5 73.5t49.5 54.5q18 9 39 9q-21 0 -39 9q-36 17 -49.5 54.5t3.5 73.5q40 83 118.5 133t170.5 50h6h1q14 -2 42 -4l291 -27l239 120q14 7 29 7q40 0 57 -35z" /> + <glyph glyph-name="uniF2A4" unicode="" horiz-adv-x="1792" +d="M1056 704q0 -26 19 -45t45 -19t45 19t19 45q0 146 -103 249t-249 103t-249 -103t-103 -249q0 -26 19 -45t45 -19t45 19t19 45q0 93 66 158.5t158 65.5t158 -65.5t66 -158.5zM835 1280q-117 0 -223.5 -45.5t-184 -123t-123 -184t-45.5 -223.5q0 -26 19 -45t45 -19t45 19 +t19 45q0 185 131.5 316.5t316.5 131.5t316.5 -131.5t131.5 -316.5q0 -55 -18 -103.5t-37.5 -74.5t-59.5 -72q-34 -39 -52 -63t-43.5 -66.5t-37 -91t-11.5 -105.5q0 -106 -75 -181t-181 -75q-26 0 -45 -19t-19 -45t19 -45t45 -19q159 0 271.5 112.5t112.5 271.5q0 41 7.5 74 +t26.5 64t33.5 50t45.5 54q35 41 53 64.5t44 67.5t37.5 93.5t11.5 108.5q0 117 -45.5 223.5t-123 184t-184 123t-223.5 45.5zM591 561l226 -226l-579 -579q-12 -12 -29 -12t-29 12l-168 168q-12 12 -12 29t12 29zM1612 1524l168 -168q12 -12 12 -29t-12 -30l-233 -233 +l-26 -25l-71 -71q-66 153 -195 258l91 91l207 207q13 12 30 12t29 -12z" /> + <glyph glyph-name="uniF2A5" unicode="" +d="M866 1021q0 -27 -13 -94q-11 -50 -31.5 -150t-30.5 -150q-2 -11 -4.5 -12.5t-13.5 -2.5q-20 -2 -31 -2q-58 0 -84 49.5t-26 113.5q0 88 35 174t103 124q28 14 51 14q28 0 36.5 -16.5t8.5 -47.5zM1352 597q0 14 -39 75.5t-52 66.5q-21 8 -34 8q-91 0 -226 -77l-2 2 +q3 22 27.5 135t24.5 178q0 233 -242 233q-24 0 -68 -6q-94 -17 -168.5 -89.5t-111.5 -166.5t-37 -189q0 -146 80.5 -225t227.5 -79q25 0 25 -3t-1 -5q-4 -34 -26 -117q-14 -52 -51.5 -101t-82.5 -49q-42 0 -42 47q0 24 10.5 47.5t25 39.5t29.5 28.5t26 20t11 8.5q0 3 -7 10 +q-24 22 -58.5 36.5t-65.5 14.5q-35 0 -63.5 -34t-41 -75t-12.5 -75q0 -88 51.5 -142t138.5 -54q82 0 155 53t117.5 126t65.5 153q6 22 15.5 66.5t14.5 66.5q3 12 14 18q118 60 227 60q48 0 127 -18q1 -1 4 -1q5 0 9.5 4.5t4.5 8.5zM1536 1120v-960q0 -119 -84.5 -203.5 +t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="uniF2A6" unicode="" horiz-adv-x="1535" +d="M744 1231q0 24 -2 38.5t-8.5 30t-21 23t-37.5 7.5q-39 0 -78 -23q-105 -58 -159 -190.5t-54 -269.5q0 -44 8.5 -85.5t26.5 -80.5t52.5 -62.5t81.5 -23.5q4 0 18 -0.5t20 0t16 3t15 8.5t7 16q16 77 48 231.5t48 231.5q19 91 19 146zM1498 575q0 -7 -7.5 -13.5t-15.5 -6.5 +l-6 1q-22 3 -62 11t-72 12.5t-63 4.5q-167 0 -351 -93q-15 -8 -21 -27q-10 -36 -24.5 -105.5t-22.5 -100.5q-23 -91 -70 -179.5t-112.5 -164.5t-154.5 -123t-185 -47q-135 0 -214.5 83.5t-79.5 219.5q0 53 19.5 117t63 116.5t97.5 52.5q38 0 120 -33.5t83 -61.5 +q0 -1 -16.5 -12.5t-39.5 -31t-46 -44.5t-39 -61t-16 -74q0 -33 16.5 -53t48.5 -20q45 0 85 31.5t66.5 78t48 105.5t32.5 107t16 90v9q0 2 -3.5 3.5t-8.5 1.5h-10t-10 -0.5t-6 -0.5q-227 0 -352 122.5t-125 348.5q0 108 34.5 221t96 210t156 167.5t204.5 89.5q52 9 106 9 +q374 0 374 -360q0 -98 -38 -273t-43 -211l3 -3q101 57 182.5 88t167.5 31q22 0 53 -13q19 -7 80 -102.5t61 -116.5z" /> + <glyph glyph-name="uniF2A7" unicode="" horiz-adv-x="1664" +d="M831 863q32 0 59 -18l222 -148q61 -40 110 -97l146 -170q40 -46 29 -106l-72 -413q-6 -32 -29.5 -53.5t-55.5 -25.5l-527 -56l-352 -32h-9q-39 0 -67.5 28t-28.5 68q0 37 27 64t65 32l260 32h-448q-41 0 -69.5 30t-26.5 71q2 39 32 65t69 26l442 1l-521 64q-41 5 -66 37 +t-19 73q6 35 34.5 57.5t65.5 22.5h10l481 -60l-351 94q-38 10 -62 41.5t-18 68.5q6 36 33 58.5t62 22.5q6 0 20 -2l448 -96l217 -37q1 0 3 -0.5t3 -0.5q23 0 30.5 23t-12.5 36l-186 125q-35 23 -42 63.5t18 73.5q27 38 76 38zM761 661l186 -125l-218 37l-5 2l-36 38 +l-238 262q-1 1 -2.5 3.5t-2.5 3.5q-24 31 -18.5 70t37.5 64q31 23 68 17.5t64 -33.5l142 -147q-2 -1 -5 -3.5t-4 -4.5q-32 -45 -23 -99t55 -85zM1648 1115l15 -266q4 -73 -11 -147l-48 -219q-12 -59 -67 -87l-106 -54q2 62 -39 109l-146 170q-53 61 -117 103l-222 148 +q-34 23 -76 23q-51 0 -88 -37l-235 312q-25 33 -18 73.5t41 63.5q33 22 71.5 14t62.5 -40l266 -352l-262 455q-21 35 -10.5 75t47.5 59q35 18 72.5 6t57.5 -46l241 -420l-136 337q-15 35 -4.5 74t44.5 56q37 19 76 6t56 -51l193 -415l101 -196q8 -15 23 -17.5t27 7.5t11 26 +l-12 224q-2 41 26 71t69 31q39 0 67 -28.5t30 -67.5z" /> + <glyph glyph-name="uniF2A8" unicode="" horiz-adv-x="1792" +d="M335 180q-2 0 -6 2q-86 57 -168.5 145t-139.5 180q-21 30 -21 69q0 9 2 19t4 18t7 18t8.5 16t10.5 17t10 15t12 15.5t11 14.5q184 251 452 365q-110 198 -110 211q0 19 17 29q116 64 128 64q18 0 28 -16l124 -229q92 19 192 19q266 0 497.5 -137.5t378.5 -369.5 +q20 -31 20 -69t-20 -69q-91 -142 -218.5 -253.5t-278.5 -175.5q110 -198 110 -211q0 -20 -17 -29q-116 -64 -127 -64q-19 0 -29 16l-124 229l-64 119l-444 820l7 7q-58 -24 -99 -47q3 -5 127 -234t243 -449t119 -223q0 -7 -9 -9q-13 -3 -72 -3q-57 0 -60 7l-456 841 +q-39 -28 -82 -68q24 -43 214 -393.5t190 -354.5q0 -10 -11 -10q-14 0 -82.5 22t-72.5 28l-106 197l-224 413q-44 -53 -78 -106q2 -3 18 -25t23 -34l176 -327q0 -10 -10 -10zM1165 282l49 -91q273 111 450 385q-180 277 -459 389q67 -64 103 -148.5t36 -176.5 +q0 -106 -47 -200.5t-132 -157.5zM848 896q0 -20 14 -34t34 -14q86 0 147 -61t61 -147q0 -20 14 -34t34 -14t34 14t14 34q0 126 -89 215t-215 89q-20 0 -34 -14t-14 -34zM1214 961l-9 4l7 -7z" /> + <glyph glyph-name="uniF2A9" unicode="" horiz-adv-x="1280" +d="M1050 430q0 -215 -147 -374q-148 -161 -378 -161q-232 0 -378 161q-147 159 -147 374q0 147 68 270.5t189 196.5t268 73q96 0 182 -31q-32 -62 -39 -126q-66 28 -143 28q-167 0 -280.5 -123t-113.5 -291q0 -170 112.5 -288.5t281.5 -118.5t281 118.5t112 288.5 +q0 89 -32 166q66 13 123 49q41 -98 41 -212zM846 619q0 -192 -79.5 -345t-238.5 -253l-14 -1q-29 0 -62 5q83 32 146.5 102.5t99.5 154.5t58.5 189t30 192.5t7.5 178.5q0 69 -3 103q55 -160 55 -326zM791 947v-2q-73 214 -206 440q88 -59 142.5 -186.5t63.5 -251.5z +M1035 744q-83 0 -160 75q218 120 290 247q19 37 21 56q-42 -94 -139.5 -166.5t-204.5 -97.5q-35 54 -35 113q0 37 17 79t43 68q46 44 157 74q59 16 106 58.5t74 100.5q74 -105 74 -253q0 -109 -24 -170q-32 -77 -88.5 -130.5t-130.5 -53.5z" /> + <glyph glyph-name="uniF2AA" unicode="" +d="M1050 495q0 78 -28 147q-41 -25 -85 -34q22 -50 22 -114q0 -117 -77 -198.5t-193 -81.5t-193.5 81.5t-77.5 198.5q0 115 78 199.5t193 84.5q53 0 98 -19q4 43 27 87q-60 21 -125 21q-154 0 -257.5 -108.5t-103.5 -263.5t103.5 -261t257.5 -106t257.5 106.5t103.5 260.5z +M872 850q2 -24 2 -71q0 -63 -5 -123t-20.5 -132.5t-40.5 -130t-68.5 -106t-100.5 -70.5q21 -3 42 -3h10q219 139 219 411q0 116 -38 225zM872 850q-4 80 -44 171.5t-98 130.5q92 -156 142 -302zM1207 955q0 102 -51 174q-41 -86 -124 -109q-69 -19 -109 -53.5t-40 -99.5 +q0 -40 24 -77q74 17 140.5 67t95.5 115q-4 -52 -74.5 -111.5t-138.5 -97.5q52 -52 110 -52q51 0 90 37t60 90q17 42 17 117zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5 +t84.5 -203.5z" /> + <glyph glyph-name="uniF2AB" unicode="" +d="M1279 388q0 22 -22 27q-67 15 -118 59t-80 108q-7 19 -7 25q0 15 19.5 26t43 17t43 20.5t19.5 36.5q0 19 -18.5 31.5t-38.5 12.5q-12 0 -32 -8t-31 -8q-4 0 -12 2q5 95 5 114q0 79 -17 114q-36 78 -103 121.5t-152 43.5q-199 0 -275 -165q-17 -35 -17 -114q0 -19 5 -114 +q-4 -2 -14 -2q-12 0 -32 7.5t-30 7.5q-21 0 -38.5 -12t-17.5 -32q0 -21 19.5 -35.5t43 -20.5t43 -17t19.5 -26q0 -6 -7 -25q-64 -138 -198 -167q-22 -5 -22 -27q0 -46 137 -68q2 -5 6 -26t11.5 -30.5t23.5 -9.5q12 0 37.5 4.5t39.5 4.5q35 0 67 -15t54 -32.5t57.5 -32.5 +t76.5 -15q43 0 79 15t57.5 32.5t53.5 32.5t67 15q14 0 39.5 -4t38.5 -4q16 0 23 10t11 30t6 25q137 22 137 68zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5 +t103 -385.5z" /> + <glyph glyph-name="uniF2AC" unicode="" horiz-adv-x="1664" +d="M848 1408q134 1 240.5 -68.5t163.5 -192.5q27 -58 27 -179q0 -47 -9 -191q14 -7 28 -7q18 0 51 13.5t51 13.5q29 0 56 -18t27 -46q0 -32 -31.5 -54t-69 -31.5t-69 -29t-31.5 -47.5q0 -15 12 -43q37 -82 102.5 -150t144.5 -101q28 -12 80 -23q28 -6 28 -35 +q0 -70 -219 -103q-7 -11 -11 -39t-14 -46.5t-33 -18.5q-20 0 -62 6.5t-64 6.5q-37 0 -62 -5q-32 -5 -63 -22.5t-58 -38t-58 -40.5t-76 -33.5t-99 -13.5q-52 0 -96.5 13.5t-75 33.5t-57.5 40.5t-58 38t-62 22.5q-26 5 -63 5q-24 0 -65.5 -7.5t-58.5 -7.5q-25 0 -35 18.5 +t-14 47.5t-11 40q-219 33 -219 103q0 29 28 35q52 11 80 23q78 32 144.5 101t102.5 150q12 28 12 43q0 28 -31.5 47.5t-69.5 29.5t-69.5 31.5t-31.5 52.5q0 27 26 45.5t55 18.5q15 0 48 -13t53 -13q18 0 32 7q-9 142 -9 190q0 122 27 180q64 137 172 198t264 63z" /> + <glyph glyph-name="uniF2AD" unicode="" +d="M1280 388q0 22 -22 27q-67 14 -118 58t-80 109q-7 14 -7 25q0 15 19.5 26t42.5 17t42.5 20.5t19.5 36.5q0 19 -18.5 31.5t-38.5 12.5q-11 0 -31 -8t-32 -8q-4 0 -12 2q5 63 5 115q0 78 -17 114q-36 78 -102.5 121.5t-152.5 43.5q-198 0 -275 -165q-18 -38 -18 -115 +q0 -38 6 -114q-10 -2 -15 -2q-11 0 -31.5 8t-30.5 8q-20 0 -37.5 -12.5t-17.5 -32.5q0 -21 19.5 -35.5t42.5 -20.5t42.5 -17t19.5 -26q0 -11 -7 -25q-64 -138 -198 -167q-22 -5 -22 -27q0 -47 138 -69q2 -5 6 -26t11 -30.5t23 -9.5q13 0 38.5 5t38.5 5q35 0 67.5 -15 +t54.5 -32.5t57.5 -32.5t76.5 -15q43 0 79 15t57.5 32.5t54 32.5t67.5 15q13 0 39 -4.5t39 -4.5q15 0 22.5 9.5t11.5 31t5 24.5q138 22 138 69zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960 +q119 0 203.5 -84.5t84.5 -203.5z" /> + <glyph glyph-name="uniF2AE" unicode="" horiz-adv-x="2304" +d="M2304 1536q-69 -46 -125 -92t-89 -81t-59.5 -71.5t-37.5 -57.5t-22 -44.5t-14 -29.5q-10 -18 -35.5 -136.5t-48.5 -164.5q-15 -29 -50 -60.5t-67.5 -50.5t-72.5 -41t-48 -28q-47 -31 -151 -231q-341 14 -630 -158q-92 -53 -303 -179q47 16 86 31t55 22l15 7 +q71 27 163 64.5t133.5 53.5t108 34.5t142.5 31.5q186 31 465 -7q1 0 10 -3q11 -6 14 -17t-3 -22l-194 -345q-15 -29 -47 -22q-128 24 -354 24q-146 0 -402 -44.5t-392 -46.5q-82 -1 -149 13t-107 37t-61 40t-33 34l-1 1v2q0 6 6 6q138 0 371 55q192 366 374.5 524t383.5 158 +q5 0 14.5 -0.5t38 -5t55 -12t61.5 -24.5t63 -39.5t54 -59t40 -82.5l102 177q2 4 21 42.5t44.5 86.5t61 109.5t84 133.5t100.5 137q66 82 128 141.5t121.5 96.5t92.5 53.5t88 39.5z" /> + <glyph glyph-name="uniF2B0" unicode="" +d="M1322 640q0 -45 -5 -76l-236 14l224 -78q-19 -73 -58 -141l-214 103l177 -158q-44 -61 -107 -108l-157 178l103 -215q-61 -37 -140 -59l-79 228l14 -240q-38 -6 -76 -6t-76 6l14 238l-78 -226q-74 19 -140 59l103 215l-157 -178q-59 43 -108 108l178 158l-214 -104 +q-39 69 -58 141l224 79l-237 -14q-5 42 -5 76q0 35 5 77l238 -14l-225 79q19 73 58 140l214 -104l-177 159q46 61 107 108l158 -178l-103 215q67 39 140 58l77 -224l-13 236q36 6 75 6q38 0 76 -6l-14 -237l78 225q74 -19 140 -59l-103 -214l158 178q61 -47 107 -108 +l-177 -159l213 104q37 -62 58 -141l-224 -78l237 14q5 -31 5 -77zM1352 640q0 160 -78.5 295.5t-213 214t-292.5 78.5q-119 0 -227 -46.5t-186.5 -125t-124.5 -187.5t-46 -229q0 -119 46 -228t124.5 -187.5t186.5 -125t227 -46.5q158 0 292.5 78.5t213 214t78.5 294.5z +M1425 1023v-766l-657 -383l-657 383v766l657 383zM768 -183l708 412v823l-708 411l-708 -411v-823zM1536 1088v-896l-768 -448l-768 448v896l768 448z" /> + <glyph glyph-name="uniF2B1" unicode="" horiz-adv-x="1664" +d="M339 1318h691l-26 -72h-665q-110 0 -188.5 -79t-78.5 -189v-771q0 -95 60.5 -169.5t153.5 -93.5q23 -5 98 -5v-72h-45q-140 0 -239.5 100t-99.5 240v771q0 140 99.5 240t239.5 100zM1190 1536h247l-482 -1294q-23 -61 -40.5 -103.5t-45 -98t-54 -93.5t-64.5 -78.5 +t-79.5 -65t-95.5 -41t-116 -18.5v195q163 26 220 182q20 52 20 105q0 54 -20 106l-285 733h228l187 -585zM1664 978v-1111h-795q37 55 45 73h678v1038q0 85 -49.5 155t-129.5 99l25 67q101 -34 163.5 -123.5t62.5 -197.5z" /> + <glyph glyph-name="uniF2B2" unicode="" horiz-adv-x="1792" +d="M852 1227q0 -29 -17 -52.5t-45 -23.5t-45 23.5t-17 52.5t17 52.5t45 23.5t45 -23.5t17 -52.5zM688 -149v114q0 30 -20.5 51.5t-50.5 21.5t-50 -21.5t-20 -51.5v-114q0 -30 20.5 -52t49.5 -22q30 0 50.5 22t20.5 52zM860 -149v114q0 30 -20 51.5t-50 21.5t-50.5 -21.5 +t-20.5 -51.5v-114q0 -30 20.5 -52t50.5 -22q29 0 49.5 22t20.5 52zM1034 -149v114q0 30 -20.5 51.5t-50.5 21.5t-50.5 -21.5t-20.5 -51.5v-114q0 -30 20.5 -52t50.5 -22t50.5 22t20.5 52zM1208 -149v114q0 30 -20.5 51.5t-50.5 21.5t-50.5 -21.5t-20.5 -51.5v-114 +q0 -30 20.5 -52t50.5 -22t50.5 22t20.5 52zM1476 535q-84 -160 -232 -259.5t-323 -99.5q-123 0 -229.5 51.5t-178.5 137t-113 197.5t-41 232q0 88 21 174q-104 -175 -104 -390q0 -162 65 -312t185 -251q30 57 91 57q56 0 86 -50q32 50 87 50q56 0 86 -50q32 50 87 50t87 -50 +q30 50 86 50q28 0 52.5 -15.5t37.5 -40.5q112 94 177 231.5t73 287.5zM1326 564q0 75 -72 75q-17 0 -47 -6q-95 -19 -149 -19q-226 0 -226 243q0 86 30 204q-83 -127 -83 -275q0 -150 89 -260.5t235 -110.5q111 0 210 70q13 48 13 79zM884 1223q0 50 -32 89.5t-81 39.5 +t-81 -39.5t-32 -89.5q0 -51 31.5 -90.5t81.5 -39.5t81.5 39.5t31.5 90.5zM1513 884q0 96 -37.5 179t-113 137t-173.5 54q-77 0 -149 -35t-127 -94q-48 -159 -48 -268q0 -104 45.5 -157t147.5 -53q53 0 142 19q36 6 53 6q51 0 77.5 -28t26.5 -80q0 -26 -4 -46 +q75 68 117.5 165.5t42.5 200.5zM1792 667q0 -111 -33.5 -249.5t-93.5 -204.5q-58 -64 -195 -142.5t-228 -104.5l-4 -1v-114q0 -43 -29.5 -75t-72.5 -32q-56 0 -86 50q-32 -50 -87 -50t-87 50q-30 -50 -86 -50q-55 0 -87 50q-30 -50 -86 -50q-47 0 -75 33.5t-28 81.5 +q-90 -68 -198 -68q-118 0 -211 80q54 1 106 20q-113 31 -182 127q32 -7 71 -7q89 0 164 46q-192 192 -240 306q-24 56 -24 160q0 57 9 125.5t31.5 146.5t55 141t86.5 105t120 42q59 0 81 -52q19 29 42 54q2 3 12 13t13 16q10 15 23 38t25 42t28 39q87 111 211.5 177 +t260.5 66q35 0 62 -4q59 64 146 64q83 0 140 -57q5 -5 5 -12q0 -5 -6 -13.5t-12.5 -16t-16 -17l-10.5 -10.5q17 -6 36 -18t19 -24q0 -6 -16 -25q157 -138 197 -378q25 30 60 30q45 0 100 -49q90 -80 90 -279z" /> + <glyph glyph-name="uniF2B3" unicode="" +d="M917 631q0 33 -6 64h-362v-132h217q-12 -76 -74.5 -120.5t-142.5 -44.5q-99 0 -169 71.5t-70 170.5t70 170.5t169 71.5q93 0 153 -59l104 101q-108 100 -257 100q-160 0 -272 -112.5t-112 -271.5t112 -271.5t272 -112.5q165 0 266.5 105t101.5 270zM1262 585h109v110 +h-109v110h-110v-110h-110v-110h110v-110h110v110zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" /> + <glyph glyph-name="uniF2B4" unicode="" +d="M1536 1024v-839q0 -48 -49 -62q-174 -52 -338 -52q-73 0 -215.5 29.5t-227.5 29.5q-164 0 -370 -48v-338h-160v1368q-63 25 -101 81t-38 124q0 91 64 155t155 64t155 -64t64 -155q0 -68 -38 -124t-101 -81v-68q190 44 343 44q99 0 198 -15q14 -2 111.5 -22.5t149.5 -20.5 +q77 0 165 18q11 2 80 21t89 19q26 0 45 -19t19 -45z" /> + <glyph glyph-name="uniF2B5" unicode="" horiz-adv-x="2304" +d="M192 384q40 0 56 32t0 64t-56 32t-56 -32t0 -64t56 -32zM1665 442q-10 13 -38.5 50t-41.5 54t-38 49t-42.5 53t-40.5 47t-45 49l-125 -140q-83 -94 -208.5 -92t-205.5 98q-57 69 -56.5 158t58.5 157l177 206q-22 11 -51 16.5t-47.5 6t-56.5 -0.5t-49 -1q-92 0 -158 -66 +l-158 -158h-155v-544q5 0 21 0.5t22 0t19.5 -2t20.5 -4.5t17.5 -8.5t18.5 -13.5l297 -292q115 -111 227 -111q78 0 125 47q57 -20 112.5 8t72.5 85q74 -6 127 44q20 18 36 45.5t14 50.5q10 -10 43 -10q43 0 77 21t49.5 53t12 71.5t-30.5 73.5zM1824 384h96v512h-93l-157 180 +q-66 76 -169 76h-167q-89 0 -146 -67l-209 -243q-28 -33 -28 -75t27 -75q43 -51 110 -52t111 49l193 218q25 23 53.5 21.5t47 -27t8.5 -56.5q16 -19 56 -63t60 -68q29 -36 82.5 -105.5t64.5 -84.5q52 -66 60 -140zM2112 384q40 0 56 32t0 64t-56 32t-56 -32t0 -64t56 -32z +M2304 960v-640q0 -26 -19 -45t-45 -19h-434q-27 -65 -82 -106.5t-125 -51.5q-33 -48 -80.5 -81.5t-102.5 -45.5q-42 -53 -104.5 -81.5t-128.5 -24.5q-60 -34 -126 -39.5t-127.5 14t-117 53.5t-103.5 81l-287 282h-358q-26 0 -45 19t-19 45v672q0 26 19 45t45 19h421 +q14 14 47 48t47.5 48t44 40t50.5 37.5t51 25.5t62 19.5t68 5.5h117q99 0 181 -56q82 56 181 56h167q35 0 67 -6t56.5 -14.5t51.5 -26.5t44.5 -31t43 -39.5t39 -42t41 -48t41.5 -48.5h355q26 0 45 -19t19 -45z" /> + <glyph glyph-name="uniF2B6" unicode="" horiz-adv-x="1792" +d="M1792 882v-978q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v978q0 15 11 24q8 7 39 34.5t41.5 36t45.5 37.5t70 55.5t96 73t143.5 107t192.5 140.5q5 4 52.5 40t71.5 52.5t64 35t69 18.5t69 -18.5t65 -35.5t71 -52t52 -40q110 -80 192.5 -140.5t143.5 -107 +t96 -73t70 -55.5t45.5 -37.5t41.5 -36t39 -34.5q11 -9 11 -24zM1228 297q263 191 345 252q11 8 12.5 20.5t-6.5 23.5l-38 52q-8 11 -21 12.5t-24 -6.5q-231 -169 -343 -250q-5 -3 -52 -39t-71.5 -52.5t-64.5 -35t-69 -18.5t-69 18.5t-64.5 35t-71.5 52.5t-52 39 +q-186 134 -343 250q-11 8 -24 6.5t-21 -12.5l-38 -52q-8 -11 -6.5 -23.5t12.5 -20.5q82 -61 345 -252q10 -8 50 -38t65 -47t64 -39.5t77.5 -33.5t75.5 -11t75.5 11t79 34.5t64.5 39.5t65 47.5t48 36.5z" /> + <glyph glyph-name="uniF2B7" unicode="" horiz-adv-x="1792" +d="M1474 623l39 -51q8 -11 6.5 -23.5t-11.5 -20.5q-43 -34 -126.5 -98.5t-146.5 -113t-67 -51.5q-39 -32 -60 -48t-60.5 -41t-76.5 -36.5t-74 -11.5h-1h-1q-37 0 -74 11.5t-76 36.5t-61 41.5t-60 47.5q-5 4 -65 50.5t-143.5 111t-122.5 94.5q-11 8 -12.5 20.5t6.5 23.5 +l37 52q8 11 21.5 13t24.5 -7q94 -73 306 -236q5 -4 43.5 -35t60.5 -46.5t56.5 -32.5t58.5 -17h1h1q24 0 58.5 17t56.5 32.5t60.5 46.5t43.5 35q258 198 313 242q11 8 24 6.5t21 -12.5zM1664 -96v928q-90 83 -159 139q-91 74 -389 304q-3 2 -43 35t-61 48t-56 32.5t-59 17.5 +h-1h-1q-24 0 -59 -17.5t-56 -32.5t-61 -48t-43 -35q-215 -166 -315.5 -245.5t-129.5 -104t-82 -74.5q-14 -12 -21 -19v-928q0 -13 9.5 -22.5t22.5 -9.5h1472q13 0 22.5 9.5t9.5 22.5zM1792 832v-928q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v928q0 56 41 94 +q123 114 350 290.5t233 181.5q36 30 59 47.5t61.5 42t76 36.5t74.5 12h1h1q37 0 74.5 -12t76 -36.5t61.5 -42t59 -47.5q43 -36 156 -122t226 -177t201 -173q41 -38 41 -94z" /> + <glyph glyph-name="uniF2B8" unicode="" +d="M330 1l202 -214l-34 236l-216 213zM556 -225l274 218l-11 245l-300 -215zM245 413l227 -213l-48 327l-245 204zM495 189l317 214l-14 324l-352 -200zM843 178l95 -80l-2 239l-103 79q0 -1 1 -8.5t0 -12t-5 -7.5l-78 -52l85 -70q7 -6 7 -88zM138 930l256 -200l-68 465 +l-279 173zM1173 267l15 234l-230 -164l2 -240zM417 722l373 194l-19 441l-423 -163zM1270 357l20 233l-226 142l-2 -105l144 -95q6 -4 4 -9l-7 -119zM1461 496l30 222l-179 -128l-20 -228zM1273 329l-71 49l-8 -117q0 -5 -4 -8l-234 -187q-7 -5 -14 0l-98 83l7 -161 +q0 -5 -4 -8l-293 -234q-4 -2 -6 -2q-8 2 -8 3l-228 242q-4 4 -59 277q-2 7 5 11l61 37q-94 86 -95 92l-72 351q-2 7 6 12l94 45q-133 100 -135 108l-96 466q-2 10 7 13l433 135q5 0 8 -1l317 -153q6 -4 6 -9l20 -463q0 -7 -6 -10l-118 -61l126 -85q5 -2 5 -8l5 -123l121 74 +q5 4 11 0l84 -56l3 110q0 6 5 9l206 126q6 3 11 0l245 -135q4 -4 5 -7t-6.5 -60t-17.5 -124.5t-10 -70.5q0 -5 -4 -7l-191 -153q-6 -5 -13 0z" /> + <glyph glyph-name="uniF2B9" unicode="" horiz-adv-x="1664" +d="M1201 298q0 57 -5.5 107t-21 100.5t-39.5 86t-64 58t-91 22.5q-6 -4 -33.5 -20.5t-42.5 -24.5t-40.5 -20t-49 -17t-46.5 -5t-46.5 5t-49 17t-40.5 20t-42.5 24.5t-33.5 20.5q-51 0 -91 -22.5t-64 -58t-39.5 -86t-21 -100.5t-5.5 -107q0 -73 42 -121.5t103 -48.5h576 +q61 0 103 48.5t42 121.5zM1028 892q0 108 -76.5 184t-183.5 76t-183.5 -76t-76.5 -184q0 -107 76.5 -183t183.5 -76t183.5 76t76.5 183zM1664 352v-192q0 -14 -9 -23t-23 -9h-96v-224q0 -66 -47 -113t-113 -47h-1216q-66 0 -113 47t-47 113v1472q0 66 47 113t113 47h1216 +q66 0 113 -47t47 -113v-224h96q14 0 23 -9t9 -23v-192q0 -14 -9 -23t-23 -9h-96v-128h96q14 0 23 -9t9 -23v-192q0 -14 -9 -23t-23 -9h-96v-128h96q14 0 23 -9t9 -23z" /> + <glyph glyph-name="uniF2BA" unicode="" horiz-adv-x="1664" +d="M1028 892q0 -107 -76.5 -183t-183.5 -76t-183.5 76t-76.5 183q0 108 76.5 184t183.5 76t183.5 -76t76.5 -184zM980 672q46 0 82.5 -17t60 -47.5t39.5 -67t24 -81t11.5 -82.5t3.5 -79q0 -67 -39.5 -118.5t-105.5 -51.5h-576q-66 0 -105.5 51.5t-39.5 118.5q0 48 4.5 93.5 +t18.5 98.5t36.5 91.5t63 64.5t93.5 26h5q7 -4 32 -19.5t35.5 -21t33 -17t37 -16t35 -9t39.5 -4.5t39.5 4.5t35 9t37 16t33 17t35.5 21t32 19.5zM1664 928q0 -13 -9.5 -22.5t-22.5 -9.5h-96v-128h96q13 0 22.5 -9.5t9.5 -22.5v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-96v-128h96 +q13 0 22.5 -9.5t9.5 -22.5v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-96v-224q0 -66 -47 -113t-113 -47h-1216q-66 0 -113 47t-47 113v1472q0 66 47 113t113 47h1216q66 0 113 -47t47 -113v-224h96q13 0 22.5 -9.5t9.5 -22.5v-192zM1408 -96v1472q0 13 -9.5 22.5t-22.5 9.5h-1216 +q-13 0 -22.5 -9.5t-9.5 -22.5v-1472q0 -13 9.5 -22.5t22.5 -9.5h1216q13 0 22.5 9.5t9.5 22.5z" /> + <glyph glyph-name="uniF2BB" unicode="" horiz-adv-x="2048" +d="M1024 405q0 64 -9 117.5t-29.5 103t-60.5 78t-97 28.5q-6 -4 -30 -18t-37.5 -21.5t-35.5 -17.5t-43 -14.5t-42 -4.5t-42 4.5t-43 14.5t-35.5 17.5t-37.5 21.5t-30 18q-57 0 -97 -28.5t-60.5 -78t-29.5 -103t-9 -117.5t37 -106.5t91 -42.5h512q54 0 91 42.5t37 106.5z +M867 925q0 94 -66.5 160.5t-160.5 66.5t-160.5 -66.5t-66.5 -160.5t66.5 -160.5t160.5 -66.5t160.5 66.5t66.5 160.5zM1792 416v64q0 14 -9 23t-23 9h-576q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h576q14 0 23 9t9 23zM1792 676v56q0 15 -10.5 25.5t-25.5 10.5h-568 +q-15 0 -25.5 -10.5t-10.5 -25.5v-56q0 -15 10.5 -25.5t25.5 -10.5h568q15 0 25.5 10.5t10.5 25.5zM1792 928v64q0 14 -9 23t-23 9h-576q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h576q14 0 23 9t9 23zM2048 1248v-1216q0 -66 -47 -113t-113 -47h-352v96q0 14 -9 23t-23 9 +h-64q-14 0 -23 -9t-9 -23v-96h-768v96q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-96h-352q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1728q66 0 113 -47t47 -113z" /> + <glyph glyph-name="uniF2BC" unicode="" horiz-adv-x="2048" +d="M1024 405q0 -64 -37 -106.5t-91 -42.5h-512q-54 0 -91 42.5t-37 106.5t9 117.5t29.5 103t60.5 78t97 28.5q6 -4 30 -18t37.5 -21.5t35.5 -17.5t43 -14.5t42 -4.5t42 4.5t43 14.5t35.5 17.5t37.5 21.5t30 18q57 0 97 -28.5t60.5 -78t29.5 -103t9 -117.5zM867 925 +q0 -94 -66.5 -160.5t-160.5 -66.5t-160.5 66.5t-66.5 160.5t66.5 160.5t160.5 66.5t160.5 -66.5t66.5 -160.5zM1792 480v-64q0 -14 -9 -23t-23 -9h-576q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h576q14 0 23 -9t9 -23zM1792 732v-56q0 -15 -10.5 -25.5t-25.5 -10.5h-568 +q-15 0 -25.5 10.5t-10.5 25.5v56q0 15 10.5 25.5t25.5 10.5h568q15 0 25.5 -10.5t10.5 -25.5zM1792 992v-64q0 -14 -9 -23t-23 -9h-576q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h576q14 0 23 -9t9 -23zM1920 32v1216q0 13 -9.5 22.5t-22.5 9.5h-1728q-13 0 -22.5 -9.5 +t-9.5 -22.5v-1216q0 -13 9.5 -22.5t22.5 -9.5h352v96q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-96h768v96q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-96h352q13 0 22.5 9.5t9.5 22.5zM2048 1248v-1216q0 -66 -47 -113t-113 -47h-1728q-66 0 -113 47t-47 113v1216q0 66 47 113 +t113 47h1728q66 0 113 -47t47 -113z" /> + <glyph glyph-name="uniF2BD" unicode="" horiz-adv-x="1792" +d="M1523 197q-22 155 -87.5 257.5t-184.5 118.5q-67 -74 -159.5 -115.5t-195.5 -41.5t-195.5 41.5t-159.5 115.5q-119 -16 -184.5 -118.5t-87.5 -257.5q106 -150 271 -237.5t356 -87.5t356 87.5t271 237.5zM1280 896q0 159 -112.5 271.5t-271.5 112.5t-271.5 -112.5 +t-112.5 -271.5t112.5 -271.5t271.5 -112.5t271.5 112.5t112.5 271.5zM1792 640q0 -182 -71 -347.5t-190.5 -286t-285.5 -191.5t-349 -71q-182 0 -348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" /> + <glyph glyph-name="uniF2BE" unicode="" horiz-adv-x="1792" +d="M896 1536q182 0 348 -71t286 -191t191 -286t71 -348q0 -181 -70.5 -347t-190.5 -286t-286 -191.5t-349 -71.5t-349 71t-285.5 191.5t-190.5 286t-71 347.5t71 348t191 286t286 191t348 71zM1515 185q149 205 149 455q0 156 -61 298t-164 245t-245 164t-298 61t-298 -61 +t-245 -164t-164 -245t-61 -298q0 -250 149 -455q66 327 306 327q131 -128 313 -128t313 128q240 0 306 -327zM1280 832q0 159 -112.5 271.5t-271.5 112.5t-271.5 -112.5t-112.5 -271.5t112.5 -271.5t271.5 -112.5t271.5 112.5t112.5 271.5z" /> + <glyph glyph-name="uniF2C0" unicode="" +d="M1201 752q47 -14 89.5 -38t89 -73t79.5 -115.5t55 -172t22 -236.5q0 -154 -100 -263.5t-241 -109.5h-854q-141 0 -241 109.5t-100 263.5q0 131 22 236.5t55 172t79.5 115.5t89 73t89.5 38q-79 125 -79 272q0 104 40.5 198.5t109.5 163.5t163.5 109.5t198.5 40.5 +t198.5 -40.5t163.5 -109.5t109.5 -163.5t40.5 -198.5q0 -147 -79 -272zM768 1408q-159 0 -271.5 -112.5t-112.5 -271.5t112.5 -271.5t271.5 -112.5t271.5 112.5t112.5 271.5t-112.5 271.5t-271.5 112.5zM1195 -128q88 0 150.5 71.5t62.5 173.5q0 239 -78.5 377t-225.5 145 +q-145 -127 -336 -127t-336 127q-147 -7 -225.5 -145t-78.5 -377q0 -102 62.5 -173.5t150.5 -71.5h854z" /> + <glyph glyph-name="uniF2C1" unicode="" horiz-adv-x="1280" +d="M1024 278q0 -64 -37 -107t-91 -43h-512q-54 0 -91 43t-37 107t9 118t29.5 104t61 78.5t96.5 28.5q80 -75 188 -75t188 75q56 0 96.5 -28.5t61 -78.5t29.5 -104t9 -118zM870 797q0 -94 -67.5 -160.5t-162.5 -66.5t-162.5 66.5t-67.5 160.5t67.5 160.5t162.5 66.5 +t162.5 -66.5t67.5 -160.5zM1152 -96v1376h-1024v-1376q0 -13 9.5 -22.5t22.5 -9.5h960q13 0 22.5 9.5t9.5 22.5zM1280 1376v-1472q0 -66 -47 -113t-113 -47h-960q-66 0 -113 47t-47 113v1472q0 66 47 113t113 47h352v-96q0 -14 9 -23t23 -9h192q14 0 23 9t9 23v96h352 +q66 0 113 -47t47 -113z" /> + <glyph glyph-name="uniF2C2" unicode="" horiz-adv-x="2048" +d="M896 324q0 54 -7.5 100.5t-24.5 90t-51 68.5t-81 25q-64 -64 -156 -64t-156 64q-47 0 -81 -25t-51 -68.5t-24.5 -90t-7.5 -100.5q0 -55 31.5 -93.5t75.5 -38.5h426q44 0 75.5 38.5t31.5 93.5zM768 768q0 80 -56 136t-136 56t-136 -56t-56 -136t56 -136t136 -56t136 56 +t56 136zM1792 288v64q0 14 -9 23t-23 9h-704q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h704q14 0 23 9t9 23zM1408 544v64q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM1792 544v64q0 14 -9 23t-23 9h-192q-14 0 -23 -9t-9 -23 +v-64q0 -14 9 -23t23 -9h192q14 0 23 9t9 23zM1792 800v64q0 14 -9 23t-23 9h-704q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h704q14 0 23 9t9 23zM128 1152h1792v96q0 14 -9 23t-23 9h-1728q-14 0 -23 -9t-9 -23v-96zM2048 1248v-1216q0 -66 -47 -113t-113 -47h-1728 +q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1728q66 0 113 -47t47 -113z" /> + <glyph glyph-name="uniF2C3" unicode="" horiz-adv-x="2048" +d="M896 324q0 -55 -31.5 -93.5t-75.5 -38.5h-426q-44 0 -75.5 38.5t-31.5 93.5q0 54 7.5 100.5t24.5 90t51 68.5t81 25q64 -64 156 -64t156 64q47 0 81 -25t51 -68.5t24.5 -90t7.5 -100.5zM768 768q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136z +M1792 352v-64q0 -14 -9 -23t-23 -9h-704q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h704q14 0 23 -9t9 -23zM1408 608v-64q0 -14 -9 -23t-23 -9h-320q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h320q14 0 23 -9t9 -23zM1792 608v-64q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v64 +q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1792 864v-64q0 -14 -9 -23t-23 -9h-704q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h704q14 0 23 -9t9 -23zM1920 32v1120h-1792v-1120q0 -13 9.5 -22.5t22.5 -9.5h1728q13 0 22.5 9.5t9.5 22.5zM2048 1248v-1216q0 -66 -47 -113t-113 -47 +h-1728q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1728q66 0 113 -47t47 -113z" /> + <glyph glyph-name="uniF2C4" unicode="" horiz-adv-x="1792" +d="M1255 749q0 318 -105 474.5t-330 156.5q-222 0 -326 -157t-104 -474q0 -316 104 -471.5t326 -155.5q74 0 131 17q-22 43 -39 73t-44 65t-53.5 56.5t-63 36t-77.5 14.5q-46 0 -79 -16l-49 97q105 91 276 91q132 0 215.5 -54t150.5 -155q67 149 67 402zM1645 117h117 +q3 -27 -2 -67t-26.5 -95t-58 -100.5t-107 -78t-162.5 -32.5q-71 0 -130.5 19t-105.5 56t-79 78t-66 96q-97 -27 -205 -27q-150 0 -292.5 58t-253 158.5t-178 249t-67.5 317.5q0 170 67.5 319.5t178.5 250.5t253.5 159t291.5 58q121 0 238.5 -36t217 -106t176 -164.5 +t119.5 -219t43 -261.5q0 -190 -80.5 -347.5t-218.5 -264.5q47 -70 93.5 -106.5t104.5 -36.5q61 0 94 37.5t38 85.5z" /> + <glyph glyph-name="uniF2C5" unicode="" horiz-adv-x="2304" +d="M453 -101q0 -21 -16 -37.5t-37 -16.5q-1 0 -13 3q-63 15 -162 140q-225 284 -225 676q0 341 213 614q39 51 95 103.5t94 52.5q19 0 35 -13.5t16 -32.5q0 -27 -63 -90q-98 -102 -147 -184q-119 -199 -119 -449q0 -281 123 -491q50 -85 136 -173q2 -3 14.5 -16t19.5 -21 +t17 -20.5t14.5 -23.5t4.5 -21zM1796 33q0 -29 -17.5 -48.5t-46.5 -19.5h-1081q-26 0 -45 19t-19 45q0 29 17.5 48.5t46.5 19.5h1081q26 0 45 -19t19 -45zM1581 644q0 -134 -67 -233q-25 -38 -69.5 -78.5t-83.5 -60.5q-16 -10 -27 -10q-7 0 -15 6t-8 12q0 9 19 30t42 46 +t42 67.5t19 88.5q0 76 -35 130q-29 42 -46 42q-3 0 -3 -5q0 -12 7.5 -35.5t7.5 -36.5q0 -22 -21.5 -35t-44.5 -13q-66 0 -66 76q0 15 1.5 44t1.5 44q0 25 -10 46q-13 25 -42 53.5t-51 28.5q-5 0 -7 -0.5t-3.5 -2.5t-1.5 -6q0 -2 16 -26t16 -54q0 -37 -19 -68t-46 -54 +t-53.5 -46t-45.5 -54t-19 -68q0 -98 42 -160q29 -43 79 -63q16 -5 17 -10q1 -2 1 -5q0 -16 -18 -16q-6 0 -33 11q-119 43 -195 139.5t-76 218.5q0 55 24.5 115.5t60 115t70.5 108.5t59.5 113.5t24.5 111.5q0 53 -25 94q-29 48 -56 64q-19 9 -19 21q0 20 41 20q50 0 110 -29 +q41 -19 71 -44.5t49.5 -51t33.5 -62.5t22 -69t16 -80q0 -1 3 -17.5t4.5 -25t5.5 -25t9 -27t11 -21.5t14.5 -16.5t18.5 -5.5q23 0 37 14t14 37q0 25 -20 67t-20 52t10 10q27 0 93 -70q72 -76 102.5 -156t30.5 -186zM2304 615q0 -274 -138 -503q-19 -32 -48 -72t-68 -86.5 +t-81 -77t-74 -30.5q-16 0 -31 15.5t-15 31.5q0 15 29 50.5t68.5 77t48.5 52.5q183 230 183 531q0 131 -20.5 235t-72.5 211q-58 119 -163 228q-2 3 -13 13.5t-16.5 16.5t-15 17.5t-15 20t-9.5 18.5t-4 19q0 19 16 35.5t35 16.5q70 0 196 -169q98 -131 146 -273t60 -314 +q2 -42 2 -64z" /> + <glyph glyph-name="uniF2C6" unicode="" horiz-adv-x="1792" +d="M1189 229l147 693q9 44 -10.5 63t-51.5 7l-864 -333q-29 -11 -39.5 -25t-2.5 -26.5t32 -19.5l221 -69l513 323q21 14 32 6q7 -5 -4 -15l-415 -375v0v0l-16 -228q23 0 45 22l108 104l224 -165q64 -36 81 38zM1792 640q0 -182 -71 -348t-191 -286t-286 -191t-348 -71 +t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" /> + <glyph glyph-name="uniF2C7" unicode="" horiz-adv-x="1024" +d="M640 192q0 -80 -56 -136t-136 -56t-136 56t-56 136q0 60 35 110t93 71v907h128v-907q58 -21 93 -71t35 -110zM768 192q0 77 -34 144t-94 112v768q0 80 -56 136t-136 56t-136 -56t-56 -136v-768q-60 -45 -94 -112t-34 -144q0 -133 93.5 -226.5t226.5 -93.5t226.5 93.5 +t93.5 226.5zM896 192q0 -185 -131.5 -316.5t-316.5 -131.5t-316.5 131.5t-131.5 316.5q0 182 128 313v711q0 133 93.5 226.5t226.5 93.5t226.5 -93.5t93.5 -226.5v-711q128 -131 128 -313zM1024 768v-128h-192v128h192zM1024 1024v-128h-192v128h192zM1024 1280v-128h-192 +v128h192z" /> + <glyph glyph-name="uniF2C8" unicode="" horiz-adv-x="1024" +d="M640 192q0 -80 -56 -136t-136 -56t-136 56t-56 136q0 60 35 110t93 71v651h128v-651q58 -21 93 -71t35 -110zM768 192q0 77 -34 144t-94 112v768q0 80 -56 136t-136 56t-136 -56t-56 -136v-768q-60 -45 -94 -112t-34 -144q0 -133 93.5 -226.5t226.5 -93.5t226.5 93.5 +t93.5 226.5zM896 192q0 -185 -131.5 -316.5t-316.5 -131.5t-316.5 131.5t-131.5 316.5q0 182 128 313v711q0 133 93.5 226.5t226.5 93.5t226.5 -93.5t93.5 -226.5v-711q128 -131 128 -313zM1024 768v-128h-192v128h192zM1024 1024v-128h-192v128h192zM1024 1280v-128h-192 +v128h192z" /> + <glyph glyph-name="uniF2C9" unicode="" horiz-adv-x="1024" +d="M640 192q0 -80 -56 -136t-136 -56t-136 56t-56 136q0 60 35 110t93 71v395h128v-395q58 -21 93 -71t35 -110zM768 192q0 77 -34 144t-94 112v768q0 80 -56 136t-136 56t-136 -56t-56 -136v-768q-60 -45 -94 -112t-34 -144q0 -133 93.5 -226.5t226.5 -93.5t226.5 93.5 +t93.5 226.5zM896 192q0 -185 -131.5 -316.5t-316.5 -131.5t-316.5 131.5t-131.5 316.5q0 182 128 313v711q0 133 93.5 226.5t226.5 93.5t226.5 -93.5t93.5 -226.5v-711q128 -131 128 -313zM1024 768v-128h-192v128h192zM1024 1024v-128h-192v128h192zM1024 1280v-128h-192 +v128h192z" /> + <glyph glyph-name="uniF2CA" unicode="" horiz-adv-x="1024" +d="M640 192q0 -80 -56 -136t-136 -56t-136 56t-56 136q0 60 35 110t93 71v139h128v-139q58 -21 93 -71t35 -110zM768 192q0 77 -34 144t-94 112v768q0 80 -56 136t-136 56t-136 -56t-56 -136v-768q-60 -45 -94 -112t-34 -144q0 -133 93.5 -226.5t226.5 -93.5t226.5 93.5 +t93.5 226.5zM896 192q0 -185 -131.5 -316.5t-316.5 -131.5t-316.5 131.5t-131.5 316.5q0 182 128 313v711q0 133 93.5 226.5t226.5 93.5t226.5 -93.5t93.5 -226.5v-711q128 -131 128 -313zM1024 768v-128h-192v128h192zM1024 1024v-128h-192v128h192zM1024 1280v-128h-192 +v128h192z" /> + <glyph glyph-name="uniF2CB" unicode="" horiz-adv-x="1024" +d="M640 192q0 -80 -56 -136t-136 -56t-136 56t-56 136q0 79 56 135.5t136 56.5t136 -56.5t56 -135.5zM768 192q0 77 -34 144t-94 112v768q0 80 -56 136t-136 56t-136 -56t-56 -136v-768q-60 -45 -94 -112t-34 -144q0 -133 93.5 -226.5t226.5 -93.5t226.5 93.5t93.5 226.5z +M896 192q0 -185 -131.5 -316.5t-316.5 -131.5t-316.5 131.5t-131.5 316.5q0 182 128 313v711q0 133 93.5 226.5t226.5 93.5t226.5 -93.5t93.5 -226.5v-711q128 -131 128 -313zM1024 768v-128h-192v128h192zM1024 1024v-128h-192v128h192zM1024 1280v-128h-192v128h192z" /> + <glyph glyph-name="uniF2CC" unicode="" horiz-adv-x="1920" +d="M1433 1287q10 -10 10 -23t-10 -23l-626 -626q-10 -10 -23 -10t-23 10l-82 82q-10 10 -10 23t10 23l44 44q-72 91 -81.5 207t46.5 215q-74 71 -176 71q-106 0 -181 -75t-75 -181v-1280h-256v1280q0 104 40.5 198.5t109.5 163.5t163.5 109.5t198.5 40.5q106 0 201 -41 +t166 -115q94 39 197 24.5t185 -79.5l44 44q10 10 23 10t23 -10zM1344 1024q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1600 896q-26 0 -45 19t-19 45t19 45t45 19t45 -19t19 -45t-19 -45t-45 -19zM1856 1024q26 0 45 -19t19 -45t-19 -45t-45 -19 +t-45 19t-19 45t19 45t45 19zM1216 896q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1408 832q0 26 19 45t45 19t45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45zM1728 896q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1088 768 +q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1344 640q-26 0 -45 19t-19 45t19 45t45 19t45 -19t19 -45t-19 -45t-45 -19zM1600 768q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1216 512q-26 0 -45 19t-19 45t19 45t45 19t45 -19 +t19 -45t-19 -45t-45 -19zM1472 640q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1088 512q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1344 512q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1216 384 +q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1088 256q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19z" /> + <glyph glyph-name="uniF2CD" unicode="" horiz-adv-x="1792" +d="M1664 448v-192q0 -169 -128 -286v-194q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v118q-63 -22 -128 -22h-768q-65 0 -128 22v-110q0 -17 -9.5 -28.5t-22.5 -11.5h-64q-13 0 -22.5 11.5t-9.5 28.5v186q-128 117 -128 286v192h1536zM704 864q0 -14 -9 -23t-23 -9t-23 9 +t-9 23t9 23t23 9t23 -9t9 -23zM768 928q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM704 992q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM832 992q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM768 1056q0 -14 -9 -23t-23 -9t-23 9 +t-9 23t9 23t23 9t23 -9t9 -23zM704 1120q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM1792 608v-64q0 -14 -9 -23t-23 -9h-1728q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96v640q0 106 75 181t181 75q108 0 184 -78q46 19 98 12t93 -39l22 22q11 11 22 0l42 -42 +q11 -11 0 -22l-314 -314q-11 -11 -22 0l-42 42q-11 11 0 22l22 22q-36 46 -40.5 104t23.5 108q-37 35 -88 35q-53 0 -90.5 -37.5t-37.5 -90.5v-640h1504q14 0 23 -9t9 -23zM896 1056q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM832 1120q0 -14 -9 -23t-23 -9 +t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM768 1184q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM960 1120q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM896 1184q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM832 1248q0 -14 -9 -23 +t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM1024 1184q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM960 1248q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM1088 1248q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23z" /> + <glyph glyph-name="uniF2CE" unicode="" +d="M994 344q0 -86 -17 -197q-31 -215 -55 -313q-22 -90 -152 -90t-152 90q-24 98 -55 313q-17 110 -17 197q0 168 224 168t224 -168zM1536 768q0 -240 -134 -434t-350 -280q-8 -3 -15 3t-6 15q7 48 10 66q4 32 6 47q1 9 9 12q159 81 255.5 234t96.5 337q0 180 -91 330.5 +t-247 234.5t-337 74q-124 -7 -237 -61t-193.5 -140.5t-128 -202t-46.5 -240.5q1 -184 99 -336.5t257 -231.5q7 -3 9 -12q3 -21 6 -45q1 -9 5 -32.5t6 -35.5q1 -9 -6.5 -15t-15.5 -2q-148 58 -261 169.5t-173.5 264t-52.5 319.5q7 143 66 273.5t154.5 227t225 157.5t272.5 70 +q164 10 315.5 -46.5t261 -160.5t175 -250.5t65.5 -308.5zM994 800q0 -93 -65.5 -158.5t-158.5 -65.5t-158.5 65.5t-65.5 158.5t65.5 158.5t158.5 65.5t158.5 -65.5t65.5 -158.5zM1282 768q0 -122 -53.5 -228.5t-146.5 -177.5q-8 -6 -16 -2t-10 14q-6 52 -29 92q-7 10 3 20 +q58 54 91 127t33 155q0 111 -58.5 204t-157.5 141.5t-212 36.5q-133 -15 -229 -113t-109 -231q-10 -92 23.5 -176t98.5 -144q10 -10 3 -20q-24 -41 -29 -93q-2 -9 -10 -13t-16 2q-95 74 -148.5 183t-51.5 234q3 131 69 244t177 181.5t241 74.5q144 7 268 -60t196.5 -187.5 +t72.5 -263.5z" /> + <glyph glyph-name="uniF2D0" unicode="" horiz-adv-x="1792" +d="M256 128h1280v768h-1280v-768zM1792 1248v-1216q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1472q66 0 113 -47t47 -113z" /> + <glyph glyph-name="uniF2D1" unicode="" horiz-adv-x="1792" +d="M1792 224v-192q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v192q0 66 47 113t113 47h1472q66 0 113 -47t47 -113z" /> + <glyph glyph-name="uniF2D2" unicode="" horiz-adv-x="2048" +d="M256 0h768v512h-768v-512zM1280 512h512v768h-768v-256h96q66 0 113 -47t47 -113v-352zM2048 1376v-960q0 -66 -47 -113t-113 -47h-608v-352q0 -66 -47 -113t-113 -47h-960q-66 0 -113 47t-47 113v960q0 66 47 113t113 47h608v352q0 66 47 113t113 47h960q66 0 113 -47 +t47 -113z" /> + <glyph glyph-name="uniF2D3" unicode="" horiz-adv-x="1792" +d="M1175 215l146 146q10 10 10 23t-10 23l-233 233l233 233q10 10 10 23t-10 23l-146 146q-10 10 -23 10t-23 -10l-233 -233l-233 233q-10 10 -23 10t-23 -10l-146 -146q-10 -10 -10 -23t10 -23l233 -233l-233 -233q-10 -10 -10 -23t10 -23l146 -146q10 -10 23 -10t23 10 +l233 233l233 -233q10 -10 23 -10t23 10zM1792 1248v-1216q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1472q66 0 113 -47t47 -113z" /> + <glyph glyph-name="uniF2D4" unicode="" horiz-adv-x="1792" +d="M1257 425l-146 -146q-10 -10 -23 -10t-23 10l-169 169l-169 -169q-10 -10 -23 -10t-23 10l-146 146q-10 10 -10 23t10 23l169 169l-169 169q-10 10 -10 23t10 23l146 146q10 10 23 10t23 -10l169 -169l169 169q10 10 23 10t23 -10l146 -146q10 -10 10 -23t-10 -23 +l-169 -169l169 -169q10 -10 10 -23t-10 -23zM256 128h1280v1024h-1280v-1024zM1792 1248v-1216q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1472q66 0 113 -47t47 -113z" /> + <glyph glyph-name="uniF2D5" unicode="" horiz-adv-x="1792" +d="M1070 358l306 564h-654l-306 -564h654zM1792 640q0 -182 -71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" /> + <glyph glyph-name="uniF2D6" unicode="" horiz-adv-x="1794" +d="M1291 1060q-15 17 -35 8.5t-26 -28.5t5 -38q14 -17 40 -14.5t34 20.5t-18 52zM895 814q-8 -8 -19.5 -8t-18.5 8q-8 8 -8 19t8 18q7 8 18.5 8t19.5 -8q7 -7 7 -18t-7 -19zM1060 740l-35 -35q-12 -13 -29.5 -13t-30.5 13l-38 38q-12 13 -12 30t12 30l35 35q12 12 29.5 12 +t30.5 -12l38 -39q12 -12 12 -29.5t-12 -29.5zM951 870q-7 -8 -18.5 -8t-19.5 8q-7 8 -7 19t7 19q8 8 19 8t19 -8t8 -19t-8 -19zM1354 968q-34 -64 -107.5 -85.5t-127.5 16.5q-38 28 -61 66.5t-21 87.5t39 92t75.5 53t70.5 -5t70 -51q2 -2 13 -12.5t14.5 -13.5t13 -13.5 +t12.5 -15.5t10 -15.5t8.5 -18t4 -18.5t1 -21t-5 -22t-9.5 -24zM1555 486q3 20 -8.5 34.5t-27.5 21.5t-33 17t-23 20q-40 71 -84 98.5t-113 11.5q19 13 40 18.5t33 4.5l12 -1q2 45 -34 90q6 20 6.5 40.5t-2.5 30.5l-3 10q43 24 71 65t34 91q10 84 -43 150.5t-137 76.5 +q-60 7 -114 -18.5t-82 -74.5q-30 -51 -33.5 -101t14.5 -87t43.5 -64t56.5 -42q-45 4 -88 36t-57 88q-28 108 32 222q-16 21 -29 32q-50 0 -89 -19q19 24 42 37t36 14l13 1q0 50 -13 78q-10 21 -32.5 28.5t-47 -3.5t-37.5 -40q2 4 4 7q-7 -28 -6.5 -75.5t19 -117t48.5 -122.5 +q-25 -14 -47 -36q-35 -16 -85.5 -70.5t-84.5 -101.5l-33 -46q-90 -34 -181 -125.5t-75 -162.5q1 -16 11 -27q-15 -12 -30 -30q-21 -25 -21 -54t21.5 -40t63.5 6q41 19 77 49.5t55 60.5q-2 2 -6.5 5t-20.5 7.5t-33 3.5q23 5 51 12.5t40 10t27.5 6t26 4t23.5 0.5q14 -7 22 34 +q7 37 7 90q0 102 -40 150q106 -103 101 -219q-1 -29 -15 -50t-27 -27l-13 -6q-4 -7 -19 -32t-26 -45.5t-26.5 -52t-25 -61t-17 -63t-6.5 -66.5t10 -63q-35 54 -37 80q-22 -24 -34.5 -39t-33.5 -42t-30.5 -46t-16.5 -41t-0.5 -38t25.5 -27q45 -25 144 64t190.5 221.5 +t122.5 228.5q86 52 145 115.5t86 119.5q47 -93 154 -178q104 -83 167 -80q39 2 46 43zM1794 640q0 -182 -71 -348t-191 -286t-286.5 -191t-348.5 -71t-348.5 71t-286.5 191t-191 286t-71 348t71 348t191 286t286.5 191t348.5 71t348.5 -71t286.5 -191t191 -286t71 -348z" /> + <glyph glyph-name="uniF2D7" unicode="" +d="M518 1353v-655q103 -1 191.5 1.5t125.5 5.5l37 3q68 2 90.5 24.5t39.5 94.5l33 142h103l-14 -322l7 -319h-103l-29 127q-15 68 -45 93t-84 26q-87 8 -352 8v-556q0 -78 43.5 -115.5t133.5 -37.5h357q35 0 59.5 2t55 7.5t54 18t48.5 32t46 50.5t39 73l93 216h89 +q-6 -37 -31.5 -252t-30.5 -276q-146 5 -263.5 8t-162.5 4h-44h-628l-376 -12v102l127 25q67 13 91.5 37t25.5 79l8 643q3 402 -8 645q-2 61 -25.5 84t-91.5 36l-127 24v102l376 -12h702q139 0 374 27q-6 -68 -14 -194.5t-12 -219.5l-5 -92h-93l-32 124q-31 121 -74 179.5 +t-113 58.5h-548q-28 0 -35.5 -8.5t-7.5 -30.5z" /> + <glyph glyph-name="uniF2D8" unicode="" +d="M922 739v-182q0 -4 0.5 -15t0 -15l-1.5 -12t-3.5 -11.5t-6.5 -7.5t-11 -5.5t-16 -1.5v309q9 0 16 -1t11 -5t6.5 -5.5t3.5 -9.5t1 -10.5v-13.5v-14zM1238 643v-121q0 -1 0.5 -12.5t0 -15.5t-2.5 -11.5t-7.5 -10.5t-13.5 -3q-9 0 -14 9q-4 10 -4 165v7v8.5v9t1.5 8.5l3.5 7 +t5 5.5t8 1.5q6 0 10 -1.5t6.5 -4.5t4 -6t2 -8.5t0.5 -8v-9.5v-9zM180 407h122v472h-122v-472zM614 407h106v472h-159l-28 -221q-20 148 -32 221h-158v-472h107v312l45 -312h76l43 319v-319zM1039 712q0 67 -5 90q-3 16 -11 28.5t-17 20.5t-25 14t-26.5 8.5t-31 4t-29 1.5 +h-29.5h-12h-91v-472h56q169 -1 197 24.5t25 180.5q-1 62 -1 100zM1356 515v133q0 29 -2 45t-9.5 33.5t-24.5 25t-46 7.5q-46 0 -77 -34v154h-117v-472h110l7 30q30 -36 77 -36q50 0 66 30.5t16 83.5zM1536 1248v-1216q0 -66 -47 -113t-113 -47h-1216q-66 0 -113 47t-47 113 +v1216q0 66 47 113t113 47h1216q66 0 113 -47t47 -113z" /> + <glyph glyph-name="uniF2D9" unicode="" horiz-adv-x="2176" +d="M1143 -197q-6 1 -11 4q-13 8 -36 23t-86 65t-116.5 104.5t-112 140t-89.5 172.5q-17 3 -175 37q66 -213 235 -362t391 -184zM502 409l168 -28q-25 76 -41 167.5t-19 145.5l-4 53q-84 -82 -121 -224q5 -65 17 -114zM612 1018q-43 -64 -77 -148q44 46 74 68zM2049 584 +q0 161 -62 307t-167.5 252t-250.5 168.5t-304 62.5q-147 0 -281 -52.5t-240 -148.5q-30 -58 -45 -160q60 51 143 83.5t158.5 43t143 13.5t108.5 -1l40 -3q33 -1 53 -15.5t24.5 -33t6.5 -37t-1 -28.5q-126 11 -227.5 0.5t-183 -43.5t-142.5 -71.5t-131 -98.5 +q4 -36 11.5 -92.5t35.5 -178t62 -179.5q123 -6 247.5 14.5t214.5 53.5t162.5 67t109.5 59l37 24q22 16 39.5 20.5t30.5 -5t17 -34.5q14 -97 -39 -121q-208 -97 -467 -134q-135 -20 -317 -16q41 -96 110 -176.5t137 -127t130.5 -79t101.5 -43.5l39 -12q143 -23 263 15 +q195 99 314 289t119 418zM2123 621q-14 -135 -40 -212q-70 -208 -181.5 -346.5t-318.5 -253.5q-48 -33 -82 -44q-72 -26 -163 -16q-36 -3 -73 -3q-283 0 -504.5 173t-295.5 442q-1 0 -4 0.5t-5 0.5q-6 -50 2.5 -112.5t26 -115t36 -98t31.5 -71.5l14 -26q8 -12 54 -82 +q-71 38 -124.5 106.5t-78.5 140t-39.5 137t-17.5 107.5l-2 42q-5 2 -33.5 12.5t-48.5 18t-53 20.5t-57.5 25t-50 25.5t-42.5 27t-25 25.5q19 -10 50.5 -25.5t113 -45.5t145.5 -38l2 32q11 149 94 290q41 202 176 365q28 115 81 214q15 28 32 45t49 32q158 74 303.5 104 +t302 11t306.5 -97q220 -115 333 -336t87 -474z" /> + <glyph glyph-name="uniF2DA" unicode="" horiz-adv-x="1792" +d="M1341 752q29 44 -6.5 129.5t-121.5 142.5q-58 39 -125.5 53.5t-118 4.5t-68.5 -37q-12 -23 -4.5 -28t42.5 -10q23 -3 38.5 -5t44.5 -9.5t56 -17.5q36 -13 67.5 -31.5t53 -37t40 -38.5t30.5 -38t22 -34.5t16.5 -28.5t12 -18.5t10.5 -6t11 9.5zM1704 178 +q-52 -127 -148.5 -220t-214.5 -141.5t-253 -60.5t-266 13.5t-251 91t-210 161.5t-141.5 235.5t-46.5 303.5q1 41 8.5 84.5t12.5 64t24 80.5t23 73q-51 -208 1 -397t173 -318t291 -206t346 -83t349 74.5t289 244.5q20 27 18 14q0 -4 -4 -14zM1465 627q0 -104 -40.5 -199 +t-108.5 -164t-162 -109.5t-198 -40.5t-198 40.5t-162 109.5t-108.5 164t-40.5 199t40.5 199t108.5 164t162 109.5t198 40.5t198 -40.5t162 -109.5t108.5 -164t40.5 -199zM1752 915q-65 147 -180.5 251t-253 153.5t-292 53.5t-301 -36.5t-275.5 -129t-220 -211.5t-131 -297 +t-10 -373q-49 161 -51.5 311.5t35.5 272.5t109 227t165.5 180.5t207 126t232 71t242.5 9t236 -54t216 -124.5t178 -197q33 -50 62 -121t31 -112zM1690 573q12 244 -136.5 416t-396.5 240q-8 0 -10 5t24 8q125 -4 230 -50t173 -120t116 -168.5t58.5 -199t-1 -208 +t-61.5 -197.5t-122.5 -167t-185 -117.5t-248.5 -46.5q108 30 201.5 80t174 123t129.5 176.5t55 225.5z" /> + <glyph glyph-name="uniF2DB" unicode="" +d="M192 256v-128h-112q-16 0 -16 16v16h-48q-16 0 -16 16v32q0 16 16 16h48v16q0 16 16 16h112zM192 512v-128h-112q-16 0 -16 16v16h-48q-16 0 -16 16v32q0 16 16 16h48v16q0 16 16 16h112zM192 768v-128h-112q-16 0 -16 16v16h-48q-16 0 -16 16v32q0 16 16 16h48v16 +q0 16 16 16h112zM192 1024v-128h-112q-16 0 -16 16v16h-48q-16 0 -16 16v32q0 16 16 16h48v16q0 16 16 16h112zM192 1280v-128h-112q-16 0 -16 16v16h-48q-16 0 -16 16v32q0 16 16 16h48v16q0 16 16 16h112zM1280 1440v-1472q0 -40 -28 -68t-68 -28h-832q-40 0 -68 28 +t-28 68v1472q0 40 28 68t68 28h832q40 0 68 -28t28 -68zM1536 208v-32q0 -16 -16 -16h-48v-16q0 -16 -16 -16h-112v128h112q16 0 16 -16v-16h48q16 0 16 -16zM1536 464v-32q0 -16 -16 -16h-48v-16q0 -16 -16 -16h-112v128h112q16 0 16 -16v-16h48q16 0 16 -16zM1536 720v-32 +q0 -16 -16 -16h-48v-16q0 -16 -16 -16h-112v128h112q16 0 16 -16v-16h48q16 0 16 -16zM1536 976v-32q0 -16 -16 -16h-48v-16q0 -16 -16 -16h-112v128h112q16 0 16 -16v-16h48q16 0 16 -16zM1536 1232v-32q0 -16 -16 -16h-48v-16q0 -16 -16 -16h-112v128h112q16 0 16 -16v-16 +h48q16 0 16 -16z" /> + <glyph glyph-name="uniF2DC" unicode="" horiz-adv-x="1664" +d="M1566 419l-167 -33l186 -107q23 -13 29.5 -38.5t-6.5 -48.5q-14 -23 -39 -29.5t-48 6.5l-186 106l55 -160q13 -38 -12 -63.5t-60.5 -20.5t-48.5 42l-102 300l-271 156v-313l208 -238q16 -18 17 -39t-11 -36.5t-28.5 -25t-37 -5.5t-36.5 22l-112 128v-214q0 -26 -19 -45 +t-45 -19t-45 19t-19 45v214l-112 -128q-16 -18 -36.5 -22t-37 5.5t-28.5 25t-11 36.5t17 39l208 238v313l-271 -156l-102 -300q-13 -37 -48.5 -42t-60.5 20.5t-12 63.5l55 160l-186 -106q-23 -13 -48 -6.5t-39 29.5q-13 23 -6.5 48.5t29.5 38.5l186 107l-167 33 +q-29 6 -42 29t-8.5 46.5t25.5 40t50 10.5l310 -62l271 157l-271 157l-310 -62q-4 -1 -13 -1q-27 0 -44 18t-19 40t11 43t40 26l167 33l-186 107q-23 13 -29.5 38.5t6.5 48.5t39 30t48 -7l186 -106l-55 160q-13 38 12 63.5t60.5 20.5t48.5 -42l102 -300l271 -156v313 +l-208 238q-16 18 -17 39t11 36.5t28.5 25t37 5.5t36.5 -22l112 -128v214q0 26 19 45t45 19t45 -19t19 -45v-214l112 128q16 18 36.5 22t37 -5.5t28.5 -25t11 -36.5t-17 -39l-208 -238v-313l271 156l102 300q13 37 48.5 42t60.5 -20.5t12 -63.5l-55 -160l186 106 +q23 13 48 6.5t39 -29.5q13 -23 6.5 -48.5t-29.5 -38.5l-186 -107l167 -33q27 -5 40 -26t11 -43t-19 -40t-44 -18q-9 0 -13 1l-310 62l-271 -157l271 -157l310 62q29 6 50 -10.5t25.5 -40t-8.5 -46.5t-42 -29z" /> + <glyph glyph-name="uniF2DD" unicode="" horiz-adv-x="1792" +d="M1473 607q7 118 -33 226.5t-113 189t-177 131t-221 57.5q-116 7 -225.5 -32t-192 -110.5t-135 -175t-59.5 -220.5q-7 -118 33 -226.5t113 -189t177.5 -131t221.5 -57.5q155 -9 293 59t224 195.5t94 283.5zM1792 1536l-349 -348q120 -117 180.5 -272t50.5 -321 +q-11 -183 -102 -339t-241 -255.5t-332 -124.5l-999 -132l347 347q-120 116 -180.5 271.5t-50.5 321.5q11 184 102 340t241.5 255.5t332.5 124.5q167 22 500 66t500 66z" /> + <glyph glyph-name="uniF2DE" unicode="" horiz-adv-x="1792" +d="M948 508l163 -329h-51l-175 350l-171 -350h-49l179 374l-78 33l21 49l240 -102l-21 -50zM563 1100l304 -130l-130 -304l-304 130zM907 915l240 -103l-103 -239l-239 102zM1188 765l191 -81l-82 -190l-190 81zM1680 640q0 159 -62 304t-167.5 250.5t-250.5 167.5t-304 62 +t-304 -62t-250.5 -167.5t-167.5 -250.5t-62 -304t62 -304t167.5 -250.5t250.5 -167.5t304 -62t304 62t250.5 167.5t167.5 250.5t62 304zM1792 640q0 -182 -71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71 +t286 -191t191 -286t71 -348z" /> + <glyph glyph-name="uniF2E0" unicode="" horiz-adv-x="1920" +d="M1334 302q-4 24 -27.5 34t-49.5 10.5t-48.5 12.5t-25.5 38q-5 47 33 139.5t75 181t32 127.5q-14 101 -117 103q-45 1 -75 -16l-3 -2l-5 -2.5t-4.5 -2t-5 -2t-5 -0.5t-6 1.5t-6 3.5t-6.5 5q-3 2 -9 8.5t-9 9t-8.5 7.5t-9.5 7.5t-9.5 5.5t-11 4.5t-11.5 2.5q-30 5 -48 -3 +t-45 -31q-1 -1 -9 -8.5t-12.5 -11t-15 -10t-16.5 -5.5t-17 3q-54 27 -84 40q-41 18 -94 -5t-76 -65q-16 -28 -41 -98.5t-43.5 -132.5t-40 -134t-21.5 -73q-22 -69 18.5 -119t110.5 -46q30 2 50.5 15t38.5 46q7 13 79 199.5t77 194.5q6 11 21.5 18t29.5 0q27 -15 21 -53 +q-2 -18 -51 -139.5t-50 -132.5q-6 -38 19.5 -56.5t60.5 -7t55 49.5q4 8 45.5 92t81.5 163.5t46 88.5q20 29 41 28q29 0 25 -38q-2 -16 -65.5 -147.5t-70.5 -159.5q-12 -53 13 -103t74 -74q17 -9 51 -15.5t71.5 -8t62.5 14t20 48.5zM383 86q3 -15 -5 -27.5t-23 -15.5 +q-14 -3 -26.5 5t-15.5 23q-3 14 5 27t22 16t27 -5t16 -23zM953 -177q12 -17 8.5 -37.5t-20.5 -32.5t-37.5 -8t-32.5 21q-11 17 -7.5 37.5t20.5 32.5t37.5 8t31.5 -21zM177 635q-18 -27 -49.5 -33t-57.5 13q-26 18 -32 50t12 58q18 27 49.5 33t57.5 -12q26 -19 32 -50.5 +t-12 -58.5zM1467 -42q19 -28 13 -61.5t-34 -52.5t-60.5 -13t-51.5 34t-13 61t33 53q28 19 60.5 13t52.5 -34zM1579 562q69 -113 42.5 -244.5t-134.5 -207.5q-90 -63 -199 -60q-20 -80 -84.5 -127t-143.5 -44.5t-140 57.5q-12 -9 -13 -10q-103 -71 -225 -48.5t-193 126.5 +q-50 73 -53 164q-83 14 -142.5 70.5t-80.5 128t-2 152t81 138.5q-36 60 -38 128t24.5 125t79.5 98.5t121 50.5q32 85 99 148t146.5 91.5t168 17t159.5 -66.5q72 21 140 17.5t128.5 -36t104.5 -80t67.5 -115t17.5 -140.5q52 -16 87 -57t45.5 -89t-5.5 -99.5t-58 -87.5z +M455 1222q14 -20 9.5 -44.5t-24.5 -38.5q-19 -14 -43.5 -9.5t-37.5 24.5q-14 20 -9.5 44.5t24.5 38.5q19 14 43.5 9.5t37.5 -24.5zM614 1503q4 -16 -5 -30.5t-26 -18.5t-31 5.5t-18 26.5q-3 17 6.5 31t25.5 18q17 4 31 -5.5t17 -26.5zM1800 555q4 -20 -6.5 -37t-30.5 -21 +q-19 -4 -36 6.5t-21 30.5t6.5 37t30.5 22q20 4 36.5 -7.5t20.5 -30.5zM1136 1448q16 -27 8.5 -58.5t-35.5 -47.5q-27 -16 -57.5 -8.5t-46.5 34.5q-16 28 -8.5 59t34.5 48t58 9t47 -36zM1882 792q4 -15 -4 -27.5t-23 -16.5q-15 -3 -27.5 5.5t-15.5 22.5q-3 15 5 28t23 16 +q14 3 26.5 -5t15.5 -23zM1691 1033q15 -22 10.5 -49t-26.5 -43q-22 -15 -49 -10t-42 27t-10 49t27 43t48.5 11t41.5 -28z" /> + <glyph glyph-name="uniF2E1" unicode="" horiz-adv-x="1792" + /> + <glyph glyph-name="uniF2E2" unicode="" horiz-adv-x="1792" + /> + <glyph glyph-name="uniF2E3" unicode="" horiz-adv-x="1792" + /> + <glyph glyph-name="uniF2E4" unicode="" horiz-adv-x="1792" + /> + <glyph glyph-name="uniF2E5" unicode="" horiz-adv-x="1792" + /> + <glyph glyph-name="uniF2E6" unicode="" horiz-adv-x="1792" + /> + <glyph glyph-name="uniF2E7" unicode="" horiz-adv-x="1792" + /> + <glyph glyph-name="_698" unicode="" horiz-adv-x="1792" + /> + <glyph glyph-name="uniF2E9" unicode="" horiz-adv-x="1792" + /> + <glyph glyph-name="uniF2EA" unicode="" horiz-adv-x="1792" + /> + <glyph glyph-name="uniF2EB" unicode="" horiz-adv-x="1792" + /> + <glyph glyph-name="uniF2EC" unicode="" horiz-adv-x="1792" + /> + <glyph glyph-name="uniF2ED" unicode="" horiz-adv-x="1792" + /> + <glyph glyph-name="uniF2EE" unicode="" horiz-adv-x="1792" + /> + <glyph glyph-name="lessequal" unicode="" horiz-adv-x="1792" + /> + </font> +</defs></svg> diff --git a/assets/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.ttf b/assets/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.ttf new file mode 100644 index 0000000000000000000000000000000000000000..35acda2fa1196aad98c2adf4378a7611dd713aa3 GIT binary patch literal 165548 zcmd4434D~*)jxjkv&@#+*JQHIB(r2Agk&ZO5W=u;0Z~v85Ce*$fTDsRbs2>!AXP+E zv})s8XszXKwXa&S)7IKescosX*7l99R$G?_w7v?NC%^Bx&rC7|(E7f=|L^lpa-Zk9 z`?>d?d+s^so_oVMW6Z|VOlEVZPMtq{)pOIHX3~v25n48F@|3AkA5-983xDXec_W** zHg8HX#uvihecqa7Yb`$*a~)&Wy^KjmE?joS+JOO-B;B|Y@umw`Uv<H)|NZ!E#)6MA zsq5L5E0&$_-1gQ8#JvvJx)K2n+43aH^THolxn|wQDOVML8UCjjv-GXL^t@%#zaCt| znB!i?ikxefZCooiNM(p`NBYnu%hs&;>s>da><dw!a^u=duUPl(Tfh1MlUDVi&h?Di zrtn|x{ME*@&vkVCixn9Wz}TUdmzwkM0RU{~2J)JiByym5#tdu#L1u>d0W;5qQ!4Qz zJxL+bkEIe8*8}j>Q>BETG1+ht-^o+}utRA<*p2#Ix&jHe=hB??wf3sZuV5(_`d1DH zgI+ncCI1s*Tuw6@6DFOB@-mE3%l-{_4z<*f9!g8!<Nzo$=DrKcxk^p5OY&(bFU8Rt z;gl~Z%A@c!YZmEp@%ixloAN1Xkv~Q0WTyM+o65?Un}fkZ@K9VHCQ73qY%pE!oBStr zNKbWBp8Q+nrEoa<9xN}-Hi`D+(iX-WfD?e_9=JvMw)`9Klt`0iNtBfo_3CBYs2))l z>dcoz@f1eyoO9;V<o%)zh+8Ba(h`gUPQ1~VDavPpD=br#g?M`B!{xjmZwgcJ9*oDg zNSAx(VHIP+5SL~R=(BV4X=rQ&oQM;30S?4Tx$nU`MS99#=+ewb>5yN|*Pk0}XYPFk z!g(%@Qka**;2iW8;b{R|Dg0FbU_E9^hd3H%a#EV5;HVvgVS_k;c*=`1YN*`2lhZm3 zqOTF2Pfz8N%lA<(eJUSDWevumUJ;M<C?`d6<WSZKIGd7Yv&l(mHUe(YpRWUPG{zzi z!I6VSltbkXh9NEohn_Z<CtnWY2#yre+YmM)msbLu5|u%1%e}h+2ZLK~Kr_f8Jr{8Z zM|xX+e&Sn3ctn&%`3oGiAK_MtQ}9i36vlJk<VRd<J{<MS<O<6;**C$Na|!tde9KHB zc&Hw{+XwTcSruTbLbz}UuM#eu>ocT>zZ5W08%2JkP2szU{CP(((>LmzOmB>ZOpelu zIw>A5mu@gGU}>QA1RKFi-$*aQL_KL1GNuOxs0@)VEz<hv`#6Vi@+){#9VR%ckHRP~ zIhy-~?+9Cy52v^IPV4VHeK3B^YV&c0X#r=7%0=5myQsXuJo&O1b5d9?JVg1aZMnKd zeT8M8;ya#)IR}3TZx4Ov;1T@{ct#`4O?Bnc4VDjoC*q3>%g?77_AY_{e55-&2X`IC z!*9krPH>;hA+4QUe(ZB_4Z@L!DgUN;`X-m}3;G6(Mf9flyest6ciunvokm)?oZmzF z@?{e2C{v;^ys6AQy_IN=B99>#C*fPn3ra`%a_!FN6aIXi^rn1ymrrZ@gw3bA$$zqb zqOxiHDSsYDDkGmZpD$nT@HfSi%fmt6l*S0Iupll)-&7{*yFioy4w3x%G<fIxL6il* zAL;CPmlvcNOiwT)JWBNz#^=J%$itb7n^I6$h{E!IdLwNlpFaPlG`X_F2wR16YbXxk zL^t#{>VEpx@jWf@QO?itTs?#7)d3a-Ug&FLt_)FMnmOp5gGJy@z7B*(^RVW^e1dkQ zkMHw*dK%Ayu_({yrG6RifN!GjP=|nt${60CMrjDAK)0HZCYpnJB&8QF&0_TaoF9-S zu?&_mPAU0&@X=Qpc>I^~UdvKIk0usk``F{`3HAbeHC$CyQPtgN@2lwR?3>fKwC|F> zYx{2LyT9-8zVGxM?E7=y2YuRM`{9bijfXoA&pEvG@Fj<@J$%dI`wu^U__@Oe5C8e_ z2ZyyI_9GQXI*-gbvh>I$N3K0`%aQw!JbvW4BL|QC`N#+Vf_#9QLu~J`8d;ySFWi^v zo7>mjx3(|cx3jOOZ+~B=@8!PUzP`iku=8-}aMR(`;kk#q53fC(KD_gA&*A-tGlyS3 z+<Un12s`3D5<ZeTGWSULk+nzCM|K|RIkNvq=E%!Oda1^NzYZ)JSU50mVB)~2Kfm** z_y6>m)8@1~El#u3<TN@BPSvS6WvAr$m*XSHhmIqT!;U`3KOG-9-gms`c-Qd{$KM_A zINo;r&GDAwO~+pye{sCw=ym+r@h8XYjz2nHbNs>as^j;LR~)}{9CG~D_9MNw(aQga zKO~TeK}MY%7{tgG{veXj;r|am2GwFztR{2O|5v~?px`g+cB0=PQ}aFOx^-}vA95F5 zA7=4<%*Y5_FJ|j%P>qdnh_@iTs0Qv3Shg)-OV0=S+zU1vekc4cfZ>81?nWLD;PJf5 zm^TgA&zNr~$ZdkLfD=nH@)f_xSjk$*;M3uDgT;zqnj*X$`6@snD%LSpiMm2N;QAN~ z_kcBPVyrp@Qi?Q@UdCdRu{^&CvWYrt=QCD^e09&FD^N$nM_`>%e`5*`?~&bbh->n~ zJ<Qms-HbKwWUS?U#u5oQ_>(9*nTC4`EGNEOm%t%U8(?hP3%1b;hjQAV0Nc?8hxeG3 zaPKiTHp5uQTE@n~b#}l3uJMQ)kGfOHpF%kkn&43O#D#F5Fg6KwPr4VR9c4{M`YDK; z3jZ{uoAx?m(^2k>9gNLvXKdDEjCCQ+Y~-2K00%hd9AfOW{fx~8OmhL>=?S<V#?G+9 zt!8W<(#_k$*nGsFi82@TF}4upE;2E;I0d(Zu_YaFfaM&dTUrB$I?hEI-D??Jj{M6% z0&Aqey~o&!xo|IId3~O-3sL5UsPm#OxC~<#PsS2vg#%2h(_k@Ej9r5Kmm+@c7RD}n zn6b-I_Z1r%TjzvB-u1}yC6seDgL{^-YY=`7(p|fivFmm-mPXk1#c(?q+dQ4IEnYa3 z|7GO;@|#eYtY+*c)Uy?^Z_6-tGxG2F8Dn2T`dbipEAs3N!6ELp`Hbzd!Xa$e7C40M z>SyfsZaC!Gt-z(=`WU+-&Dfn0#_n3e*q()q-CYLpelpxsjC~b#-P^<1eJJmK#NGc1 zV_&<Mu^z-fFqg3h8{i&h?4fqJy^KA4K4XudoV`04`=*Jp$57T|?=ki*_`mfIV~?Y* zZx_SuXKep;xL(HoV<X&)jD05rw+`-SjD2?@+((Q(v6e9~KI}=9`#qHPy+e%s=M!*! zj6H>XPb2-)pD^|e^5@<6_cHeE7RC;w7<*1(><1_>^E_ievcm0P?8kubdDQj%vyA=3 z3HKCZFYIRQXH9UujQt#S{T$`}0_FTN4TrE7KVs}9q&bK>55B|Lul6(cGRpdO1Kd`| zeq(~e`?pp&g#Y$EXw}*o`yJwccQ0eFbi*Ov?^iSS>U6j#82bal{s6dMn-2#V{#Xo$ zI$lq~{fx0cA?=^g&OdKq?7tBAUym`?3z*+P_+QpC_SX>Hn~c4gX6!Ab|67K!w~_Ac z_ZWKz;eUUXv46n53-{h3#@>IKu@7En?4O7`qA>R1M~r=hy#Got_OTNVaQ-*)f3gq` zWqlf9>?rCwhC2Ie;GSYEYlZ8Edx9~|1c$Hz6P6|~v_elnBK`=R&nMuzUuN8VKI0ZA z+#be@iW#>ma1S$XYhc_CQta5uxC`H|9>(1-GVW=IdlO`OC*!^vIHdJ2gzINKkYT)d z3*#jl84q5~c<Fq`%MLMKo`S=>0(mMGIK+jJFO2k6NLvlqs#h}}L0klN#8)z2^A6*6 zU5q!Nj7Gdit%LiB@#bE}TbkhZGoIMXcoN~QNYfU9dezGK=;@4)al-X6K6WSL9b4dD zWqdqfOo0cRfI27sjPXfulka7G3er!7o3@tm>3GioJTpUZZ!$jX5aV4vjL$A+d`^n- zxp1e$e?~9k^CmMsKg9T%fbFbqIHX;GIu<72kY<qrx0Uh5=fffW614f8R~cW5xbEGI zFGF3+o@IPF;5-lc&VP*Y73&zkU?t-hzRvi{Cm6qI3F8-UWc-pXjIT{Geg(?8(#iOS zpE14>ZMzEPZ`#55myqXbyss&PdzkU-kng%ZaGx-qUd{ORDE9`W-<*I${1)W@@_xo| z#P?RjZA0Ge?Tp_{4)ER51-F;+Tjw*r6ZPHZW&C#J-;MVj3S2+qccSdOkoNAY8NUbR z-HUYhnc!Y!{C<Retr+ed#(SP;{6Q<@4<#6Xcq8MFpx#H*jDH<<>@9;sxqIIma{CrC z{*4;OzZrsik@3eKWBglt8Gju9$G0;6ZPfp5`1hya;Q!vUjQ{6qsNQ=S2c6;1ApV)% zjDJ4@_b}tnn&43HfiA|MBZsgbpsdVv#(xMHfA~D(KUU!0Wc>La#(y%O@fT{~-ede{ zR>pr0_Y2hXOT@kS3F8L=^RH0;%c~jx_4$nd=5@w@I~NXdzuUt2E2!)DYvKACfAu5A zUwe%4KcdXn;r@iOKr8s4QQm)bG5$uH@xLJ7o5hU3g}A?UF#a~+dV4S9??m7ZG5+_} zjQ<05{sZ6d0><|ea8JQ~#Q6It>z^jLhZ*lv;9g|>Fxqwm@O+4TAHKu*zfkVS4R9I8 z{~NIVcQ50g0KQKVb`<_&>lp7xn*Q?{2i@S=9gJ(JgXqP;%S_@4CSmVFk{g($tYngU z2omdDCYcd#!MC-SNwz*FIf|L&M40PMCV4uT<VAWP9QZ3K(8Q$Tb|#fXm=xT~q*8pB zKf$Dm`EV~XDRecH!YI4yF(yU2m=s0&*mNevk+$X|Ce`j>QXRtTUT0GMZYDM0-H5Up z-(yk}+^8)~YEHrRGpXe%CMDJ}DT(-2<Q*Mi(ir3)bBIY}t#Bx_qXzC(CXGulX*|-W z_AqGz+A*nzNt02=RQRWN!y*5S7a8_|{&$Y81rO_la3GW5*cNt$WmnkM%QISPt<<wt z4IN!;U`HAKaCXiBGd!fGSvfpjBX@<H{a!<LxGI)tZ3(-0ESc!!E#c-0Zg{9ZyOpPc zu~@J_O;4W6Zmo~h1k`k(CZbNQMs$|N5;6Q?b8BOLb)eK_Dy2HGOJrcEqaGfY*Dh5x zN{LRXr8(eIkM|~8+jwhBGjtM@S6;a2!j+Tp8gbEr?D5`Mg`BcFYueS&v7Y8R^*&$y zob&ODOC|4T#})?2Kdo%BaHh1AWCR$}fWgSZXt$Gv$Z<5aD$enU#3ZM?H4;+%ZXdeA zucWn4wOh1LxshKk8@m#%5pCahU%yp5cHq)W4{()NaP`2YSMvo?2?@ASPpqXAT`_*v z)k7&RJ)j-C_4V&+`=T@&Y#?nU-As^;W3wURy9`FfXqW2IAv_+7#^NroAAQ~G>W~^` zjDf-D4fq2U%2=tnQ*LW*>*Q@NeQ=U48Xk01IuzADy1ym0rit^WHK~^SwU449k4??k zJX|$cO-EBU&+R{a*)XQ6t<lT5x3R5ijN#=Uww{w-I`L>~;?kuP)y%}DA(=%g4sNM$ z8a1k^e#^m%NS4_=9;HTdn_VW0>ap!zx91UcR50pxM}wo(NA}d;)_n~5mQGZt41J8L zZE5Hkn1U{CRFZ(Oxk3tb${0}UQ~92RJG;|T-PJKt>+QV$(z%hy+)J<T?A6}N-j;St zi%gMo&%b5T>z~xmNJS#48TFsM{-?LHd-bxvg|X{pRq&u74~nC4i>i16LEAiprfpGA zYjeP(qECX_9cOW$*W=U1YvVDXKItrNcS$?{_zh2o=MDaGyL^>DsNJtwjW%Do^}YA3 z<vxR*f5exU`l99;{HL|G+UOai(-C;1*KH>3HS=f@249Y<c{olDhH@Ei))pN&pe^Ff zGx#Qc75}M#tM=4jNnT#t$*<LJ=+u6%E&l0GWlJ8+=FfnVa67G1-}`75M{^jGK*#$- zZOs)ja~eW1XKP4h*DUP+#=>h{jnme5ZRV>tcdeh+=o(;eXg_-64c@tJ&As=oIrFZ& z*Gx&Lr>wdAF8POg_#5blBAP!&nm-O!$wspA>@;>RyOdqWZe?F%--gC9nTXZ%DnmK< z`p0sh@aOosD-jbIo<n&)Ed2@o&q@Dz^$njmJRJ)PDt3y8!eYTJBQhuB*$-bnp<0kr z!}n0C&npvC?o%;o445>je0ec`&&fWsK?xPdf*L)Qp(MwKKIOtB+EDn(3w-9Ns9O~i z7MwnG8-?RZlv&XIJZUK*;)r!1@Bh4bnRO*JmgwqANa8v4EvHWvBQYYGT?tN4>BRz1 zf1&5N7@@!g89ym5LO{@=9>;Y8=^ExA9{+#aKfFGPwby8wn)db@o}%Z_x0EjQWsmb6 zA9uX(vr-n8$U~x9dhk~VKeI!h^3Z2NXu;>n6BHB%6e2u2VJ!ZykHWv-t19}tU-Yz$ zHXl2#_m7V&O!q(RtK+(Yads868*Wm*!~EzJtW!oq)kw}`iSZl@lNpanZn&u|+px84 zZrN7t&ayK4;4x_@`Q;;XMO4{VelhvW%CtX7w;>J6y=346)vfGe)zJBQ9o$eAhcOPy zjwRa6$CvN-8qHjFi;}h1wAb{Kcnn{;+ITEi`fCUk^_(hJ&q1Z=yo*jRs<94E#yX67 zRj)s)V&gd0VVZGcLALQ|_Lp<4{XEBIF-*yma#;%V*m^xSuqeG?H-<is<Gp4jPsMvl zy(i?PLjG33kUe?vtWz*#g>7=M0Cq%%W9`2Oe>Ov)OMv8yKrI^mZ$ql{A!!3mw_27Y zE=V#cA@HopguAWPAMhKDb__-Z_(TN7;*A`<V!-bvnypiC;;A<s)ZWy7roDM^(*wKe zFRBbV>XxrMefxoz4{Seu)$%$=sPf{vT@Pf_T`RlrC#CPDl$#FnvU|VBC$0(E>+3EG z&3xsml}L_UE3bNGX6T~2dV6S%_M9{`E9kgHPa+9mas{tj$S<&{z?nRzH2b4~4m^Wc zVF+o4`w9BO_!IohZO_=<;=$8j?7KUk(S5llK6wfy9m$GsiN5*e{q(ZS6vU4l6&{s5 zXrJJ@giK>(m%yKhRT;egW||O~pGJ&`7b8-QIchNCms)}88aL8Jh{cIp1uu`FMo!ZP z1fne;+5#%k3SM7Kqe|`%w1JI=6hJJrog4j?5Iq!j=b=0AJS5%ev_9?eR!_H>OLzLM z_U#QLoi=0npY1+gHmde37Kgp)+PKl=nC>pM|EJCAEPBRXQZvb74&LUs*^W<qi`ikb zULO&OgAOE?{8Yo8e9fP&eyOZA+Pu&jv_x+)uMRl2HkY|<PdR<7%te>CT5Q%L-{O+y zQKgd4Cek)Gjy~OLwb&xJT2>V%wrprI+4aOtWs*;<9pGE>o8u|RvPtYh;P$XlhlqF_ z77X`$AlrH?NJj1CJdEBA8;q*JG-T8nm>hL#38U9ZYO3UTNWdO3rg-pEe5d=<c84sd zWQRT5%`;6#i}quSQNGk|?_N5wAN*7|VF*u7b<CmleU4))Puksbr~r-Zr})lR$WQcl z0q0#&W#)RbB$@93ApKqQu3A4&eoBD$^=Kjy{W_r=@GXcAyFithN6dfGG&DTNpC!%Q z-v&ejc41|R6RwdY4OGg}W1lMki51+cmL34l6^wCdyfmKwSEtD)+f3Q6Y?sw)Gj*CI zi}b6|!q7)zGX2paNg*wS#A#x5c`sKue@%-?6K0wvqckD=0~43bGcBbiX+bdf;*Y5> zw3Xi@nV)1`P%F?Y4<N_71+4WAj)%^g1&pq6EY4%lIS>s9yVPgPYT9d#3SLD{*L0U{ z;TtVh?Wb0Lp4MH{o@L6GvhJE=Y2u>{DI_hMtZgl~^3m3#ZUrkn?-5E3A!m!Z>183- zpkovvg1$mQawcNKoQ*tW=gtZqYGqCd)D#K;$p113iB1uE#USvWT}QQ7kM7!al-C^P zmmk!=rY+UJcJLry#vkO%<X&wMhX@z48d4#x$RV9unDpR5F^<jPm*#*xx`6FaC(DhT z#3rNcGx$kv;@)Z~0OANH>BuM>pb)46x!{DkRYY7wGNK$v=np_sv7nfHZO_=eyqLSK zA6ebf$Bo&P&CR_C*7^|c<!)Ox)fnUtm?B<24<QbOJc=X^B;oVC5fgtPD3vK3tC+{8 zWfZH^2?^L^<BS3Z@SM@wsdznQ9$SV+Ib*};vG+PzPL9Ah8!?Nc&}*<rjuz(Mp5ul+ z;BOvJvyc0Y#K-U$$Xht4%<w_^r0N<ZPFkc`;!&Uj1{y>A>zl^hJ7z0?xu#wFzN=D8 zxm(>@s?z1E;|!Py8HuyHM}_W5*Ff>m5U0Jhy?txD<f<*#QXUV_l-I_2Mu=7^T_+=O zrI<wo4*<R`2iI80r~*}dE@&{M9I|wBXG|%;7p2>x{jjLGNXs}(CVxgu9Q4tPgE+Hm z*9ll7bz80456xzta(cX+@W!t7xTWR-OgnG_>YM~t&_#5vzC`Mp5aKlXsbO7O0HKAC z2iQF2_|0d6y4$Pu5P-bfZMRzac(Yl{IQgfa0V>u;BJRL(o0$1wD7WOWjKwP)2-6y$ zlPcRhIyDY>{PF<r;4(jy?Kp%N?>LvIr0!VoC<s-_2bN?|P6d;e4@#tzTqN;6&52j$ zL9K!Yk^iN0oK#a%RaKIGbzDIoIan!+0}vWdT67`CwzZ;fPBHD3o=~>e;c_}dp>U-X z`pii$Ju=g+Wy~f|R7yuZZjYAv<!8-$PP~x7F<7|MfT8{I*mxeRuChzu*;<-uy$7wX zfW)8-sv=vO6|DVW?SSA~s?O!A+`jwgdFE@wp&3S}!?MlHO>4AYJT}Ct-OfF$ZUBa> zOiKl0HSvn=+j1=4%5yD}dAq5^vgI~n>UcXZJGkl671v`D74kC?HVsgEVUZNBihyAm zQUE~mz%na<71JU=u_51}DT92@IPPX)0eiDweVeDWmD&fpw12L;-h=5Gq?za0HtmUJ zH@-8qs1E38^OR8g5Q^sI0)J}rOyKu$&o1s=bpx{TURBaQ(!P7i1=oA@B4P>8wu#ek zxZHJqz$1GoJ3_W^(*tZqZsoJlG*66B5j&D6kx@x^m6KxfD?_tCIgCRc?kD~(zmgCm zLGhpE_YBio<-2T9r;^qM0TO{u_N5@cU&P7is8f9-5vh4~t?zMqUEV!d@P{Y)%APE6 zC@k9|i%k6)6t2uJRQQTHt`P5Lgg%h*Fr*Hst8>_$<LHwKtiL1)`Z1k}WtCHTp*zG) zd@VPHYT9L%x%kdIFV=dq86xx&$bIH1Zqhz^D$`DQnaar#F4iXSa**JGiEagk!B1Ru zqf}j`tAlBt6VD8mxdq~os68b*H#O_xS!$-F^!N9SyJpGFGcsDA%NdMS`o_HX^r~mB zjWxGkcg{RpFs8EUv14}XPvuB#dUDpR^;xx~)V{7E(Xh)L3rc?r1?=S;$BgyVCF%&l zFuy_Xs4r#_gboRee-4jmoQc^ehr?t}CM0kelFwU7%lRN{rjzh-BqK;@Rc;%?knZq4 z?ccU=h)bPzW!2>J{ZI{mNBjN$^2t?KP8*6_xXu5xx8ufMp5R?P(R-t`{n6c{!t+*z zh;|Ek#vYp1VLf;GZf>~uUhU}a<>y*ErioacK@F{%7aq0y(Ytu@OPe;mq`jlJD+HtQ zUhr^&Zeh93@tZASEHr)@YqdxFu69(=VFRCysjBoGqZ!U;W1gn5D$myEAmK|$NsF>Z zoV+w>31}eE0iAN9QAY2O+;g%zc>2t#7Dq5vTvb&}E*5lHrk<o?&An%HnHnwimHSFY zP8?Z+cWG1wcZw|v(B!8vX4BBN5o`uq^+jO9@}GlL?8!jh7Q&l=w;&D@9uU#(ln_n( zJ72U#{LF9cuvtrE@pkXbdGls^+vBmI&9;MoL;I}_Xc{+G8XF^D+P?iukw$!q$lw0^ zz0jr|)UspMSTOD_ceFnA)I+U~a&H{iKlXcCLc4A;Vj=;>rj!I1b0=@+&c(qJcmok6 zS<GPZ0U@7op7t1v!25ZiLn#F<sK)L<i<qmv>ZAuQ496j<&@a6?K6ox1vRks+RqYD< zT9On_zdVf}IStW^#13*WV8wHQWz$L;0cm)|JDbh|f~*LV8N$;2oL|R99**#AT1smo zob=4dB_WB-D3}~I!ATFHzdW%WacH{qwv5Go2WzQzwRrv)ZajWMp{13T_u;Rz^V-VF z@#62k@#FD#t@v9ye*A%@ODWm-@oM_$_3Cy1BS+(+ujzNF@8a7?`$B^{iX2A-2_nA? zfi2=05XV^;D_2G}Up$eFW|Ofb^zuE)bWHkXR4Jm!Sz0O?)x6QD^kOuf<UNV5WGvfC zOct<!4cuW|m8%OHs?V-X)nS122bze@LS9Yu`tzXRX#rfMv4X!6B?!~W-hTr=v<5(z zRU#8AlYS9P>R`*v0=|sS?#*ZCvvr^VkV!zhLF3}FHf%+=#@ae1Qq<4~Y1EGYK$Ib1 zg!s~&&u27X&4Ks^(L3%}Npx!_-A)We=0v#yzv03fzxKZ8iV6KIX5U&?>^E?%iIUZ4 z2sD^vRg%kOU!B5@iV{&gBNc9vB)i{Wa@joIa2#4=oAl|-xqj_~$h33%zgk*UWGUV# zf3>{T#2buK?AZH?)h>10N)#VHvOV}%c|wR%HF|pgm8k`*=1l5P8ttZ1Ly@=C5?d9s z)R>B@43V`}=0??4tp?Y}Ox0$SH)yg(!|@V7H^}C-GyAXHFva04omv@`|LCuFRM2`U zxCM>41^p9U3cR>W>`h`{m^VWSL0SNz27{ske7TN<Sg(~G0be*C4|__Qs<mm_w8%)^ z?}L4T+16fl^uMdxZKe?4t1S$ZUp2!o_GpQgr^Wg!gD!bl2b82bF%f#7a2^$D3s9)6 zb&ide8nHa*q)+0%g`~$pefr^gpmInnX<ZP7Vp->1dTpM|P6Hn!^*}+fr>rJ*+GQN{ ziKp9Zda}CgnbNv#9^^&{MChK=E|Wr}tk?tP#Q?iZ%$2k;Eo9~}^tmv?g~<gBF2E!d z>PW^C$`N)|awe=5m{Xqd!M=ST?2~(mWjdOsXK#yVMN(qP6`q#tg+rQexf|*BeIU)a z^WuJyPR4WVsA<ziZ9SGIqXyk(0hNQt%J-j<&BZ9m&0w6`VyIog&iYuWAU%FJMvhDo z@BnM$s{+HX7{T~AcVgogi(AwHuBHMT&d^d)q@mg%{q7s#Uyb&}7WDr@3QTNjiCN$0 z#j}zo`K9o#TE|)CUWaG9!@$RDsV?mwab+_Pn0#iN+Ia@oI)f|9#>Tp2E{*y77*kZ9 zEB{*SRHSVGm8ThtES`9!v{E``H)^3d+TG_?{b|eytE1cy^QbPxY3KFTWh&NZi`C?O z;777FMti@+U+IRl7B{=SCc93nKp`>jeW38muw(9T3AqySM#x@9G|p?N;IiNy(KN7? zMz3hIS5SaXrGqD(NIR0ZMnJT%%^~}|cG(Ez!3#)*o{{QjPUIVFOQ%dccgC0*WnAJW zL*1k^HZ5-%bN;%C&2vpW`=;dB5iu4SR48yF$;K8{S<c_w99R^X`sJ&aw1-E`?@ZqF z($w`|+q<M;f5XMvC5{k3?ed8Y9buPZNghg=Hq1Ondc_zVzi$52i^i7Ont#z!dU3F^ zf9+DG*kP@RmW}i^tMV)LCYxDR_&mwOgJb4jGb^!R^q5d_^$T~L|FsLIlo|YDex?<M zz8J%pkH{U!UXaI=jZ(agL{ktw+FLN9g$4;v(nuSO7+*A$#@XdRZ9-|8jc>Y`7mu6c z@q{10W=zwHuav3wid&;5tHCUlUgeVf&>wKuUfEVuUsS%XZ2RPvr>;HI=<(RACmN-M zR8(DJD^lePC9|rUrFgR?>hO#VkFo8}zA@jt{ERalZl$!LP4-GTT`1w}QNUcvuEFRv z`)NyzRG!e-04~~Y1DK>70lGq9rD4J}>V(1*UxcCtBUmyi-Y8Q$NOTQ&VfJIlBRI;7 z5Dr6QNIl|8NTfO>Jf|kZVh7n>hL^)`@3r1BaPIKjxrLrjf8A>RDaI{wYlKG)6-7R~ zsZQ}Kk{T~BDVLo#Zm@cc<&x{X<~boVS5(zfvp1s3RbASf6EKpp>+IFV9s`#Yx#+I& zMz5zL9IUgaqrnG*_=_qm|JBcwfl`bw=c=uU^R>Nm%k4_TeDj<s++>y|&K2eKwx!u8 z9&lbdJ?yJ@)>!NgE_vN8+*}$8+Uxk4EBNje>!s2_nOCtE+ie>zl!9&!!I)?QPMD&P zm$5sb#Le|%L<#tZbz%~WWv&yUZH6NLl>OK#CBOp{e~$&fuqQd03DJfLrcWa}IvMu* zy;z7L)WxyINd`m}Fh=l&6EWmHUGLkeP{6Vc;Xq->+AS`1T*b9>SJ#<2Cf!N<)o7Ms z!Gj)CiteiY$f@_OT4C*IODVyil4|R)+8nCf&tw%_BEv!z3RSN|pG(k%hYGrU_Ec^& zNRpzS-nJ*v_QHeHPu}Iub>F_}G1*vdGR~ZSdaG(JEwXM{Df;~AK)j(<_O<)u)`qw* zQduoY)s+$7NdtxaGEAo-cGn7Z5yN#ApXWD1&-5uowpb7bR54QcA7kWG@gybdQQ<S- zDdN%;r{I|pU-aM?e9q_pBe-?*L>a&cxCKxup2Av3_#{04Z^J#@M&a}P$M<((Zx{A8 z!Ue=%xTpWEzWzKIhsO_xc?e$$ai{S63-$76>gtB?9usV&`qp=Kn*GE5C&Tx`^uyza zw{^ImGi-hkYkP`^0r5vgoSL$EjuxaoKBh2L;dk#~x%`TgefEDi7^(~<C<r}yHnA5! zj8>cmE)UEw*l#i+5f-;!v^P%ZowUbhH*3Av)CifOJX7KS6#d|_83fqJ#8VL=h2KMI z<X$qRpzLMz@O*B|3fjxC*>GYTbGm=Q=0lfc{$IDTn;IxIgLZ(Z?)#!mln$0r3A(um zzBIGw6?zmj=H#CkvRoT+C{T=_kfQQ!%8T;loQ5;tH?lZ%M{aG+z75&bhJE`sNSO`$ z`0eget1V7SqB@uA;kQ4UkJ-235xxryG*uzwDPikrWOi1;8WASslh$U4RY{JHgggsL zMaZ|PI2Ise8dMEpuPnW`XYJY^W$n>4PxVOPCO#DnHKfqe+Y7BA6(=QJn}un5MkM7S zkL?&Gvnj|DI!4xt6BV*t)Zv0YV-+(%$}7QcBMZ01jlLEiPk>A3;M^g%K=cNDF6d!7 z<aM&9@bguR-(8%RuJl`s*}oX^lq!s^yr(~-b*t}2AJw`ajkG3X??#boRa)-xQ!0y} zQvE{f?$7WZsW%yYl=nOmi~R%I4k0fIp4kYU*KwK-JLnPSlu&%jx{(IIGpy})j-Ni> zq1_(l4SX+ekaM;bY|YgEqv2RAEE}e-Im8<@oEZ?Z81Y?3(z-@nRbq?!xD9Hyn|7Gx z-NUw`yOor_DJLC1aqkf2(!i=2$ULNfg|s8bV^xB!_rY+bHA;KsWR@aB=!7n&LJq(} z!pqD3Wkv<EUKw=QUZ{YeNjs!1)DE3)xa{mp%FNA)7E{?JXJ2MGou?yVULS4?IGusE za6J!4pgDi?kcM_0y6pz@LpT57oC=&XKj#lOKV-g6pRa~b&`twzY&7d+(*cz}nmFc; zUG6sS0f8^TDzbqAV-Ci#0Q*4v!S4HIG2})JIE}Yg-neehx^9VuT-t-Kkc%%pecy(D z;Qzi2a%y}l3_7f%?CyY{3^<lfl!0RAl%uAbhqB#Tud-x`*1H5Ya(l{nH;QTRmNJ9o zWPkOXUdo1jB}S(U#TX2_A;{8+*V<5uQ+f$I87N9BTf#$2%1{bKYJoGfM*x|>o-Goy zx1edGgnc}u5V8cw&nvWyWU+wXqwinB#x7(uc>H44lXZQkk*w_q#i2O!s_A?a*?`Rx zoZW6Qtj)L1T^4kDeD7;%G5dS816OPqAqPx~(_-<DuB$fss>jZ`bo-MR_kd&sJv{A^ zs<mvsogQ1M8mv<Ct$f8}u@yT_X8yXC2EC}uY~H5r4-`o@d)0;ATiQp>@18qv!kD;U z5Evv$<lBB7#(Jc%96X*_<c5{DXipqiqGV{lSf@y=%UMwtHg|ADEjAhIx56>C*bD~m z+x@>Oo>;7%QCxfp-rOkNgx4j-(o*e5`6lW^X^{qpQo~SMWD`Gxyv6)+k)c@o6j`Yd z8c&XSiYbcmoCKe+82}>^CPM+?p@o&i(J*j0zsk}!P?!W%T5`ppk%)?&GxA`%4>0VX zKu?YB6Z)hFtj@u-icb&t5A1}BX!;~SqG5ARpVB>FEWPLW+C+QOf~G-Jj0r`0D6|0w zQUs5sE6PYc)!HWi))NeRvSZB3kWIW|R<H0_gGW<At4DglY{@PXl7rw}vx_Wdy?mi( z$0>^A%RfamB2jCbVX(Fn>y%#b1W%}W%qc)XVrwuvM!>Qur!Ooy2`n@?qMe3$`F2vx z9<=L}wP7@diWhCYTD?x)LZ>F6<rMsfn4>F?z8naL18P%1T9&P_d4p;u=(XW1LO3-< z`{|5@&Y=}7s<hKtKn``g07m^x2L<{euW5rmHASWqkln<y;G60p+yy1Vd~}>x3t1Zs zr9ZBmp}Yp<Mc)Mmn-+i$m0AeGjn*2BBdF_u2nszt)O{Ez!VomrO1NW@UJxJXIYe56 z(hC@vJZyP9IiY;2hPG1)J9VoU!%1sA9yL#0JHU99x=C-a^r*#L2#n~b{G2!*mf=7Q zwzqIf9N*qy6``%-9z_FAX#r2LDe2LPf*507Fz(b?J9;sPV>HLq7lwu?CXL8<aWMNg z?79jh7{F8S&wB>$Q65$Q29AlDCBJSxu5<ljsZ?&yzAt$^o=0gUg23{>;p0({^4skD z+4se#9)xg8qnEh|WnPdgQ&+te7@`9WlzAwMit$Julp+d80n+VM1JxwqS5H6*MPKA` zlJ*Z77B;K~;4JkO5eq(@D}tezez*w6g3ZSn?J1d9Z~&MKbf=b6F9;8H22TxRl%y1r z<-6(lJiLAw>r^-=F-AIEd1y|Aq2MggNo&>7<AhoY=YGA|J57w_WG(=uW_6WAD9gb5 zkllb$JpC=Oq9dIg7R5r|P`SqQ<dYuHB2Q_MK7ytAJTZiC9@ZoL{?AIDD}Wz7W#0sZ zofkn1HXLlFfEDzB*m2m)4H;LeihD7}U0eAVJQu^P`eK4ns&w}cgGjC_a|3kkqQ9Uu z?lK56cLJFz-7|;5K>Ln)S~iAF1;-4`A*9KlL*vleLO3vhEd(@RsIWp~O@>N4p91SI zb~+*jP?8B~MwmI0W$>ksF8DC*2y8K0o#te?D$z8nrfK{|B1L^TR5hlugr|o=-;>Yn zmL6Yt=NZ2%cAsysPA)D^gkz2Vvh|Z9RJdoH$L$+6a^|>UO=3fBBH0UidA&_JQz9K~ zuo1Z_(cB7CiQ}4loOL3DsdC<+wYysw@&UMl21+LY-(z=6j8fu5%ZQg-z6Bor^M}LX z9hxH}aVC%rodtoGcTh)zEd=yDfCu5mE)qIjw~K+zwn&5c!L-N+E=kwxVE<t-E%KoZ z<y&iLhOY@duv$!~)enS*2k<Lm!CRy6J|N;BcsF`0Wf&G9=@jB5xd)5m4ImV!$et^Y z=;6?K5$zg_9uNnA#Dfn1K!>ewN#vvx2WGCf^;C9<Gj>^mmTlYc*kz$NUdQ=gDzLmf z!LXG7{N$Mi3n}?5L&f9TlCzzrgGR*6>MhWBR=lS)qP$&OMAQ2<kLLosVT*|81)fcx z1+w&8<iP=6ky2!#yku<s8D`Xjeg0*f26T&a!7wAh4DXawVOI&H0$tS4$mGs-tDyy1 z`?j7-f4=Li{u1fKn;wA}t%hLg^jDmT`70Scfh4r^@|UE|58Rk_oV{SzFQ1i;EZ)_> z`$23{zM%a@9EPdjV|Y1zVVGf?mINO)i-q6;_Ev|n_JQ^Zy&BnUgV>NbY9xba1DlY@ zrg$_Kn?+^_+4V4^xS94tX2oLKAEiuU0<2S#v$WSDt0P^A+d-+M?XlR**u_Xdre&aY zNi~zJk9aLQUqaFZxCNRmu*wnxB_u*M6V0xVCtBhtpGUK)#Dob6DWm-n^~Vy)m~?Yg zO0^<MG&&0v@aU{0YUeT3jttrL)l^>+v~`x6Vqtjl4I5;=^o2jyOb~m+ER;lNwO$iN ziH4vk>E`OTRx~v#B|ifef|ceH)%hgqOy|#f=Q|VlN6i{!0CRndN~x8wS6Ppqq7NSH zO5hX{k5T{4ib@&8t)u=V9nY+2RC^75jU%TRix}FDTB%>t;5jpNRv;(KB|%{AI7Jc= zd%t9-AjNUAs?8m40SLOhrjbC_yZoznU$(rnT2);Rr`2e6$k!zwlz!d|sZ3%x@$Nw? zVn?i%t!J+9S<yDxP;GX2UFING%JN5ldLzG`I1!{O<N*T20}&)36oWiJP)STb(%fR) z^L!VP7mPfVZXa5-Cw8K;oHguD-UZ5Wxf}o}JGCe1+hXBel!A<K`TIeUe$XhF(j)l{ zVT(%{kUl6fAPK+$ziJ!!iu$2?1+-qoqn!edQ^74P`A!1JDd3h;Cj~^h{iI+Md>F@^ zO&TGun2&?VIygfH5ePk|!e&G3Zm-GUP(imiWzZu$9JU)Wot`}*RHV<<B{3C7B0`1| zb>-)vUhc6J6{w&PQIaSZ_N<(d>`C$yo#Ly&0Sr5gCkDY(4f@fY5!fLe57sH54#FF4 zg&hda`KjtJ8cTzz;DwFa#{$!}j~g$9zqFBC@To^}i#`b~xhU;p{x{^f1krbEFNqV^ zEq5c!C5XT0o_q{%p&0F@!I;9ejbs#P4q?R!i$?vl3~|GSyq4@q#3=wgsz+zkrIB<< z=HMWEBz?z??GvvT54YsDSnRLcEf!n>^0eKf4(CIT{qs4y$7_4e=JoIkq%~H9$z-r* zZ?`xgwL+DNAJE<u&KUS1Ezcw_$pu?O>`VB;S+w#NvBT{3;}{CD&@Ig*Ka2Acx)2Qx zL)V#$n@%vf1Zzms4Th~fS|(DKDT`?BKfX3tkCBvKZLg^hUh|_Gz8?%#d(ANnY`5U1 zo;qjq=5tn!OQ*-JqA&iG-Tg#6Ka|O64eceRrSgggD%<C_<FE1olnRcjTgNn5M5OHQ z&ChI}{m3J;@p6;=pWDOmu{ro8z!hi((IT*}WPJvM6IkXOn63i^qh*JA3M?7G0qW;I zX>%QBX$t=6?hPEK2|lL1{?|>I^Toc>rQU7a_`RSM^EPVl{_&OG-P;|z0?v{3o#pkl zC6Y;&J7;#5N#+H2J-4RqiSK^rj<_Z6t%?`N$A_FUESt{TcayIew5oWi=jxT*aPIP6 z?MG`?k5p%-x>D73irru{R?lu7<54DCT9Q}%=4%@wZij4+M=fzzz`SJ3I%*#AikLUh zn>k=5%IKUP4TrvZ!A{&Oh;BR}6r3t3cpzS(&|cEe&e{MQby|1#X`?17e9?|=i`sPG zL|OOsh`j@PD4sc6&Y3rT`r?-EH0QPR*IobE@_fkB8*(886ZkjkcO{K8Sz$H`^D-8P zjKG9G9A`O!>|!ivAeteRVIcyIGa#O<6I$^O7}9&*8mHd@Gw!WDU*@;*L;SYvlV#p( zzFSsPw&^UdyxO}%i)W8$@f}|84*mz&i2q@SlzMOd%B!BHOJ<(FYUTR(Ui$DuX>?85 zcdzl5m3hzFr2S@c_20C2x&N)|$<=RhzxI!}NN+yS16X^(_mtqY)g*Q%Fux5}bP3q$ zxQD|TB{+4C1gL>zI>g~-ajKMb{2s_cFhN2(I(q^X!$H(GFxpc6oCV9#maj|OhFZaI z;umX6E*fQVTQ@lyZauuv>%E)5z-?zQZne18V5A}}JEQmCz>7^h<Bd<fQ(OP%nTPmA zS6%V-@#lVf^v}OCKC_D2scF(BL(TlBQ96*dK6|!vDvF&o;ni)GU6t>0r)!zhinBG6 zMQghGt!Do5h%HmAQl~%m+!pr-&wlrcwW;qw)S$6*f}ZvXd<qjrVb%W}nk2)_bI{5Y zG!_yC8`{(bRk9VmUS!KrC7aBuqpq=4M_JWaSF~DYu8yf44}dUv?DXJU_%E%-q9UVR zYqQvF^8Tag@#D*@s>;cHw=xm|y~mHbT3yX>?hoYKfy--h<AH4|v7u4V$?TsF1POK# z2l~Z#K*f|-yBktn5A>+6w9%@_4ukf0Et^zr-DbPwFdyj0VJHi}4bqRetSNR`DoWd( z(%n5>8MQl+>3SeL-DB@IaM{NDwd{{v_HMIO)PKO}v{{##c@ihB0w$aaPTSP4^>n3Z zC8Il%(3dCLLX$-|SwWx1u7KVztXpzNhrOZQ78c$jd{B9lqsNHLr*9h;N9$i+vsrM1 zKzLB_gVdMCfxceejpIZat!MbR)GNZ%^n|fEQo?Xtq#Qa_gEWKTFxSL4b{g}<g5!pg zqjYvXf#WmS590a@AtEIYrKmWbO7RfxSqt%u{zj-2;vw3t)Ozvk|CUGsKto6|7(DwJ zqoP$jyJ=6RTYq*jeSO7zR(m1Ew81tMmn9k-6|A8-@s}tK@%iv#C$P~FZ*8kkTBv7; z8+H#yhOrc23fr;54Q3_NHJB(5rk3vMnC-7<X_?i~ODk9JQPqI6e6*h(y10E&qN{mg zVod4SToO7Foj>kJNd{QcoQ}HUP-A)Rq;U(***IA*V_0B5mr}Xp$q{YSYs-b2q~DHh z?+muRGn~std!VXuT>P9TL_8Km9G{do<P%hMjBo5*GjY+zxo5S6Mdsr|^yKI_%q!Y| z0XZbr6buPibb|^S7K<litua~z)i$~wp_60LRE(@oJO87pvtH1Sj+)>qRb-W0B&%d> z^3@hs6y5jaEq%P}dmr(8<wosc?GN8HeS4DK1fxZ+I2DI%mrTh(d*k$)v$^5U8{U6x z#W(eF!%R`r(0sLsle|8!;EM7q88jUgGH&h4`-Qy)R=WH?{fXNApJ)$g)3pbF0`?qg zhmjp;G}bkq(J@l@(gj3xY+Luy<wQe1DU<%W_S}<C@`*neDS)*xzoPg_5JC>=f}x~^ z*{I{tkBgYk@Td|Z{csd23pziZlPYt2RJW7D_C#&)OONEWyN`I19_cM;`Aa=y_)ldH z^co(O-xWIN0{y|@?wx@Y!MeVg3Ln%4ORu5~Dl6$h>AGSXrK3!pH%cpM?D|6#*6+A# zlsj;J0_~^?DHIceRC~0iMq)SJ&?R&if{fsdIb>y;H@M4AE`z8~dvz)(e}BqUWK^U~ zFy`PX+z*Bmv9VxAN;%CvMk(#kGBEMP;a-GgGZf~r$(ei(%yGqHa2dS3hxdTT!r>La zUrW2dCTZ!SjD_D(?9$SK02e_#ZOxdAhO%hgVhq54U=2$Hm+1^O^nH<>wS|&<)2TtD zN_MN@O>?A@_&l;U)*GY*5F_a~cgQb_3p`#77ax1iRxIx!r0HkDnA2G*{l|*}g_yI% zZdHt2`Hx^MA#VH7@BEN68Y_;<n>sAcCNgCY7S&dcQsp*$+uW7Dm@$Vl7!YA^51bi} z*Vy8uTj{neIhI<oWy=zdr_{4#i`<hHemO&-p)DvOH>L|PhditfC1Jeub(uy}w|wV5 zsQz)04y;BY2$7U4$~P{k)b`hZb>gv1RkD)L#g~$*N^1N1GfNMS)4r|pT*V<&KE1M9 zTh}rzSW#Kcci_#(^qf0gTW3&QN&zsW%VAQ+AZ%-3?E)kMdgL)kY~@mC>l?RH28u;Y zt-@_u^5(W>mDdt<VOYVgE#|A(uSEv@fOheek;xg_<rDOsNOl;gd)!Vja8=hch<)Lc z7C5x)TTnfC{Ty&89Y{5hHW8hoHQfdd*GFRp`xtUQY*_1G@JVU(0G!G`VL(RRLkFlN z{KC?h9ZQ4a9Zk#WEDGc4V`(K#V+h=(@|#!+B^!*`vNb|*0ka$cyGgGYw7@VL2ZaV- zNiT>qoe){#t;3NA7c@<nTry$GxFrj|q+b7*)5;f*OrAfZ+;0o|R!v@aTd;Wd<7=Pa zv0@Zt<2sl-2)ia3b{+ElCFYvhG26s1EhzUG*DY&qzkD1ok!G#8o0Rcq@I~^{X&b(} zZ@$|+f=ffW_Mv|;7CHE_1<Uh0i>{WoY9bYFNoq+sj&ru;Z`x>4ddY0y*`HRtHFEN% z@mFkp=x0C6zDGgA0s|mP^WNEwE4O}S?%DOtce3At%?ThxRp@`zCH6MyzM)dA9C7IP zI}t;YUV(Jcnw$4LoD4H(EM#!{L-Z|&fhNYnBlKcQ$UScR#HH>scYBTf2u|7Fd8q$R zy5Cbt=Pvf^e}m4?VVL@#Pi3z*q-Q0MG8pGTcbS|eeW%R5bRzKsHSH#G<xBsM(j4bg z-=NG2#y@lA_H_D~$e_|wjQMoK?HF?(ofQZ4Vzj9Zx`0FjEN<3>(#$9hj9}0O7lXsC zbZ7#UjJM^FcvdKK3MOEl+Pb-93Px}F$ID&jcvZdJ{d(D)x|*`=vi%1hdg(dd-1E>& zoB4U&a${9!xyxoT%$<MsXn8+O$mZ77dXQPXHRf6#s%oUnHFa~!q_1s$>7gFp{M<_q z9oVnk*Dcp$k#jA#7-pZbXd=L8nDhe<*t_*%gj^Vx>(~KyEY~i&(?@R~L_e^txnUyh z64-dU=Lc;eQ}vPX;g{GitTVZben7||wttapene^dB|oSGB~tmAGqE^`1Jxt$4uXUL zz5?7GEqvmLa{#mgN6la^gY<w3YLNeVW;rdeNWK%R0!+U2r<S&xzgpz0YBw4K8$3mp zE21?;R%76qA~z3I)m~||6<Kx~EuGGQb&th9nAE?Kl2+9hCN)_pskOrqC_+*xeTUWE zqHK~(U3Rb6Ywt2io0Jx}^^QAit`<e<Y|lls)EbnHN{h>O#}`eXyUJ)lFyTO8*iL~P z$A`A_X^V#!SJyU8Dl%J*6&s9;Jl54CiyfA`ExxmjrZ1P8E%rJ7hFCFo6%{5mRa|LY z<hHMFEJ$i9a(4NfssfTL+q=W*C@s0HM3JX0^+}R%=`>k^x76W8M0tQBa1Q(&L`|!e zrczv>+#&b<PjV6d3K}eU;V9%YaKm(oM4Zr(@CHXFAW14hML_r4VqzLAlt6`n@RklP z#|_mXnz0e!Du^;&6ZEY1{U4mQ=<0hS&2o_k$4F#Jm0_q5ahCfmSKsn1pTe)@Q>2bt zuD1Bfoe>oW0&!ju$-LI)$URptI!inJ^Dz|<@S1hk+!(n2PWfi-AMb5*F03&_^29MB zgJP7yn#Fw4n&Rod*>LlF+qPx5ZT$80;+m*0X5ffa3<jfYcXFe-W}$P7vS|L2z8h!H zn)b>d-;F72#5un;L$}RfmR5&xbOf(KNeD|gT1x6bw5t;~j}(oMHcSzkCgcpbd>5UN z7e8CV*di9kpy<pA5`bF4mH@m^LV0vfv)0p{>JAo1YyE9XtfV1Q8^?ViwrKgtK$H60 z%~xgAifVV#>j>4SN10>bP9OV9<ecvBe`%dx>m`EA-H{bzMimEQ_3@VZH%@KZzjDu` zRCG*Ax6B^%%dyLs2Cw{bePFWM97<M4+}X6j=rFmY8D9@pIA_cZHBTuS=i*BuXU_~r zW>50@SIoZoff4mJvyxIeIjeZ{tYpbmTk4_{wy!_uygk4J;wwSiK&OpZWguG$O082g z^a3rw)F1Q!*)rNy!Sqz9bk0u-kftk^q{FPl4N+eS@<V2$_#KjDfHky}YxE6v>0p1= zhaBFdyShSMz97B%x3GE|Sst~8Le6+?q@g6HwE1hJ#X)o^?{1!x-m`LlQ+4%?^IPIo zHATgqrm-s`+6SW3LjHB>=Pp{i<6FE#j+sX(Vl-kJt6sug<4UG9SH_|<oE5<{&zK>( zOb(+Vn|4R4lc8pHa-japR|c0ZAN$KOvzss6bKW^uPM$I$8eTr{EMN2N%{Yrl{Z`Y^ zaQ`-S_6omm((Fih26~Bjf^W$wm1J`8N+(=0ET@KFDy;S%{mF@!2&1UMxk>jTk49;@ z*g#0?*iga;P7abx1bh^d3MoAy*XQp{Hl*t(buU@DamDmvcc;5}`ihM!mvm36|GqRu zn*3}UmnOSUai6mM*y&f#XmqyBo>b=dmra`8;%uC8_33-RpM6;x`Rrc0RM~y9>y~ry zVnGanZLDD_lC%6!F%Jzk##j%?nW>JEaJ#U89t`?mGJS_kO5+5U1Gh;Lb3`{w<-DW; z;USPAm%*aQJ)UeYnLVb2V3MJ2vrxAZ@&#?W$vW)7$+L7~7HSzuF&0V95FC4H6Dy<( z!#o7mJKLMHTNn5)Lyn5l4oh2$s~VI~tlIjn09jE~8C#Ooei=J?K;D+-<8Cb>8RPx8 z-~O0ST{mOeXg+qjG~?}E8@JAo-j?OJjgF3nb^K5v>$yq#-Ybd8lM^jdru2WE-*V6W z>sL(7?%-Qu?&?wZNmmqdn?$FXlE!>2BAa^bWfD69lP0?L3kopYkc4>{m#H6t2d<oO zM-rb4RHzpm9{wcAncBP-$z|oGYL~V;7`yL0TF=DQi;45@lX^I`Bry3%;i)|iLA2cJ zD&=p*f?xWH#B@1NV?V)Q10EuyprvuT-(Wa1PPQ5t`ay%_ybUO&1G_V*CdltU4p|^e z0stB?-MU)8M=g!9-Je~j??XyE_G1Xia8c^kF+>LIEE47|jcI$tEuWzwjmRgqBPkzk zM+(?6)=);W6q<2z95fHMDFKxbhPD-r0IjdX_3EH*BFL|t3<dcW`!>))c7d~8v;<l` z9cOc4;PkP*doonyEp+5!5ObxBj=3fstp#093;Edqi3}76dI?B>{wU5p8nHUz9I?>l zVfn$bENo_I3JOh<pvs`XjXA{<Axd5<=D(OZzz!%s9$+)Sav(kLD=%GEmyDH<n>1^^ z+un~MSwCyixbj%C?y{G@G7mSZg_cf~&@djVX_vn8;IF&q?ESd=*AJHOJ(!-hbKPlb zYi-r+me!ezr_eCiQ&SetY;BocRokkbwr=ONG<Ls)CKFqlbRTn0h9dn%08(unJL%2r zdUhMy)*6q|wFvsNtu>zW2U@X=AUvS^E9eM^w~aztd4h$Q&kF;6EJ1O*M7tJfFi}R1 z6X@asDjL5w+#QEKQE<MUI6g|txm~6wNm96XWpM0snga=U?c*@C(Hv00gBVrANXdvx z>5V48#ASm?H7u5j%nDqi)iO@<OOjW*K|ky8{5@_LH+T{a^`=0Tq!!6Vc7wal>a1@F z*^R+bGpEOs#pRx9CBZQ}#uQa|dCH5EW%a3Xv1;ye-}5|Yh4g~YH5gI1(b#B|6_ZI; zMkxwTjmkKoZIp~AqhXp+k&SSQ)9C=jCWTKCM?(&MUHex;c3Knl(A%3UgJT_BEixIE zQh!;Q(J<0)C`q0-^|UdaGYzFqr^{vZR~Tk?jyY}gf@H+0RHkZ{OID|x;6>6+g)|BK zs6zLY0U>bcbRd6kU;cgkomCZdBSC8$a1H`pcu;XqH=5<F+D~<Z-#2~djpJ<Gc|QJ4 zafx3Y8ElfZ<^ZG1&3Fb^`teMqzPjsAXz8)fn!7rC`gCl=cGu)r3S4c*Gq4a$RR9I` zbygh!Z5_qV1J=<UxX}I*0+Cz_Mi`r=u*<^PZD0p*gr*iS3Qw#7?l#<~E5s~4t;h%> z+$oO3i&T_WpcYnVu*lchi>wxt#iE!!bG#kzjIF<LQv0?E-PesO@fZ7xmz9iuWAu|3 zUjMrd=^g!Fz4{lU|I&`I87urHks0Z;=G^n6O&xEK@pO4lpNSRFihC!e7aDFZttcB2 z3@r9X-Q3(1DE7CGn(_C4USHEw8(7d#?yroD_&xXD{D}7bV{HxP<(JMVUKpr(p!U+= z9sJ&evE$}6Sys%)<pH*0b4aPV4;?_ABJMbVL;$*lmZKAN<_+7HxW54NhyI}iov<Kw zuLAu-eIuHO(?9yvSv27=w*oMg@D}-2EL~EX7+*QpynOa`+6SjKRm&AcZevS(bIF2I zyU|@;6bm`za{K5>qb)`s?|OclRAnzUyW5*Py!P@srDXI}&s2lVYf2ZCG`F`H-9;60 zb<=6weckNk=DC&Q6QxU*uJ9FkaT>}qb##eRS8n%qG`G9WrS>Xm+w)!AXSASfd%5fg z#fqxk(5L9@fM};~Gk^Sgb;7|krF-an$kIROPt4HLqq6+EL+62d@~4Hsy9nIU?=Ue4 zJ69;q+5+73nU|TQu}$>#v(M&Vx1RD=6Lu`d?>zHN?P7J&XWwsvwJt|rr?CZu+l>m4 zTi^VLh6Uu2s392u(5DLaM%)Dr$%h3hRB>V7a9XG`B{ZsWgh4IyTO9R~TAR^h^~>ko z(k|Hy#@bP}7OyN92TKE%qNZfyWL32p-BJf1{jj0QU0V`yj=tRospvSewxGxoC=C|N zve$zAMuSaiyY)QTk9!VmwUK&<#b2fxMl_DX|5x$dKH3>6sdYCQ9@c)^A-Rn<Rh`_J zlt&lRB~G?jhWS|EX+K`5L9k`6=#nb!W7EW?%ai>9vG?s)0)lCR76kgoR>S;B=kl(v zzM}o+G41dh)%9=ezv$7*a9Mrb+S@13nK-B6D!%vy(}5dzbg$`-UUZJKa`_Z{*$rCu zga2G}o3dTHW|>+P_>c8UOm4Vk-ojaTeAg0-+<4#u-{>pGTYz(%ojZ`0e*nHo=)XZS zpp=$zi4|RBMGJDX{Db?>>fq71rX3t$122E;cJ(9elj+kBXs>3?(tq=s*PeL^<(M$8 zUl;u9e6|EP5Us-A>Lzvr+ln|?*}wt;+gUmd>%?@Wl@m%Qm{>Q0JqTcxtB`ROhd6TB z$VY<7t$^N6IC(s*<w33DF&yc0dj^+WeG%4|-2BQb-dJ|q62>Z@x2?Gi%eB8%(hYaC zKfY5M<cZOXmrbZWEjps?;&|+w7tV1eFE1MrJ*_siZ1L#0#n&`(LclZD>-9MeR-@5h zZ?V`qr%%FlPQlW5v_Bp^Q?^)S*<!9Xnk@#nh}mp1o88SOEB+m*%{oDLLdJDWayebj zF_P1%goGu~ua9Y$&Q^=v^6lf6jW86qp0@eS4GR`uX09nN4hD-tBg~gAUa;ZJ8|Jna z8zPe|mipRIjUt=vcHH^U9tgxn+Hm(pY=z=3R%i3uj{TZ1>%Y#Z$|{!Lpju=$s702T z(P}foXu(uuHN!cJRK*W-8=F*QlYB*zT#WI-SmQ_VYEgKw+>wHhm`ECQS`r3VKw`wi zxlcnn26L<!RA|D|NB?I8;L63FJ8~v}K7sD;$+XuL+<N#lUCD#$fb`H4r?HkfVB<kr z;(F9QtS+CxIxw-24Zzi6CHA+pfsJf|GxQQ~rvIxEo5uj_8Jp)*Ji9qdbCkPu;?S{L z1o!sZJjbvRCUxVYC=aekOVe%v0YWg)|4SMNPhKaD1BlcIKrK)np@qZ^L7+8mbudO^ zk)b#%tQ_22KM*Xfl|1h9n@S>*U;F-BC9u{Csy#e%+2uD$He5?mc55)ot>1w`?lr$J zsrI^qGB@!5dglADaHlvWto@|S>kF5>#i#hCNXbp*ZkO$*%P-Sjf3Vc+tuFaJ-^|Ou zW8=}1TOlafUitnrTA2D0<3}&zZz^%y5+t2`Tk`vBI93FqU`W!zY;M%AUoN1V1-I2I zPTVFqaw3Pr-`5HcEFWuD?!8Ybw)Y>g7c0tt=soTHiEBxlY;RlQ`iYY-qdd94zWjyD zFcskM^S{_!E?f3mEh9waR7tb6G&yl%GW%e&Sc5i;y@N)U5ZFLcAsma^K?Cg^%d{PO z=SHQq4a|<d>l`AakzEY;A{n6Rn1u`7v~#ufV<svwufaWPWUTy=#~N`~t5mkQHi<fW z`FA<Y1Jl}-+ID`GoTfY9u${~ohdoPI#lsU?#@1GhX)dh`T;Fl!{L5OGP6ViAJJBDJ zpV59(s~y2U9&jfGy;BDCu?YA(0fISrdk`{^7k>*6GZ$`Ef)d2%6apsU6^>QJl0@U& zq|wIBlBAgf0j!YaozAgmhAy0uy;AjRA2%(!`<c5JH7OZ1B!vm4rC_yi#=>#&e>`V` zg`MfSf5gWvJY#?8%&|`Aj0<@aZ;-q#tCx=-zkGE|_C4)TqKjr-SE6po?cX?Z^B%62 zdA!75;$my<*q)n@eB<^dfFGwRaWB25UL#~PNEV>F^c+e2Be*Df(-rIVB<p_t*#`AH zc;HqtB-Eb)2q$!amvSS&+P%HPVy$^LX{{`;eWuA$Yc*DSZ@Q_huGZ4@Ol^6kHTi6f z)l#v2SgP9cn{FzvJwA<;9+pk=Q?{bop~CCRjxV~_Vy(RS=87WAacOi}RN$2n`jVBy z^{K+DkdDvjzq*1DbPuc1pgxtv0iuigUWFeWRH#nH1!2Tz!W@wXmBa>Jo2o*an$1*1 zD$bsU<F&S$>C-BvObdmkKlhW<59G9{d=@bAu8a05VWCO=@_~oP=G3SmO91AK_F`#5 zwXLRV<oMV%5Bd3(h00X#=;XZmN#kyA@TE>ay<~JYok|rdQM-~C?dcq?Yfz_*)fIte zkE_g4CeLj1oza=9zH!s!4k%H@-n{6aB&Z;Cs8MK?#Jxl`?wD>^{fTL&eQHAQFtJ_% zNEfs|gGYh+39S{-@#MrPA!XpgWD;NLlne0-Vey1n0<q$-*MVI^cPLanp`)hUq)e}| z7juu>?=ww18{L)7G|$1kjI(sjs<Lds{1=|%D}}i9=&YpHJNDt{uDfMF=i}tCvhSk1 z_N?Sr`X9O`HhyGPjjeiuRBSKx6$dOll$@28(#6enVY7OA$`8RH91Dz_R6j2{+B+L& zz(TPanmNN+96IxiR7w}e=-SNWtg%zRx<l={!0#K~x#yw__jF9&bYpd@^9*0xOd0*> z@|a<tA^Ht;SLo>lUMcx*04*>=BWHv_W-t=rCAy0q6&*<vg?_<Mk?9T;qojT!H54tn zjcQJE0gFXPL4i}{Ab#X)g(-*L3C9g{qGk3lO!z;%y$4`h<+(qs_YCcQv@Cf@mL)k} zNxbC5j-$lRUd~QPNKAGdMiK}KWFR1{Kp_MOlodm1fl>;kW&ImkwWTe$lzHJRZJ{-{ zl-mK6+j}V`wobm^^B&2Tl?1r=yWbz;v-F<#y!(CT?-4K(($wWtmD6<j=8=JM78lKn z9fjlZOoMjWml&PHLwQvDG((TE9g7Z#cWwm0Wj{3E?2<NugeKbCX_Ln>31MN9?trDG zMI7;9U7|UsC;urLP%eH1h%U`LJxT3oM4=gpi%X@lpVR9N6Q(uhJ00RWXeL-Z*V(O8 zsIyyVUvf=RXLBKX`!peifjIMvMs1YT0n$0*B;K^yZf&HN8$N%e=EgOejqihLPBT|< zs)z`nNU}BOdT7wYLy}R10eXUksn9o)jG<NYa|-+p5j)^0ybo8gK3wABIrb0o2pu+4 z2ecT>)&=qteGc|XNI~h5R6UBfaPeIHbA32@*>orZsCB4`Q79}A<ha)q;YIYpFEUx^ zaVX0?Z>=z@najfekt-_eTg7a}Mcas^D1ELl<oB8@C{n9M4tgW}W3F5YY*Z*0FBmn} zuvaY)&M>N6(y28c{ur|tmueFvIDOQxXs1)_lKrA`L2-^^VNC#miFvO%l6w5uK2b<E zsxRS3%DZ8>Fyu?hyNLCjTCNRRVW^i+GX``giwc&TpV~OHu(yN&o)r2$K$1kjh@>iP z^&`?sCk#?xdFX+ilAb(;I7<$BQ#6j*jKsu%LEhQKe=>ki^ZICepr3#_2#pE`32i4Z zu%eXsgL)3x3Q-^OPPRhm<^!TEPoek6?O^j+qLQ*~#TBw4Aq~M2>U{>{jfojVPADAi zurKpW{7Ii5yqy6_1iXw3$aa!GLn|$~cnvQnv7{LMIFn!&d6K=3kH8+e90<Z&?075z z1r_Q*zeWit1|lMnj<hnhBCDkKn;(q04?fKL1js!s(I_kx2CW46P*4v*nxWEAq3IV| z?)g*Z<FSyUK9noj98da^{Nq^lsGOZJmS)W@c!8P+C2C9pGBDaoui|U`)Jkd{ECFad zh?~(ybdHOyBsRbubpmi70eu6@qz1_S&<k-Sup<;JGoU0?7nBT`kocElgoj7E*ey8p zf()Iv(;lyM34RDlM8Rrdde~%}%>Zq5K%6YfdLv}ZdQmTk7SZ7}>rJ9TW)6>NY{uEZ zY^9PI1UqUFm|h0Vqe60Ny<Ali(d!LXQ2?Ng)gVS4vQ09X71=JDtR_jaI*exKavGUQ zhUmD|tb`09Ac$JbHUUQ9HZ#5`%SO=<HcJ7QEJ;j+QFy~R_!~KeN~3Jo8&DyGAUW(t zr~b%F17HlnnCn@sBEUx631K*7(@YRuHd_QGcU$pEqu_^TpNS<vW0mwm&>=wCFBtKb zXtqOa3M?2OEN=zDX7z}2$Y{2@WJjr?N`au<Ajm-(2?4uW;f9P`kW2z#jy;0xlSLca zNnj?uV1bZ`k;=c)0NgMb6Ig+iiNd29nW0wiFvx-&5KCkcHIvN(gx*HrH!|ihz@N?T zlDvqb%h22=_(sVltI;4=hz3EFe1c09-8QpRw3<Yh;PAPgd--Nj5#6vcFgZoRELrph z>MDVG9kSH~FjfJRNfsR@yJQp4cQ8zaFkT4>5XQqSVt5c}`-A#Z=3-_mGZ^)Hqayei zhJ}wgZ5UDln%)!;Wz@u=m(6C_P@r9*IMPe7Db`CSqad3ky-5-EcG=*v8J&{RtLJ(E zw2h-ghGYcDtqj4Z^nU7ChgEXO0kox=oGaY;0EPqeW89T6htbZg4z!uU1hi;omVj+3 z0B%$+k$`oH5*SeoG`Ay&BAA%nAUjQxsMlNdq8%;SbEAPVC#qm!r7j75W=A)&a6)3% zdQq$fCN;@RqI!KPf<D>l9l=vmBFSFpD1cAxb@~K-$ZIlIL3W}?#3+|2p{|vZVq`YA zMbx|Xl57kJVwoetAo+opiewCkCIO=uBLEaG+!0U$MRdReNsx>+PIJWN6dW)pfeZ(u zQ8ei-Ht69)ZV`qv=vmorhOkF)Squ;)8AUfh<7A_xI8FGHMRW>~%o`1Wt3|8IMrM%& z8)|@=#ssro9=f9HtN0F#O085{Bf6PJnurfzS_yg?qqszmnQIYDP{N=xqPfvl;VN<X zBtysuidNKlPkQwSxNO8ro{)JGpCejxE8`^OaIj}3iwQu?gHDAbCxVheQH5)!kygSt zv&+awwGSrR4<~LH-u93E>sK^qpoy2&App~Fe<a_!*W_?%#5a2n$z$h|7pw5_y4%?e ziLR?3)Pzcra!aM<;el=9su_?-646cK4wO&x;|PILf>(MB7KCI)$p1!&YEB&%$9gTk zmvlt?t7!>_paNt_fYJvw^~LCqX{4opLy!n)md7}<_s?`gytfSAdoScQWTy&Tbr&~( zg9myGVv)l|4-umFBL0)Y(d}Rvt11)(O4ij#zeao~K$vh~JDn0_@3RjP2M0|79T&9+ z?>Vx&M30Sb15&<{RtpeYUf|n7n5GHyc+-FtA=7H$p6Mh=&M0O!so)tze7#WT>pp|x zfWae>0++DfscU2%>|@oiCQj+6O827)1}KsN^a><x=wCzi9Fge*mxaUxIYx)13FH|B zMp5H>NSI*4?#ylfG-{q?3MMXX$dUH^S6Ni=Ve1d0(janpz@WqGJ?cG&sewpq294Qa zL{huwuoARdt5F4Dbh#?<2ruzSS{VeDAOtY+52t^xJW=!(0f3P&G3Cs^%~Q~~Wq{YA z!QrEk#>oXK{sc&Z7VB1_>fA1^#YyU1Ff<^9G(!V0!JW`n@EDdj$$2SVK6*7$!BvXP zmAC;h-W75(Nnzpro3CE9eV=~Lp7yS(vXnk@$<WbDju^b**6AB3nWy$#eeKmfQ_Yh$ zPHzo+4MQ3(pSUb%9V<q*FS>g3{R`!(UG013==W*Hj{-*F!ujl+np%IX?E0*I&-K^u zY1z1I!`iOu+Ll`UtL|F6Vb?~vk=x9w6}eE^*<<q;?v;04Ul#M%*04VQBMm?DQ#-8R z4ja=5yhXO66^La4D_jmP4_(_JlBqNYDFNk@`w>)O?pZQ#8YKE#b($x>w$3E*F0Kfk zfnyCo#zOpX1(P2yeHG@f<zm>P7}}~GB|&S27%6=@G^V=rmeTB$(w9rC6J@uQmcAMq zQ=Ce?Z0RkF_gu30<;5#jEW32il2?}$-6PZ?au16Y)?kUFy3L?ia1A@%S3<!frNW<Z zQ5rf@nn0pZ#pp!YcRyZyWbx8h7Vp`+Y{d%XJo=XA1?FlRYgY(u#5sScFu0*BmQji7 zMsg%X%1Xa`Y%qi6^2Un<APnBiSo`$ezN2F<e~6`zy$grRgTHMpbwG3e_>G-M`{qn8 ze+|6jh0vqfkhdSb0MvIr!;;*AL}QX^gkc+q0RJ4i9IyOo+qAyHbl<c#_9^C%X0HO_ zzWRasvG9WWu_wJ^<z<(x6ie7m+8V9y=vEiAM=N6NCUr-QS4GFT%{MJT^P%PG)9uk+ zt-Ap~<uLz&|4#Bnn%$V=AkIO9(hZL|f!dN)FQ`^}MC5BLmOxTGVts&gG1uw1kwNFi zNl=HK2Kpz^(sXA>I+$VuZ3UT7&iIG7640a)fe&>NOVU@xZ*YE`oy!JGMY%j}bGq!= z`R5xY(8TK&AH4b6WoKCo>lPh6vbfu1yYy0<seAE}gNxP~<T15Nue<r+;&le3G@dU! zVRt!g>2g^t9bDbexN!A`*$M5`u&}WqF?+*m?ZoW85&MFmXqQ1J{i;_Oz>3*#0?lWa zf?{tv`_JzP7D3x2gX&ICRn(aR$#>;ciH#pO?<*}!<}cYh_r{hb6*kkXSteV>l9n6i zwx63=u%!9MdE>@2X)3$YXh=DuRh~mN2b<cf=#Xu1I#^T14?_P$OO?ksHYhql7O_8v zg;YvixTDu7NO1QGs+knK<B*6=1Dg=mFIvVbfJPC6pBExaFfK~Tt<Bm3jc^~(qjMQc zYZI_OfJLd$CPJf^?<K=GdcOXXMkqT#5g{0bgdntm?vAwjCac93i{taGLroLXfS{`u z-_kB6JkTHoSU4AZ0xu&E^_l87)i;Gl)Hl@!5JRt@+{+OWM_1iD^iL_R-C?vbAjKb) z_sRQ6|3ThU7;c)>QFEH&_nHWfU{q+4<w4yb%;Zj0qteU!?%j3GhM`Y)ynXE63x%`I zlbkkl_WlK%`i{&MjguFpmQ2omKUi57FJX7WAlzzJH%;CNDZMal!|l87-5?q-y!+Vi zc4Y52Tb+~4!rFO9`?k&<`gHP=)S}74v_QNp98x#ow@x#=6Vm*h$ZQ?$;W-_+h`Bpn zH%*K2!C=D&z*TU7!vqZ?^yEceBccS&2esJe&QDZYTGYXxC7t$|)qgjSb7&g5G@4sP zHvzzM819*(u;*fv_9OHM3zSw9Ata{l<ISwZ?8!U!59+8#(Mh@j?T#{perc<gk!N+O z`lr%f-Y5AwInY7F70{L<{V4T1>=t07pt+Jfj90Or;6JX{BCQrE8bZe&wi3fwEXHRp zz8{VAmxsWU)3nT;;77X7@GCm7_fL1p_xKEG&6G~luO;Bc3ZIa?2b(*uH7qJ!es71c z{Buj4(;Jds$o78u<3df_2~DLq`e9*$SGmrR9p<NOKaBabz7+pZ{Dh4lYirHwpm{HU z3hd(!-CV5N=j!%hIpDK~3twBB4GBmeS|AzWfvm6}DPEG|lUoxlypTiijSA8Y1hy)w zB;2lAnwp8))Eg48P%ZwwxU1Oy^A`3^oiKhvS?$)KaeS5HoZ{?b^VT+X2<lP&*r`*; zmX$O_mj>2OoVB5Q(KL3M{1>eq+;+lHK9N?xvyBPHni<#j$sZK{QrKEcdR9+eQD0V? zGPaq!#<-c#a>t4bt+R#Hu_|}dlIGeve@SR!d((u)Ga45+BuhHfA88G0cPrw>>(`ID zZ;aIyn|qmhuDXBthoW{J(WN+`Yud=y(wvd0rm&1*4<oZAz!P8_BUcs&>>6?#8&)Fz z&@V=a0w4)F{^!&W_l6<5xg|-0F!~>aCALbeVsZTd*)M*^tr*!)O8w)mzKThWyQW@X zw%BFs5_@CIic5EPcTJu8=CmynV;``)3}gJ`Vl#VY_3Yib@P-KvBk_%!9OVu<T3_4Q zJ}Wh6Uj5jGl>#8tG|Nc4I~A>8ch-~X%M@!>yk~ERI|QEcwzgI66IaaY>gx0~lm<@f z5-k^OY#SGC80Yr-tDRP(-FEJ{@_4LHsGJ=)PKZ@`eW75-r0ylN%0Q>&*M;@uZLdJ$ z)rw7Dt5ajr;P;~1P>jID!><(7R;w|Yf}qI&8klT?1dTfc@us5mKEe;qw;YKR(cp-D z6NmUMP8x7cM%~ytE@l*Mp^oN*mCF`gRNhw3gpO1PVi_^JzCJo>#mX(q+iJ(Ts$5=! z13b4<S-Zh5EO}|}9`O40iCKDwXte9Sh|o8C&bIT8Jh*Fj$0VQARU$8Q+egBv%Mn3X z!Qcx59^alanM&*z+Y<Ues(;!yzdbUx)E%iRZJRjj?gi^^S=Qd=jY1Hx%nT_;+-3+^ znMLmi8mcXddd*MHo7*sD;)HOdVeFi_yL;|o^NyEPowy?3H!$HRn;jju;n3DfLNQpY zqxhdU>5gILEULS!=)SmZ{<rUozc<?661*oo@wI@|+#<T*dh{>qsC1)$8-4eADGR?v z>~4k_SvdvPHAC}=4(!I^OLgQ@9EMDE7d$PvJbi+K%-H<G2&1&Ug-+g;!=q5Z4@4oy z0Kx|tUslEKy@~N5qtgl&^V3QJCBYfa(l=Oa8&KA2+$T;zZ}2m>Th`P0#Ea|Jm6zj> z?R)<Djt=~Zzso(z-kZA+zt7)&vz6Y(tF82|`)4=v_sZ9)L;Sst=d){aPlWQ^1%{oJ zi(g9gzf%{`%^Q&xF~Wi-7H`-s2S7+tJgON)@FNH^jqwAO(+Q(4a<$<K<6&oS^_MJt zug&xmldPHcv$;ma9<e4wvW_55HYFyk5xZgpyU$>(YWtZoIRx>AqzlG1UjT@6ba>yE z{Wf<5moh^-hu;ptAtPG}`h$4PWcOn>vy`#bH#Ss>OoAEE1gIbQwH#eG8+RHG0~TJ$ z>`C`c7KyM^gqsVNDXxT|1s;nTR&cCg6kd<-msrdE5Ofk=1BGDMlP2!93%0c@rg~4` zq)UFVW%s|`xb>;aR@L^*D>nkSLGNmM?cv)WzHZy3*>+<LzK@;DO4hrim(_e!_Jv%d z6Fz%J<#!SjuKW1t&KC|$?A?EL*Oq(3*05n5<oc7&y8YJ=T=~t9mQRZAT3OLJb?4Gq z<JC3Ox2<CP{tRm|3f4YSHz0Kk)BX9{xwYV6xysQ~=ny`qa$Gfwx@-Q!+1jOkQ=NBf z$CH1YzW1rVEl=)0t9HRWn^!W+dROBs58n3RHGLgaIbX~8NlOFk0<NbEeT*+%QTbS+ zjV1nV$vv0Mn$WxVs;Qgq4$EeHoy)Iut~mPU{g*%V!SasEUCS%RPua0}=6H48hC7EH zk@-H%b*K~}o1*GACtx_ngO^d~_>*xAJSX;>))*XRT0r9<#zIpug(}{rSC9T$42@gb zy8eb6)~}wl<=or)2L}4T{vum>-g)QaKjtnp5fyd^;|BxHt<f7_xUqfX29mzKzMGPr zFI+W>x~2W^YbKq1HfB7@>Hw@U5)?b^H=uNOpli?w6O#~V`eG;`irLcC(&Uxz`L_Cl zS8r24e*U71o@dV6Soupo-}Ttu*Dk&EwY`h4KdY-k55DSqR&o7nufO)%>%s-Es^5Q_ z60#cReEy=$4|nW)bLh=|4bxW4j}A?qOle+wjn88oAeYb~!eA+EQ;8Ggp-UldAt$3M z7*E590amz>YB9L(z?Xx&?I37XYw?Os-t+05x6Z4vkzBE6-hrbB=GAB?p{DQXV4CKg zls@_wh*&XC<3R(CEZxg8*Y(6a>cIOq9Nss7{=UQ7Nv%O_WxSyBqnH{@(<>A&2on@z zn57W4Dh*E)o#rJ2#tyxV2;C5#rl8%%As$4qB=IbMt-z|jnWi>>7Ymq37;AW!6Y4nx z1Ogx#!WVdA92mEipgUxzy_?ddg|x)KOCyK)P5v@usc;0sN3{=0slt4CuwaxK@20eO zhdp~Z8iJ7GWrkq_-X`~(eBpthn9|`tZEUCIG<FXgMLh*(G&pfz3`a<Ki+iFUHjfBn za2~?J_QLeBaKDq%gZ)6pk$MNyiuBTm!Q>iFpJjjxPVE9I)#z3Q$3tw`a69qxjuf+~ z*?v>d5~pcH-AQ~0)8PyIjumD^?SM8!<YujmU(k2xcdb41eaGof@IN|TkkCj*=Dp7k zzhR+W;JWWvD?x|pV5R~OT8J;>Wb>KZoD7hOlc2nA0_(eG!i<ZX7;CzC#)NOOnG<T) z%~G#jZJts)34rm;-#V#wig}g#&C1U67tfP3Q`U+Thu$ZWLky0O|6_g4*zx1X*6jUV zf-PHcxJeyM8OD}Xx!qM|V-2Yf12wlyp1)-c@AJp8o}G&;2WSM87$*7@|BstjLE%DD z7+TZFnkeFS!ZgGirKoZ~cDDKyTgx^t5f*LO{EZFLP3qGNmrY*kwWv>n>}Ru}>6)>5 z@*}T`Hw{I^-?PS9>(<Shea<;U?_^&P+*@}~YbtNb{)*kiJ{~vjaClr>#UFBQpW72* zsfj(2+_9@5x+57aN!`e`f(Mp_I(D>}p8)<OpI&$A%j$b~e@p$vc?M>@&g^g+X1%d{ z%X5boE<E(ymUZ8oeqDh?|B7u)x#ezF`m$IG7~A(=zVzmU<`Ux}lVD!E1<7B<TQjB} zDv;b?zVQNp*Fr!99oApvx5%a~lE-!>?hEoj0CiwTh9)#8^?~;|wgor_=Z1BI9_dI{ z&t*f95n?ZgZ5CnQa!v(p|JT?y0%KKgi`Smi9k5r!+!Mkz=&Z$%CFl;?AOzV`YBKrY z0#Y6~J6&dA=m>T@TYb8ukaV4z^Z?V<l9Xy&tR;4CEXGJPR?F}$JJbTm&uNY$Z;Q`l zA~9RF4PUi{@O|hTC9i<b;9I9AMX64c^uS47E$WgWDh~7xpBp6apy;in*&vIzoIO_l z%#_v!Xgc82N%kHf4&r$&VLnCPB91xHe&j#p%13@@WOqBKk6E<SryKR5#s<U2jx|nC z&z*-n&N^Wo|0Vk(KMA>X*MCKcp13-ye1*`gAj_Tm@r{fpm?K!U@Xg2AfndEo6jZN} z=XK0GRNXVLW2c?}B)rH^yR>u}b?|p(W$!TkQ<TY#AFJP^aZT$28UX8pkM=)U#1Ick zkn{$OZQ@U>TAgu1AIG>MFfNchMQB_^-AQxRE$Th5-E_tBP@v(Cy|ojjP5LEU|JrM8 zVF5;$><F9!()BUBoBfI1Ev11Nu>Hl^jlHWDPChrTH(vh%bARyj5#TPb>omAs-)4zN z9?9(wybd0$Z5s+}F<gh{I7;dJ925oi`S=N-ZN-&{uKtgE`g+faR+iSa%%AgBX1?d1 z?7f7WaQq9<737Iu3RU4oDZS;1O^fbmYg^(`D$MpRPyF(UKVA317eFlx{_~4b7WVFW z4eJ9tsT22MAB|u=g&r1D9P4{hA#ZpnClm;{NaF1=h%u}U;x4x(`<|^#GP_*TPt`uj z=(f4#e~|)CHd6`8kFXn{pBI1O2@LKn5#&;*SiO;19075H-Cg1`n$_{^Fu1U1<?wNq z7VbI(zC?}<g@X4pJ|oJeB~NN|kv!>iytv}-8U`IC<{6U2_NqEAkv;7lys5Qcq3EKt z0-!^Xy3idllgZ~qX^QTe=i*oGUCJNk>Y26?+9U(Ks|C81S{-v+6ebc`c(yibQbuB% zxM7mk>}dI-TfUi5Jqdu6b`4SqF)y5humuCaHhssdcR(jKf5ZGprx;Oe7VG#G6TA1+ z8oZLl<+ey(L+$Qsck^4fi{I|)p15MX73gHFUU!l${lN{)Ht_Wb%j#<CYLJugeD?U3 zJMP#*v}NP``He!iC2mv94Gpt9%vE}qOJ8N~m|b|?&|p?<vhXx>UE6cZ9}Wq^>+1wz z9TBA@%f~tby^0YWafmn&8Ppjn1Ng{d;S01WImtMzV<`!zU7;+8e-Xko>qM^OfOZ`Y zEZG#vcm>EGF??&G6+v(3l`X(xMn8ESv=@LdMfdcxFi%g1?0HDPG>blldR`OLlWN80 zz<$t+MM9%1K~JT@#aBZjOu9*G{W$u7cqTM|&a1)0wR8R^*r$<&AhuCq1Z{-aUhc5P zdyaaK{$P=Y6R{40FrWmLbDOCijqB(1PrKlnL)Tm|t=l}toVLAZOXJ*~-dx|_A&o65 zskcpT@bs+d@ia`f)t8ivl{(t%H?O?;=^s3O^GXqopx7E3kz06f^UQq<>gyNmo4Ij; zrOxuzn{WOqP75~PwPXC;3mZ#YW1xy&DEXsl~)u4`-v_{*B<S!-$Ig>%R6xNH3* zJElz8@d#i4`#JV(ko%x;u{LMqLEEDmwD*(ccB9Wp;u*9I?=sC7g>%L{%$4m#zhbjm z)gK{LWQvE1>_yl|4T$nYKNVZ<)vza7FKU5*W~4)KNgN@;SA<9&ERxIfA&UZnB=r%N z5YD4fY$9Mkzy}!G+`KU<CJfhQQGh_2W0A_!>y>3l(FS<N0~Cz1mx58QH4Axd^9>i1 zw)t)*w$E4#ZSxfm3cZLC(o3aQQ7uHk>_@fMTHoM0=quh%mfN6%{`O($pyzg0kPf=2 zjA%M7bRl4BhV5{{d4HbnTh`HM&<gjN3kv%=W$Z`e^_r00Y6SpwKb4mCD(Z)4C?tx= z`KX-#*9u+lh(<?iI~uNH65?WVcc7IES~!dVUpR>YKw@N~47e7NFGr*9<B4Xn!7P`C z4LdYduN2qJHY~A;Te^J{r$gs6V?xP6HvM2p-_bDKd%_S{@$<BH$g<4FZpiB`Y9?pK z0nj}xQ~NJDbm)@q14l1h<!J7H(X(L^FvWT%ZScI<S+QkHMQ7@0-^#KYn&mZRD+x7Y z<gR;nrFlw4bB*Fyb>Yzi(7XQl-FJb4hPEKOC!K2x$nWy>8=PJYE)T$=Cqe(n*ChZE zklF{Ms}h0Jd|@o;Gz(~b;9d&c#0O^j{1?tF5dtMj9dG`|j0qZi^aF1r{<7KC5hZ`E zNX2nxJYEr@>u86|tPjTDet;fLn1R+IOm6&3b*}TOyN<p4?y-ZOw+?eijq)nceQx!9 zF1<VA#!XeZ0HYw?;kP^o`NQkI>pIaid@W9c9!jIfiJOgK-aw=xb5Kpb)`E9x%CU82 zEQg_v`e+tWYClJHl=_EsSW?LZO3)o#ox(#2UW9|V7I8fYnz5fRtph`u)dywWL9}UV z*hdU9-BBK5G&}j~O6&dSdWDIpFX;&Or5wNbm^Y+A-x6(K$$Of6JTVl9n0gFY&=T5p zZX?pCxA&w{J)eDSfb?Zh*LT#AdiPlB;A%p<Bq7W(aa{j)HJ#0%)g=?gRG9EDg#n7r zMdJ!BkA1LSHx=!UeGUUkV_RL?km58Crwq7P90nCp33RRX1Z{{!1>|-`Aw6RP2mYTh zLmL~zM^VS0V@*4LkOEG~nQR)<V(1f^1fm5Kg+gLui1gBt^%q}%mf;vP*kr}<!Q*k- zya`(hCk0Xh4Fh*E>HyRB+;*KWli%QqKt&%16HWyMXRhtwdCgyoTm*5#itgp(Wap66 zyr-dgKgjl&t?JLMuw}!Boz)TOa2|37p^FAcPmxX0apWmfp$B1WF_@-dsK+?1F6~yY zEwi!-))Q_CbOP%?p%bx|=d^nLBig-_$e!nh19^Ps`s{SNq{nnW)V-qnz3y+Ipd7HS zsb}z<Esk5=f)PZb3ECG4Ig2px3-625(}?@L-;2{1-~Zo!|BJp?Twmxx@PBTJIR%Re z(MX3;x<{^v+Dp+kh69X1hp)wg>%!+}y8izoy>Nyyj4m_br&8TGFcze#gP4?v*NEdl zzGBLM4qpvdu;5vC<mb=7`rk^Zp6)XvB|C8ofsPJn1YCh>Fi9^zXU;sW`>pPi|NFD# ze=<sQOFyXEk?~r>$xI@7q9B4WPsw4CAO~UJ(S)s@u41E>#9<Bwg!2FX=>D>!?<Ced z73<(hU49huS%eXpA9UI!*?DVYlclgqX21of{@2Fn7mTQ(TcmWD7VPj~nvW|nqnT9o z_Hu$dLq~pHKQes?&k9u=h=b@z<!}@<-D?LS1LdV~=))-4T^jP_oWi>=*N5m$%^0E` z<0RjkAj<jntkEX?s8M(5QB5~HybXimn$xGg2;HpR_!D@+==g&dL9KHY`T*@S!<X=g z4rcQD+B7W#LFH#kD%h`SarmoqNKGpkequFeALTMSL>02TN9RLX3Js+GArg=Nu>E5z zPa!vMuMV06#7$1dLbwv+VGT(5V_&A~Uy3T^+|y~Q2>lA|=hZZ)ex%G`rhkN54C5gq z>w?qN=A+LgB0-@s{OJs7Da|z%dK)uDH4?m5Y=K(N5KWL)uqDxwBt>QmOk(h~1u6_s z>9x>G_+@bJhBQ;(Rr?20>Tjn}^Y`|rQvI3Ua5$aGq{HFf4BhwAFVk2oHNbk)hmAri zjQ_!g*-c^AKM>A@je&H)i1PsJ5929F<8bLXvONK<o3lUBL*4;8FM<`KiLAf~s-eY| zNJf$okV!)Nq;5_N^iCk1kG-1;vw^Uf38%>4;-n6d;Zm7Q=G|k6Fp*AY!b1a`eoS*c zF413z6`x;!NZV1k5)sv<jba+WM9JofGjJc|L8)pdeoYe|k4D4$WS}2J^(h1fok?X! zE)Z%4XYv1x(%$CyrIB)JBAwwP4O<!IiiE;x6RWsfYDOy?eFNXpN`=plE}4)*S+r6W zzaUH;T`&Q3_B`=Fr6y2uV~C^0^dDAB@;H4aCY|n~aG|*ou!U*^{LNm+MWflQ?q=7q zL#KWGC{Mr>;-Dqjt?t&|JLNGSA2yWhU-RYC^oiWI1+idw;6*>m1&Io`^iPgF6c$sN zw9j3KFYs@%*HNz1Jr?F^RiLV%@DyQ^Dnc1h&59pWKhD#AMQV~3k7}>c@gdw=dyRf5 zHGNU7bA_hHWUnI-9SXt<YCy$e7oYYqZ?Ac}M^UZ|wQ`N<U!h>jM~LT<QF!MTJVd$9 zSl!dKf`Fc+mMQFWv=bHVG>>U5!uS#{<o!rmVUrdOvS5f|Ako0d4T|BcMYMo=njwO^ zGEh(RgvG;oe(6DQrrzdx&SN&INu+*7Ir%L3avjLdJ5!%9-8@#0JgHBp?zx%uB^qC> zKSOhB>l^nUa&S8kEFoAUIDG}(Lr#|uJCGb%29Xr>1S4yk0d)9hoJ7#4xNbi?5Dt?N zBp45evje1L)<Z`vghl*}Fd&pvoJS^Tv4xXtwCLD7dg5ykS^`N?DIMh2T)s%L%gB=+ zYcANh{8GyKUaYU&lMD}eS&0PX3oeL3xe?Hfm7XTnPoL(wP95wAN+|#QAU-em_G_?B z{o;0~vmZXE(4z||kcNIM_Kpa+m7&GGMCbHkm!e`pc7Xz>A;&Smy9J8MJe@<k!l|t` zQtX_c1^Y&>1#HwBFoYPv$=k%GOaq!kd58)tzBI~EkGG3Rqy>GOTce-p>jH0rb~c(K z1|9q=$3)Vdgcwyvy&>S3p(f~O;~?XK{)Kch&2!gs=%kNH#-Ee-i}S+a@DNWR(Xnv< zv7kIUUD(c?<t&Uq)Lc0kt^(j9G<@Q%>RS|JmPeXBC6cbxUl6qRxl;fFAiK%!>EzFa zJ$-mz?G%WqC+P-l!DLX&nfxzGAnLaFsOg^Vq~gaW2QQ<(qixj#J=;Y{m`?kHkfO)i zdxQ*`2Jr3iXdj4QE%|AlQ;|<Cw_QLv^TG%)Eu3^19@P*teSQK_cS?!3_b?PpOrPNg zDU(eVmzZAI-gAcMRBj_^`IJ5bd6Nm=goKJl^RGSUYd~ZagkpKGg8Z3e=p=q^^yQxv zpS2Vudw@jKJ_msT=JW}ZIK`d4o}Z*F4;9ciXQ*S%!8L0RN*`;#z6b&A_I}}tgR3d( z<LZMyL7W7{6j1-2Q|E%FNYCC#8P1s_{s+CfCi^w*$HUwKLEWjnd64P{IyPrBV!<6$ z==o8~Z6OPXpQzb3<}4kD?Gz!y<?(BoM})$O>Wx~pKrr7xu<l@1AcE8Eue`3NFwDSp zmx&I<t93eDvK;MPx8tjKts5Z2EFA(c=_s(R@Gtkbu>NnTe=t-AO)iha6xDYpH}>yZ z+FD^H2VS0x4us;Wo_95^kElZ$>j2HW@wyeLi3i%Q28NXxQT7V1{iHY}Llc~!Dkv8* zM><6X$}-pv0N#?+N%W`5%}K0Is%8kCOC~LuR6+;gtHYPi9=dqUoin~Q<Br;k52e-} zxq8t<i>^MhE;TSIe$6dEI=Xs(`oTlj_C-3c4K<znz_wfNzxCkO2evhZu4P+#mUMS7 z8GYEd=OM4f;(ch(iYw>T+wJvpu4Kkn_RZVg5jE+RF`XNx?0xmaV~bW?v}wVTXn4{5 zO&2X+*pF%!%qu@3SLRk-npU5?`f_cV9;|pa#ktlD9VuvRx;TK+fWUv_$vC8-@TcO4 zN_-D6?7|-4!VWMEgQ}TUe(c3w4{eyxe8C5t7pS0MFe;X@U&B?sVDIGR;u>?mPyb2F zV5WLiQ2mX&1v=E#B`oe9yk4Y2^CFRk8*rV6<p~YyuWOHV4Q7S|KY_E$w4UX22xmuY zE7aQp&S+f)+vfXTKUGt!$|J13W!l#|C#tu#OoO(7zZ*Wdx_^8_nA(-|tDKkc!0r-p zIEj}+VF`c`Mm1zkg^G1T?wp_6c~C!{vq1>k1!uW{m47&7E!m%(ANz&+i<mJGEE#Jo zx#pp3N{r(g1FD(NYXN*a{;@fm9{Erm`tXrWI5X+PN8T^Oeqb+Ma_g;^AOmF6vwnR~ zFaWEvSNQbi8O+J5^cuaM%LdE!8ui%A1@rdwb@Oo;KWrUv)+CDynmYfDx)}qF<8rkc zTM`Tysjh1BzgM@WlCjQwwT#BGC8(-k`k&U#0u2En5J1b1YS19#^8YVirF1-)1&;^s z+jLNk|MzO5DFxY+|E<F3=scXXU557eFCihx+jHdwN>xrB^ng(;#RLHnX%tfsjJWM- zyBo5Of=eNl8*;gm`o<fXBX1wcyrDvK{Dzo*gJn*6hhE>zE0weGdP7~Iz5$$pI`$C5 z`U46T|8cnpt;J+VO?%~H_`Ph??bcn%Jzu`2`z~tc^<e+UI)xP&$n(S3h}kuKjWp;t zq(Lp9T^N2|l;#Vc7k;bo8XAG&cR_IEuUn{03Tcc+h$jxoz|ziMC;p|K15W(Q-9eu` z1cFiQb!LZu=gCHrkGjo2R&`o#0GQH#*HO0HDgV#X21sN+15zA<W#P!S^AsN!9J7Tt z+O=BvD0h=PG3_TO&%mknQ!PGrlK<&Yn*QiRA|0vw2uBkIz<TaOe7t4oD^e$8O~BUa zBAXL|;{||*8KpMNX$SM(afGbLEi|#IQosu`d(HdDVR27CeBGkS8y;Ho==+}>PoA?r znJlfFuxIeRC?a>J?C!EC2Bn;dnhn3XeZ}<B)b#BWH>sbjb-10*a7A?aS00$P{m0wm zO_v_`nJOwO*k6S$tHR@xmt`N`;fR%l>^^ZvbfRm}PUBtryK5pTwRdIZgj<#_irORP zr7I?yj7m&+KkD(;PKtLXmF-s9=>`j_AFjI$YN7_w1g7hD(md1~ysZj9;u_Y4i3Ssz zgRH~g_UH9AHR4A!67Z@2zch=Odh*4WzWc2=ekK0-ueW&=xy{z7Gz9CSbv}Pk+4ST# z#ZxnW&!Z1tS0A}`@LT_*wh{sv=f-Dy+2cPoUi{nzYTGjx)eit9s#G5^D0+(|iNBlJ zV$vUX35MrZ8K19VAN|i75_}Z#DO`R~MZQy~2$6gqOvN0Js%d70SzJm|ER&Jy5k>-I z!fh9^fC*zr22w0EG6&Uqo`eqC7_L8gi(#?!A>;y86ak0F7|oHQIhmW!15hHkZ(*|o zF+vd5r!A(imA-b0<VBdKUN8Broi>}qc4-&FS58}j>!?PW$SEg*;W8H~a^e%b?2`O8 z*`i%!x17FmIo=X;^83K2Y3Hja(b_rMns6%ts^>=(bA-9V<9O1I>564?R3a}v1yYtH z*l6T7AY0T66-95WtZgaP8(}|MBGlfNdh@=~Y1m!IA7($BPUtE`qT@h@;M3Hd<i#;> z;_dtQw^?1x7-WaPK4XDxuqd5+qVz|PQlALGw|x}&MFa4RtVSK`(e|RtFN=u%s&M?) z7+HD3$diG_iYZuX{0ijc(*2C7cTX)p*3LRRtn3r@wq>%<@A9jY)yX*d<YnruVRt?I z$Ge`gQt!J6+3gm(PBfc4*wmp(6%VoXQ(238uWF6NtRH+}jYZghv3233VHW%Om@(>v zSq7pIH0)jCA$)wa^7RfPVlWXzzoH}vzHmu4?W&f|zEC#fi<;dYS!Z*G+=!O(wLx7} zkfS~!6{@R-(Uw86L(mJl7`6&&tfK<xNf=^6_XCUu8ur|r1N#l=VNU&`*4XA+3xiN6 zAyXvFc8Uio)C-HD%2=FzR7&R+I79uTG#BFHe_)iFOrH+GE=-4{zrkN`W+aW+i_JTK z`>Dx<)c+WIlqL)3pSX=7*`N5ysyr`8ap$bd^E3w89)ZgPiCBi|f{Ji<FG*G-wEW`% zb_kg0x8xoGG@_?1|4(>^U)|AMCk%95n_gVk3|_XmE_Z6(keo8NCgI|@0sfZs3_s1} z$KK|ZCF;AE#cQiOrv*z^HWTBHM`H8Hwdx20FDq8lu^{(Q!@5s%Urrmi_ZX=7)j%7* z2x#|wO+pMI^e#2DpLkU+erWUorFxiNlu1s>XIg^5wIEm|<NqYAKz#tgiff*fn0f}X zH6gqc8Y>joek2Rd2IsPtNkBRLQTFsnoh4v_<(`f@uV0I_G*I9RD+?L~j{1bx`#0ta zEeZiTNBzhh^|GEN+1vl7{w)Wm!`yhLKAuC&Ve`GhjRo0c|E^`tZXfkQW;&_kBLS|M z7!XYb?!E&&=u`h5Ld{_dyivFMQHW{aI!yVS7oS=ttZ_4U4sb{P=wmO6wCrO3g8Cir zRxN0ht{}^=kNOy`2fdgiLzr_8?$^fWMSdbcHb<)&+4+$`i%$>mB*aF7fv0tiFWhcK zRThLy0Mtx?A6Q34Vn$tJOcHkv?-ldg8_%9Jr8YX#=C;}%u*pWq^?L5VVi61EUkC^@ zTi3LAgna%bC9aB?Qos0?XlUZtnp9cISx)1AbGeO~JGb1<*DpHId@iRrT4e7+!$h07 zWDZ4FAXQ;*hdB%9)8U`#Aq1XW1`G)sm$Ol@ZCv2#2r5~I^BXuYJm%NgOkCQOAufat z)Mo2&C`TDc7EDz1sE;V{`=Bx<#5gYrDb+@@FE3>Yx=pZB79-7UjD-g%Z#qc&td6cl zI`S1u2Q2b!m^1LOg{LEV_eV*@<A9-FlOjf2A{_Fdsdcgdw<b}6Vv(B@15RD*qXZab zGz8+iNI;_yFaPJU0Fd^84av-oyHqv((`T<kWEsJWhoZ6M2FCV3^Go3`Syhyp=btsd zxqVDigWb0^7+bvc{A<V0Sur;${^`L7hiXh#(O?ohffEn1D04pao)ia0rM2e0htyBh zw}b~@4wbr7eO(CW9*K`nSVF5~Wm9&qZ(Gwov9=@9gC3;1kqw!61?mPZ^p~ldeCE1| zU%qZ1WK~HVUALZd&%bus`VF(CFRt3JUk=r?Q)@PLYuCi?1XT>cFW|i{!+a94itA#8 z2;?I%3?C8LQn5B+Ac|?$1Ejde^`AH_B}3`>#H=np*@<fr*CMXd1TQ1CRL&_K($$Tr z#96|b_DJ2yxA|JS1veOY96cL$3I;DApFr+o{Tp$trocX&{NOP{5|u43!pI<e402%B zM4wvdA3SVLdTD48)&_a0Vbti;D;JEJRo@*uKg@iV%FDJiOj;5h6Fqm~l8eh@<qff( zwMR`clMTp{LPbnGy0$0Qfae!4?Ku~zmP|_hX)FU+Y9Lxy@0&2br*_dQ_S8c9X<y=w zgbcF7+%h57T|aBgf|aWl)%J{^;H$5T1_TLMnM~3Zy_ze@gcd9{qrOIM4%wrWhI}}| z^)eJZg}gqrX-UgLOI%0m0vFBe!nteO62g2-2>XDR^y^=fZDd~Fz;wS>e@!M7JaPvv zPU?=U|2$6iw_+;&j{0oiARgl1!2p}_PMTg!Yxs?H%{HmJgU62_ghA}_;}{7x*brZc z@>!rSz|M}1YPdKizI;?B3~2O%LY`8A1SF;-m<K*j4Cd{v=p*LXNG=-ER`vGd2a~P6 z=bVdBB6x60efFOZY-#f%gsmbnc#&DXG<(bOgPXoCEZDgD0<8iqLb-Z-`rvV;w+SF> z+Oxu{+PYOU-V9O}bVd$T!;AU2M<2*KtciMEC29!H9V-u9ZUJ$M-4<ShIr|tXrKWbT z`D><Y{dE@|XmMIgt<IJM7hSi$OEY*8QbKz0rpdFP5g*U$mOXsszD2Ww2EfAxXD!-y z<-^Ogg%RH)dPz5o4-q9@fFG7wBX$sZ>#Nb$5QVy@LP8HyfiyK->WR(e1g77J;isq@ zxu$>@C(@*mf}RY@L8hJXBrWMOEKDqt3i8iwFSwpR$W>G_j=iMN>(!1>S7GdmXt%UH zpfdn%XxP3S<>d1=1{yBn9c@?(YZkyN<fb)6_r;Xwbe|ytusrg}0*9elmW$u80{>N1 zQx^M4-32#mo8SKR;r8t_CV3=RwbSNzS!Jbd%GS0L=qT*0!ERw05x~DzSsUKHYQ||Y zuwKD!+2nux!l3~g>0-F=;qnW{w$F|jqXuhZz#N`4WtzLDj_MYvu(*X@fb3G;s!oPE z?QMW|e7J7#=?C#3QWQRp-~(1;_=?J(Y^}oNmHRoN$^y4Pv2Z8cL)EmwWVNJh@>2ER z)el6y-IQ`!2h2{kx3}jwTf$_!N75)(mi|n=?Ylj_>QzqjfMiO67Wc4{rOcF4JS+{j z&z%duf1`r(U@ZlI{F=sZFnCG<!~p^JB1!~*BFX@ML;u<X>Jv}cN<(cA|5AP8m+HUK z@vG9%#_zOu)ChxFSxmKsBSSO9XX%g4SU79e4=G!|Cgo(;VeA8dsRxIZ$Eqhj(brh0 z>Jh)P2`<<#u_i^?L>%2jxXAxZX%?<7l073C+~1p!t{Dj_9ZxL$sz|_G{C#{Hv@t=B zP}EsMr62u$;U#=d%MRJHCiNv=5OI3(_o-A=G_9B~AsrRui@pzUDE@tHg#6PmWEuT^ ziPt|@8=kjTNmkqdOlyJS!m{E9I87hqn;%9rT0<0-L99QeURoy<D*!&^jevF<)nUT! z)AT`#`;NGXqh(2qEP|?uDsodxOo=2AYe<esea@j9#tIvJKYiZzn2+^IY;$9FpF?ev z)9LIFvOg9dc`W;v_gY$RQ2(-ltrx;ivNunxyZ?UFkLj$?i~bkZTu6LDXb4KgAR}J| zCS^>K-&OxH^mcao3^t~WeS^K<Jveis^lW@^CYHAs)lZm(ZMfyW``BVOh6XH+7pDP> zH`XC|VCLo6*duA78O!ugN@5Elxkhd!CmdSX&*f=utfmDFD9PkBHMk3&aFB&)R8NL4 zD&i)OQL<Xj-mUIXo7Ek=&j#eS(SsGU*Jm_3HgtV*TZUGd%*5$1jGR7EySeR?t_=>O z(Z_o2Zs~o#^$zu`{XU~$I{T&vAH3;ofJ*ZpJ&JR~s{J0}8cw}`t#a3NvWA?#tMY67 zLG}{Q{#6^CipQ<Ze@-_<(SF1-XcPlg5Dr;dBvQ`!fSM-T6Ddr(E3Sd74(BL?V2X$P z8c~UHEZ`K6=k+XAgTAh2(4>$*V2|W$g2v->Y9+4=(K+K`;I4$BFUb9!Nrk0B*fL+v z_lcdO1uEs@|8I@xoKCB{68@q=)}90JCVF33Lb?M@bC5mog<2~vPXXzk7B$|75Lya& zL)t=%E&Pk`S-PznN<)4iAI;NU!@f0_V&wOND{4!~b@1&pAN$<uq_`Xeq?hMesa(bP zh2<#7d$>Goqzvq>;o=lr=43Xx{tUtEaN3B>CWZ)Uac%%Y9--wFCA~Ek7aAC_APm}b zpXAnlNOIF+;t%pPlAxIkvv1neXa8*XxNLX6ZDDR(+U5bi-=^>US$+3TyUFaf{gSPI z&A@*!TUbRQ-p-3$KUDc=Hp9j|c+t%)Z{KNid2DyGia&p6lgtpOkDeM{Qy=)H&22V` zFBRKM=Etf98a&;o2pD`R2ctkyWxz`aTDZXBjY52aOspy*2=?xDIZi>&&))8y?Pe*( zt;DkFm|`@cFI!Kx=wFn7fh&cqy-f1RZb2KRCK7JNBsApYHWk=M5J&|wBQOdb+2_^g z*;b(s3o^wX$sWZHhUhNh^+UU2+hPaWw)eN~kHy66akHOp4#cDm_4zDet<qcA&k#)o zZ(%Dv>K1Mqx+sR1`nMz9wwQP*hL>=&Kei3+FtV>|yg%{T(6f`N5BR!MdXj8xHG^3) zqCJiEswQF>ZLP}3Hs3ciKciD63}0Z^MFL6+`V473sGm^=U1^Mx3`Y|Mrl>H0pEcT6 zg^H5MH*WeRUNMs9VN5fcZQ=>}GHBs};LS}+P-y~P#IlYJ0P8ym@R(0L;jYe*1D4ll zwDy~vES0HtyCCI2411OeiC>SA#1wX;8DRXzVihdy^T9BjrZUmN_=b)~n*!R4%Wps~ zkbFH!%W;I*pJZ#8%)c_#RUtKlOksrV!Y3i%vh>?b076sjL-)-NtH_t7E8;OBZOPa@ zAofQ3jdT&<%k!kzaG)7qW3j4HcvQe1&&jd+f8}J3!f+>UDx7H_B8^6hA&r*!PDQ-B za5jys`+BVIUd>7lmgi)Y&fyh!`yosPQAwyIh?7D-h2#b7);pTpdfDrCm->#&W_JPe zRvi?=>OgitOs_62y`!|JbhXf5STOdjJDPjj*#EK7D|Q>bl1&L=hPkN@2)(QE#vP@l zt9uJeTG&n{WG78N)aYu19%#`y%8i44oVsSwNLRxgR6hF`tsw;8VRy)COB4<JUN!)% z`7vdOk&d?<(g93fs3|PTNPor1pPNW$3<O#_EA7})G$BSpfHV?TmULI#dE$qx7wbVk z&~JAC_{wwIBIXAzc0go{b$tyF-B4|{28H;j=K3zuV<qS%wMu_t^4i`@H+DSvdn-bD zuywne$M!>`B4i4SsLAa4`Y(WRazi3X`V<D0HSABo{&CC0QDLaak%OFWRGk<uFflyE z01;aMG+U7Ux04Vvs_$?k#S`3MQCM3<V`66JXbM8S0++=Hls0KFaFn8zqPUf$OWb}n zqfAxQjNk357Sh#sz!o$`29{*=IlAY>v!fMiDilJX?r1a{9%U3-*f6J-iKJh{i^La~ z$yJ?ASG(MP>=IKImh$g9bD7xJqR}YghlfIHszUwEmoF2yQ`Xet0HgZCGNmYge2TvH z+d^IF=q3{GD`-m8K+R-7AdPA64e{l|c4AofbmD)4hUvwM1bw^%@mXLok{H%R#q;qz z+gU3h@JZH-G^8$-2?T_&a!E51(fhSa5<Hg^#*~Dm+3yoyjfz%;wzVmN5IR8li+ca$ zwbZv$1+j|?wXTbuGq7njBBY45qR%Et4o^v_!hYa|M)ro&WEKN*NJUs@_M!t6LI5%V zb^o{*FLPH_lzI_f#b&eq@tD<1VOkJ+2ytha{ElMVVN)iIbK7^?-LEs9AK$kfBlRpq z&WOB{-VPLkoxxbQ)#})8aqPMdAy#B$fM7_p2T*$qp*<$k%A*nEqb2)XX2TVMsJB6n z5Ki1z3o9gX8w9zYljMj)X!33V6x+^OOEq2l=?|Yh3Kn5AV(XaYn%?@QTiAGN3iTCs zuiJh<gakLKH&e=^81|Pbwkz%K-#_xZ{l*gWWfmrw<kG4&bARQwUujd+tDeM*C@Rx6 z11INo@J#D)1GU>Q$w^j>=mA9b7)O1^G1VKyM1v8fOAgDLfFwlSN7aDkBbh=1Vofi; z{_|sQ`!zOY>fWC264~Y0Y;ZbE!j3Cqv4wlfV?E8SiTe3tr;ceTaXo*JV!Oufp0KT} z!>xB&7aARQo9It=F0Wa;$5j)X(=fKBtv5LhYKFC6eJA)BwZ>zny85O7zI6@a-&ln8 zLF2LorHz$i{9dO!8mb#Jp?&t4L$8*9&!)KTkLxQVHBP<TbHssoPog_o=3mwwtV@KV zireEK8}FR5BG+eEpwBwd2D|})dgY_Q2B5wZpn|mygmgKlra{EZJY7yZo5m&j{9qWx zE8O;n{BL~oK~`lq8@)eqn$(vwfc@Bh@IIfql=_C<GvQxvrlJvD<F@~Ktm_eQgEgD% z?!({nJfYs{bi1wWf?t|!m)VqMi`;hnutTw3MQL$4X)*D9kQ|C9QC?8%5fYb^YdVz? zQsUed5GFXu0nNA15B60d*&xu`$hk}#W*VjtA8;PMu<BbF6azGv020K{|Bw1ZqtWdC zv10y}5;Ko6{LtwAq04MCsz3h~A9KHBmD(9qVYA)#%{FDJ+rGu72veO-r(0bfUmjTD zVh<=zyDR&gV%uVOFI8-tf#30zO(9x_m`T(DkVd$qEgFtgKq!btMoKn37>8FA!bZwX zC$1xtlq<lQLY=`b$iAR{i+x7zq#6|4gLxJ806iIiFMa3*aq|oN)D*i<J@8)_7aOwS z!EGq}F8Ih}GLQ%XWitXT(+PcVneKdy3?-^SzY91_c)LZK5>a{pU|8*e#v_V+#E4OT zjwi(7(vGZ$V!mG>tD`=FtRvSqWZ9$*B?GPmVd1ek!0@{$s=gg&_gx>I&W_E$e<7Y+ z5K(_sDS$qH^8rKPSita&*B->#;u88_rMf;Axsguitwh`|=XF8(EVlU^L*PKbu#TN~ zwj8|9X*SENE}$egSAG|3#!^5By}_`$$?RM3+{=QMMid7b`V01GIvvI+&E63R2wQNp zn}sc$*2c&2oUL%!tO4~7wk4n)tpFT)D3<_3R0r=|=}&0KCf!VqIpm|jC(z<~qb-#Q zZxk@2wJZtt%hiN1;J9w_Hzt9B+S-HzVkb8@NI<A}HToJm^>l-+0XLm`=_dDWyDqXB zn&w}0*`hmpYVLH;R9>jKpb<gg%(l4~ypf9Bxv2Wi1($A_^jdk{jE)tJ3yj8z@$T_c z8pf9^GfJvD8fVo`G05$eQ|sE}Rc<l;)ZEge*Uvb2`dFWIa*z!H{ov^)c7(Bt?gtnf z`c(L2$WYOKPWGOvwyF}VUQoZy5E{)Hgi*&oBTW%MqUJG((HKy}{S^(IPRAg^Fv|H$ zl9Jyq6L(c0ooR|lI@rqIVYg==f-`A&7$PDJcJM8`UEN~$g{#{J2S|)Sh!2=9q%X+l zTa9@$6Qj}xoq-Ra@}shb8xQ#d7qWH5Fx|!X@^O5#+Gp=BEK1u8r-Py>gr%Tssmku7 zB4?i;DJ=yE$<pA_cr!K(LE$dAB>6)n>a-tiWd=_(RksK=Y6Abz5;b5mLI|>)(FA9o zGzACes-Q@1Vend}5C)iY7*G)}1M%Udge?eW(1HnSXri;yq(~2bXQq`x;Yrz#0k&ke zS%JGlk~lDWC_ny*-Pvc@4#dzy&@`+2PkV%<dXwH^v75aAd|e%wGxk5n&Qaf;{{H>% zOIv<3)+u>drFF184*~^AoZL$_J<;#J>d$8hF1HEz)8d7HT$%mI=(a%Fw_CitukY~T zzCPh-wvU#V(e-YoddEiUO$O~Gr_8a91@$Jc+rpZOpW6;!qTct6s-1GiRv51Kzn!ku z>d;8_q{~ie0yF5Z-59^<YXgm6;>#vLXATUx*cq!zD=G$XZeu&u5Te*HqWE4IIDJ=3 z;X=s*MnE=AeJ9|E8#P5YEW>Y3>i7+gy{D`72zWgEJ6_;p$$k1u>hqEMJ4WhXT+1`J z2UoHdw1-mEKE?MEYBN#+HGKNk5c-SiJgPNDBrxIO3hq2zQ?Q-Gzn`%I_?VYp&dv2M zvIvf0jiNBnpf1lm=3_A6ApuPS)>4!*8O26GMgpxwaM6T-up7}x$fShgk;qe5v^RIo z>TaB#z4r{2{wUbivuj#sL%^MIIAif88=Zo8VO`(VhtJ#lK)G7`AVbhecjuza-rrB| zo4s>x>$20;IoY}UyhY=kM#Bz+WZSjeUwYHVtw){{#_rt79ybJJr`6`3xa`^N&f)n! zT=yimh90T==dW``)l)vNIle^QUoEWPPd=w1q+I0(zj?aa4;5EaZaQsy5FJ4LeF}5{ z$zg##sP#GwKG2!Ph}IYe2=jqBViZeEZy;=DiXR5O3_2O25<n7mLS%x7gM{b{!w(P? z0=P&Yp-_Zku~0DH4=E1BGjO^O2jfzI(jhjuT#kfkV(O}@xvr^qFQ2zJ8jM$!1h$Ot zj<|y+lfhEzQGyM##zq{lAXVH55h^k7{GA!f1bGUfVFwO8ST?yXJa<ytqzSR@)8+~l zp&)P=VnN~Zl9(XuOf8SNJ7P77x(<)xt!S+7C=bNv)>Y~Q9y=cg)D}9l1=&&Xw&3<J zxv^Z#!N+`F&J80}F^ph1oN<Eyev!9FzDcM(+C|I^#6zZb^PH(6wkFw*`RZRKqg{mf zl9?Qlv9lV2il@|KFqwkxNcZ?Hfs(3tFuHf%^1G+H=2l&mnrKQmT&@OD%(q1Lj~dJt zZ;!_&t(d>l?g{8))$`(k@{a1p3a{ens7utuI^2=vshxrlD-kY-br`D+hAM=))3(PZ zpyB3*357l{^D%K-(OTUkjEoJ4X>x<^UfmPAA7hlXG?QgK21ybCZk1lxS0Sifv<291 zEjcA#Q%-#E!a(4PJtQIWk)#atL{s*GU*JZt07Zc#S!1%fwV7fXkwZu$LI=?Jii9b& z9N7&))d3Vh8fPHy4GD@Ijl7yD&?%NGuJ_OccYXkIaDN7{Ux?ntALbeUyb?sbz03s# zLfJD@r)GcJGkZS!PFErpG3low5RJ#jCL63{qLHqyaMc*AVNejQp_b+{ucvHN$a_^~ zK+n|6Qz^l#n5WiWi;#UEURyWC?C}74{5m0i9bm^jS=(82np)-?!p5j&Hj8-6#y5q$ z-cZx{GVhaJT^!E3OK(B$?9)Oq;h*nmgonr@l}$~5ny#*74^BUz-dtT@>WZ;S_3r_} zQNaQi9BKB}jHzND-dA1Yeacj3_qnU%q4vw$L-Baogt=3ig3Ri*h;4T_HQn8u6~D8% zu3dIG<o3Gdk3PPnwu7!aYL~z(vic`K@vru8PX5cDD<+oV-HH4Z>R>z7KUO$}07IDA zm>ULZ#zLtQpB=zl`Xly=k@2w#_&57?*Xi!kJ;wQT><Q#XB7^vAZbYO9VC=e@BB$w= zeCM@bbhOZTYK^r-`GA32`zalZp2u(lBi6_x;2QK{K1ATnNuwgnM+j>Y(diU_s7c9> zJt9<SRq_L@|I`sGzL@a)eEtMmbk<oz6St`^Y~8@ZD_52yC@@=Tv^I=uWsjPGpIf_f zW&OBT*mo~lg=MYbyP-r^ccQc`F>NLo6(QTdY?<&%(7s~gGuhxX6Ia@TxNd)1c%NSn z1vg!?!9F%t+BbteRT}T^ikFtgySn40Y{9CQ#s-^l6%*Z|a#r=PT|QRt>uzZ1KDuU2 z_UG&)_39e07-r|Hmy8d@CawADtYBN~ud`dnC6l4WwkC7cwB?%@#G0C73m(O(B@{A= zKYo4MwAZI+m;dFW_8z_0tM6&w{t;apJRSqCB|8-3|G^xy4{cteem4EFg?KyO^H>jM zvPiWhJ7a++c1XQBBKT_Aev;X1adZCx?O6i7i}=MPVM!{DFhM1no>Vgi=FJObSSzE4 z!cz06q4?jt9&?tl`>Ym||8Lbn@fQ|L_G8v#F`IpVs|l!&x&>B}_z$1B(XGyIsHAWY znA8qOJ=@^)4xPoaU-h^g^}_jK@kTQ7$?aFf|5I6D)sIC2%qiC(coF8shYu$ie*)ue ze%G2{U`NRIn<&=&^cNmI;H`MZjd<VtpGTl)=d%@xm^8S)U#_Sd!ESrP&$tl*S{-6v zHU746f`VFpr_y3|y~WgT*zL9|aiKMuO$cfv3I?0K&4hn-UORfaaCwRu*tY+`)hv{_ zo+*t|1tZXVm`h?2D?`iK0qSQ5zZ8jAjTN+=1dHD!a2XVDzEj`SD*T+ir<OkZ5SuV- z7Nq}?K)BqlR}v^C0$dxa>~?#3I1s@KF{obqiu%g9@l{o^DS=Z{*u!j)-EktzHk%L~ zUeueNeuutfbuxAHnCfe9zB#!P8?xVF){CM-QK}``94<NKcSM~>{Bxq4Q=lI*@*(t$ z0*llTSuC3*FY_i0Esz=DU(#!`f?@wi{if=Z>r@~3asMrB8H6RvvkTcW)vbP8ZeWX4 zzxps+&i<@^TXl<*)K}C$u*vFs=c>O<uva_OepgZ3^mp(p%~u)K{5Z{k!@f>W^5N zctHJ;`gb-C%!>u<(kED#4A{XPx$+SHa}?%+(O6P8P)JhxL-2PKS-#1p!TbB=d;5nL zMMOs=yP`{Yvn%^wn}ki9e$C!VtI_NeVz`$Lz%L_RchA@F7J^6AM{gFM+M7MOSKOPu ztXH`F#C^w(VO);r;56Hd1-i|6n#b*T>ceqoYd9adu&Oc+x`?PF5k{oi7$_HEV@K2z zymA4)N+`DI{|3bN<-4D@&N)YxIVoqR5q@8N=Kc5COtz?XZfomYb%y==nU^drYn<z` zI3Op&P<B{6a~sQ+UNZCgGyf!<FPq<cb%olx;??)eGQVcOpliX$4LaBZ+E?D^A8Ad0 z$!te|Q9b|E{Q0*=&1>>b!5Ctr?PZ$sZJGC4(Lx<*GmYK3@9};69v2?xCz*86!x1fq z9-^Oe{|eU+0lSwM-%%oRlZiDYBcsgabpN8BFSM>vThx{{TLd#395z2-=dk<PIpPuZ z<pJTl*?Ij8p`A|kz3!1Om%j$N33*p`(O7_$HaZj{d(8I+3YLqBkKR<!&s8!;0~t<( zT2$=h4*{AQK~EBs8OR;j2r7DxyMPde5d7m8ikXqDf`1f1%EuaawIs?)<5jbg7ubKc zZt@&ax@GmMOW*U%tQ)VsqkdT1kaCx=PIkQa_T-k;%Zv_NUDdKze!96~#-fy`B&>J; zUPumj_0A`QOXa%S$dG#HKaV)PHrXJUqTZlMEURp*D&K#c?PX)`>TojQ>yzh(U5ggE z+}3v2ww-mQmrPrgHX82`E)7LZ#<AlK=E`7c)MO|tH5#Ks?%>9*S)OrYMVHZ2*%Ix2 z-f6n^R()lg_{@W9puD-%bs!$vZY>)VYBn{#u=iUtgZ1U*4oibOw!C4kr;~&cIo+d? zul5rmlh}%uY=)i|^mJ>IyR&mweFZIu_7x~{W-C@zr5Q1cK^!<Bg2VsRurR(%#1S|` zYwL0m&n4nj+@}zRJ&USpS#4s;Y~zZ9eWH-8pMKL*o~}gQT@TmAyS%oB%JQGR9;s?< zv&fG7)Gha0<)CBiJ)eEIvfOcv$yK}kEft6y@!BTI=&RB*quy=X`dubI8K|g`#<A+c zu_@eH+u-wTbt6*E)bp*YyT-5ZR4if>y+OU~frPEZqXZ04#L0$|tY}D-NPT^J>z!>2 zLk;VdDSg7vTYSmL<dC(};Tc!neZw!R<YrH$rN>jc%I1lCVSm>+G7BEY6w@(XH|*G{ zSt~)o`-!M-5J4aV2N@%gOd!0FRF<O!#m9U6kFVVF==S-Mhi2~V9_NvnLHaK?Pkq7` z?ix4$l@FtxOlVuZXU{|-{Hx&dvoBa)FB{YqL)jDM%`FJ%Sg7aMBFHANwZS6*`ZF@< zz`_T&TK=t0D6~iK%+mJGy7sE(5;H@Xh~q{km$Yo`zM^*dUF)Y^!|pF^zd29)n7?|A zpWXOlHr-seY|FBeud8b&T+}y3VB@5*h1DnfkCc!_-QhK%%f*~17U2n>IBn|vW}Drt z-eWVGJOi3H9hf$!nudR8+Nmhg011-@!@NC3DA2QVhVsnWtq@_vVUsn7Lgo{)!})lf zHnxUxXX|Z}q6~&9Cutz=WXN1iJCP;&D8)pBPR#N=xfBTp2pd7-lFF5XXBc!;f}%nR z1Ca6zjC^CAo!5Zpsbiu(lgpE2dZaZQmR3Pl1Nu#$p&}HOO1KhD0hr0cDxiUoC%PDR z<vY-xaqjh)W9Ntqi&lzo{m`gwqUSlshu<Mn0MU*M{Eu}I3!C5LlXoPRT%I1kYT1-Y z3l}!saoa6Bc04k3>z2y;b(?1FUenyXAUfrc`fgeI<kr?$mpEtk;|#$A*_8eJpAUy4 zmAH}r{@#(p<>i%?Q>s#3O>1`S`<Zm<q&agYx4JF*+s@rKMs&j5T(hOqaa(aQM;$-| z9D^wZApmG+;hWiI^rue`?IP1I!JXZ;240!}o;^=!$?hKdXuoiqc>d7)!ab-ztxcdp z<papg0lTFn@a$IMc_Ueo={-{J4E$-b`qaoyzz>i(oNgfzqrSy+Qa-h~$kCFl>tV#u zT0yo>Sj8|%X=Z5eLYl_j3H$wFA3GlQ`NIC8!J3ZtWgQ*Tf>iySj%6K(I%;b=*zAUs z@a=8sq4nu=XBezD!_2jBtet7FSq<zc{oYYi+aZ<tDIe|MD;+iJqS}s*TK4Ul4kf#( zA@v8k`-65&H3)aI+mb)swd<$JD{Th7^<YiSL95<i%iflMtG2xz`zX;}pP@;NXp2f_ z1S=4OdG##z9~jV(lIRI-$FGkYP$?Ftb;kfo9l{Z@1K8co2_kr~c7xu*T1`I^<->Qn zIF@m`p^X#2_+Y@)f(;Nc7NdxOl%T-$NRFKpzZ*Diiyv-9$byI~Y_VA7@fF$<pa<7J zoQP{X0=7?b9<h_eCQhT%F7PE0pP?tn5BcCd?VlbSw6_&I3|30yiO*>z<qF(Z+Jl-p z!EjK4ygq-UK@Z-SsswZd)TuRrV3meSy7YVSGVUO;uoKyjZJ$_InD&(mR2(Wd-~Gt| z!w#K3ZwmSVH3CtGtc4em3MWDlgDk0#BzL1+sV*peC+<=2B<`tft(1rwozi04<T=BL z0BuCgn#-8Jg^!fW!tE9lLhs6}C5IXQeCl1`0z}bZHo=n}-dHfmSeis|T~RQ=o!&e< z8i*{9SP~TuW-)o)HXE~7miQ#eV@WvL^+vs~Bvxv+xItC8N_@_3Ze|)&BC^WTP?^9? zE`wPwSqv`5JOP)7F`vnpU^axC^qE7xu}PsO6qZdESu|NavrKitl2&XB&XO8eyfPB< z*#tqaw-{_<>4H|Dx5g*3@-my-zW{NS^+s=4LU=S;5ULvFYRU7E$thNp8*A(h3CX5s zqQ~5@=c+ot#VX*Ndavjg1ef4*RI#r4+51F`-Xy>#L9~eMYl6w8mrb%>5bZT?ljVD6 ztEdNv0*uOqR@o*xU>7I~%q&O{-x-<HE+joZ!4UArf^lPfZK-Qh-0e44me(y)=6dR8 zR5g{BJ&;mTRkZ=xT*+W5%gpv=uJVAlCEQeLvbhB-ELJK-vC?ySG_YZczqVF%d(4-N z>#ny*Sp3}O21M?Rd(O98C84<|F{P!iYQi+&Y*nsLu5^Ihu$V)k)=GECZL$l#xZCMb z%xz~?w@;eYGR~3+M<Sw~*&RV=NZQC0rnlnOAzEyDbrCZHuFGga`<fBS3>_}0ce(?P zl902^TxqD4$DQx-Ouql3YC)>Mv?0+^0b7X9MdejK@03cTh{%+U%}ktHqQF-^C6`xw zO``FD0}P~L0z_&PDjancf@m?ZGR0TUYN{lM-RfudpltLzU;yJ{R+GzQ*P|q&zCuzY zP@pguLKr`*Q*oFilK?v&y$CF+j-b`jSz!_lC6mW>m+2px;ND~mcq=BCmMTz-PuXY< zOa5z2j)rQ{(LTN*&~0=Yh5whf_W+NhI=_eaPTAgjUu|FYx>|LuiX}^yT;wh{;oiU% z_p&Z@Y`}m`F<A5%LqajdV2A>N5C~v?rUXJU2@qOB4H#QH{+~N5*}@@#Jm2%V%+B2D zcW!yhdC$u$WMz8Y@Q7Sm;An!nZCaUSSuojY3}>m>9D|bq{)XtxPsx!lnpMKJ$><Xt zF&<MH<b>l0=VE#0Q${LhbVQ?(avB~M5H(A<6VIs~Hmen|XCr57cj;wDg~y7PjIZR* zau8CZLCaPfRJMsKeNi~1P;*LSAkgMF^Q=afBekooDqXYIppZJ`(kv}2%`0n&8lEg` z4=C(<tB0oZo?G5*zM^dDv)$`+EyUx>+1ET{^|A%kM<y1x#uz3LMy<<DY7ZaQj!U#` zY-r{E#X$#N%b`-Wx2k=mUYAOTQF%~~)=IKqH7Nk&Ngcc#Ga&^=*dTTKM`3wmBT>#z zXK7m|9Wcfc3=~;>1jcJfX#rU|Ppz!j;7pMyJxd%-z##=(QTY&BIZl!@lVSAb*KE2t zsC)F&?X{LH;g7;@GHG<l)t9c1ggN89H5)GN%OVBr+yD26iP=l8>Hi9oIy36f@s3g3 zRt#I$TBG}b-9;4UrV$&5Ij9vP)Y;Np6VLT3k-c!=P<<;z&y-p^C+_T2?PjhnuA3&) zZg_w4<Qu0qYc+&_{k1z9zTWdijqi((MtsPgOUPBXo9=$qIjp?KA_P8ufT$hG$~JdA zhqt47vCs~9=DDGlrxbV@Sx3ZS)=8#gMk^~|fsjK8G`t+Zh0s`6_`HyX5VAAko@iEd zOxp$Ui_zMov96iKTPO_CG{j;+9i$>iMx50MTey|GHd-~Qvv|JOonzEpncEx-<v9y0 zm)_IUoLbTpX`fKDtJ|72x}kJTaZZV+r1abUZ5J+SB#YkPw{?DJ+ZDpeCzj|(4{Q*g zZjd)i#+K*VRd$(7uXh?c?f!s0nV*<k;HzKKRy(C8tPNSU=2)~eD?dN0CV%R-aLf5u z?t6c<e#sMrzoM;k{?^QfaFTAI4p>PZbcYu(#|MF)Yep>~>mY?NK)j*MDlofYp2?IA zdWFjqQYB^@4u{F4kONMK_E=?Xxs$LThk3UpU19S{Nzmr?e_{2qb`9sV2yanqH0d@5 zKGJp8aZ;((RpJ-E(g5Ey-P)#3bab(6W+bgQb9J5E$fs<9fcfNuxIvFo=h1Dgwcy+w zPuTU(HesXi2ZPm;XEiGog3BROSUdQwi5UwQ_J3+1m1G-UYluB@01JOMr|AGf`7CDG z0ig`8Ee4)kL6qbPGy~CNdwL7bt`jNhr{b~f<0Mqx@25+$lS$DH(Vxp|&m0t?&qQTw z7?k*9V*W>p{DU=}4O&dJVTtJY(^>`^lPL~F6O|IFf&j!DWck6E9}tqnN<Dwe|6YM; zr^bTbf=2j?6yN9n%~Kky00C^<Jd&E%25u^$XWL`jwmn9G3&|zpw+nN0Mi6&@S<u*6 z0Af?8QAcjvE*!|Mh<WTJwP=x$va>z(gl(B;1+U04#Mx7H@PM!jr;8}`p8X5AFzRgZ z`H&lBbVagpDgs^cAL}3%1zD$XOne$PNmH;OFF;TKQt?TS2u1Xly;A5E%X>i&LS8)c z94WDnS|omqYiN=XeK3B}x+|c@HmfZ(WQ<~YG9AvJ!q|jbd#I*5WUrl&T>ys=H|eYa z=2P;fwY|sZguD`qxdX)M>uI;{{E0Cl55B`!K{}wLHeN|4VH*Yn<g*Q9SfO!lQOZw* zkafssaRZDwfN)YdGl3=tagv7+=p$jsl@<eJQy@3Ndeb-M#@9Z5?ZzpYAF_ng3vX+5 zTH)=3$}HtU;ccx>BfJf$tm5E77<2U`gq<XGP!UiZ1jtdRA)$etjOxr~aJ9IO?-5=C z+DtnAxJGk)x)g9UQqsfg4C>>@HG1qNC7Hcyb!M;d687pf$B(PUZ=T|xM7)L(EmRVw z;~E{-q~ZvOOr2pdE3KGuy*wmJ%9P@R0*A2yuAhIFS3E2{e{lXEPa&La>y?-<Bh!To zj_su>W>-8zjMwKGjQ$BzcAdCp)p^-It?U!LP5Hxpchm^Keq$?$57$5a!Z+()BJRD{ z6WgCQN}23z-^iC&TytVqsnMs6p-*RQ(ixw2F8vzfP=&GB|8F?{vwhrLatNCSGk0hY z#-0-r+MT6XGIxqGf<)4vq(!0^mfU%UhXXyCkz}3fmG;0s&`8l>X!W^JfDuz9HUo@{ zuuFqpp>Uv)!psk76{RqQDF$&!v^n_EC<X|E2=v1&tF#A99!*E!2roB2%bSypGmBEC zbK0u4x<|}zJLr=Q&sQCz4|MEa6Bt+TWjpQ#->T`}V@{zZoqC)oA7_w~`M~N|5Q|_k zJ;Up>vyh*=Kjn%>HQJW}(v6${w!9Z%lq8ZlF>@K=Ek<&|<By|*pF(_rY$Mkyxd0o` z9iYKb(<Rj`7^r%@G=jMiHcZZD2IK>IT4DB~B~Y_O;v9%9bdID;FI$4}a;O}@l!+Yy zZ67)fU;`NEa8WOT7DH7N_&*q17&?q>qwQXMcFgOOnF<0N*-^sEWbzzvC)kr_vv+i5 zgPm2{O*$B>IAd@{>+WUK><(pc@%$Y%QkK)@5Tn}4^Ln|tOsDsh=f>O`Mru?jc?N+S zjv9?oZ;e0J6*s%IG6n*@)S#6c137i!nnDgDIU_YINmjH(${tUCloc<{sdVK)q-C~s z^SX%F!SQCb+A?8SAq-ab;ILesL&}?2F1w-0Zdb;3_7dq1y_J`mAZv20%2Kk(?Wvhm z?B<C)R5iaX)~Hbj6pYoRaxz5C8+`t%vdIxuU7*mXU^r*)l)CwAl{!kS!UD{$Q^4vV zId!-6dwv9L%yh&nL{#kpc<3eJ(>gJojYahs`X@A7)HA9Qm5P}EkW30FIDr{C1ON{u z1g5dIMr=}b5GjQLE~kiOEsekhAqGW;iWew{c8QDP()f-j!!>b}0<_?aiq6~yI>*3B zi`CdXW~Cg76+JS8SL=N!|F26HjVUaAW#N(;&=GruQ@h?1{-Ra%60++(*a{-;SN={& z3m*yJzP9zU)P6F#y&<2IYIRcSWv>_H=QF%ksji&bymFkwB+s?s!OWBD?KvFpwAYaF z6HB9tl5(fq9jdFlXQI1E?Q^gHx<AmO(>ncuVOg#lH7*|HYd$Tnnm)HD6gV_v+Ekb4 zp_-m+TC}!*?8^M?Y`$XK{JN&qk1Sq6xYYg&+mlym)o2Awb#46$jTWSN#;OI(jOptu zaCbaIeUAorw`cR3Q9bDuE~l}?)pf9WSllS}RTN5{AmKP8TP%l##6<JOQyPLORCq}3 z29Olcq|6~?XvRQkK(r=z?ty21f8f%m1Hq?-8`FP!2rzXn{?MP&50cPbf$7sH9>4O+ z<9w~)>KD$L^#-v&PKLdn&JjL-V;0%hPd@a%E}(nDen@49b&%5#O-QsX6;-7Ym_{)3 zVl37&u%3X?ma&!7b)K&CFgV2vc<B9{78(wQr#j3(TH2ANbd_J1HEH_%S<^?==ncz+ zeMd}4A#*Ruof{fHebUScWBtpYyJ&g6Bkq)0TbpNeO-SZTTQ<*}P+RJ^@*sL}wN{jA zBc*NU)`WPe8U9wNN7};jNi()IGtt_S<HvPW8w|D*seQ!g)hl<B`$w;=&0@7)hf?{0 z@B?v19OSjbTBBT(*S=|Np*c9RBX3(TVHwuosc2u(;x?GFtLy8Fb^3K}QuDC(rOS3S zJK9EfPa4}&uG4W-oibZ}yvoPeMsDt^^%~KA*sCv=*{Ta7OtFNMSb%~446ZwhBsYuk zRicCis~|Pe!6av(|HFW>Wds-QvlU}1h5qyxV^(mlpUfHjzhVqKa?A?iY8<~>_=ad! zk8dO`rvOwQj>Y9oP2*Ot9wKK_hBC~WVtf!r`yU%(p%oD8e+cg4QUi%h2a{}O5}EG* zZ-HLS&Y#F<df>kWd<|*0G}o#4taLmE^k0-iGxUlg8Xl6I@jpH*%~?tx@JuRJn#pu1 z@%_I=rNM%Y&`YFTCG|8jY9=GAaO%H4EqhwG9gJlaZKg1oi{db>rau><CW$!BhD_L* z!AxUl|8p=H+efig>VdE^b)^5<Ul0$5R1wslIVkfQ|3k)r0e^1Jf6E&%5M57(#`gVt z`hbi~E}aIM+#)H*C}0!CF-T~}1m*#-7eOT@VVgJ_v1sWO#eq0Sn5yAvFu@5#qrFV* zskv3ck;nH6-{1Jk-G+6$z}U0tweuNQ)hRF{#tdHwF?*QpVdUBg<&D$lH;2hx!U8?{ zL(K32nf9j#-@TD2_C7>%>b8}?cL9itw!Y(Bo<jblcl>r%WpI?%Pj4J{j!bwjl?n=A z?##%PqWmuA8zS)5vCxk(#bC(9jFU0xQk5C=7R7TRzMFn&JpLe}gI6mL{C!MbWW0*I zJeV8RWO=t%FK{h(m362pOLR55=AN7W`u2&T{v&qlpQUo)8&gl^+xyG^_=H+E&E8{g zDtj>Tm&AiGOuNYD{?mSBc+fDm!jX{TQ=<NBX1I(RCaM@z=LO<@=z0bj?tw^8BS&Ps zWpKq%PSXQJW43asCxpYl?bRCJ01QK+v3)Z5Yt*8UtkyYg$mx>#IZQaQl<E7eaQF#e zqGvS{U^h}WdF!;(YbU5y`Or$<Ov~3!8(a|_2-ANO`{+1?d5FG4Ca>l|>^G`1^D^SV zM+ZBRqk?)b(96%pKAv6kG#;Gx_9RUJOrL=Ch#REmXQRXa?RfD@|1DZP<I73OQy90S zkbCMS;6<a}H!3?r3qeKzn7zdcj-$08UJ(+E2t_5b1SU5djr8?PVU5=T=|@1w1JhT~ zgyxT=-&`s0k1&hRyE&EAm}FI*omB`|N~Uf;kDHvcML&66e*U`2`Yk!qczjHA^U3k- z_iuhtxzyzbq;+zB&os|XH+iP@6ifoRmD3iMw1voX{fd>OH<>K-+Z~L-ZeSdCe_=8y zv$DF<yii`Lj<w4ALrX*6qHBtT*CRPa2-bo4PL7ac<OqezavHzGGCDcXKcL|v8UfgB zv>gjbD+f$Xn5p?QtF#T$_pgT|@$@QGPJGo8D>TeAt8fg6onA*w0M><Bp8uk5?6i9- zWaFv}J9P=+`GkC2O<{*FalOY<J0_90cfnq#wWcePcT+sG13<5G`FMJ8{8o##W_(TF zO$%<f_xF?X1;X>p@iDdM_^a=-IIAa==ijmLcDs$P+!j}iuEj;;q_SK-hF(6t&u*(3 zU!LE)pqCz!$h##W9aWv*rYjeIUm+JxEFjgC8ezyBN-_G-vS}?09R$E(jR6BMU5U^@ z(V0P0B}3^eADjeW+@$S6T2jX+!gXXQh=c{DMBthD%*Mu<g-;f$bCeY^HW{l(WcT;Q zDr&=p4@FtG)@`y|%oe)|Yb;R(>wk<jIeCm644SQ*Lc@k-t<920<U$7w70jIMs)|^6 zlp|}olQF@{O#wFeF)_ckjiT>`k2(;0!J{>|O2$aekt_pC0cNlWBQj*NqU$H3%h)ui z?qoV$6o>@NL$D;;M02ATJ{}%ng;dfcXd{fw1p6fDH854f8<GVBq~2IA$qJQYJA#Y_ zQfyl{H<2a3|0gf!b#fQiA$(epW73*TFOJx(Hb{}lWAvI|2_FxX$+DCS$k=DECaML> zL_5c+rAD;odO-?4m`z)jE@0QsIP#m%s{3yxi%G|qJ9mC592Bk*4$?J5vvrf&4==v> zL*Z%RPT^^~#-wiB-EW#fR>F=Qt#Nm25b;_CbGzR|l<+O7jV3LT3y%tNHaS?@`}o41 zF$uNZ<kET7A%4-(^jayOm&JAc`sr7MeRG*R_b<v}%6@d?4)I}rc;w;_N$pwBfcmHQ zwv-tAVx;U4#K1>Fw7Y~77Aa>jb2bAph2cqyb2hF{`0@kc^4I@JroH*5@Ck{3%HA7J ze{=QfTZrXPG(~C3e0zG=<=@}#yeD$(it9e|@}t3Eyl(l}7SBEY4FhdhBIcb^!*gCl znFlPvfq4vU4akQLkM!yPH0F@Xp4CK5WGsrIY#-Z~%66Yny0cS6LL^vZ{#CoPf547v zDOQeSMJf?e5Ldtea!LXg_#yu@^rU^*gZ%^VuaIC)(1`K^c$#TLNtk$0pons6AR0!$ zLUWQKxeJ{spst%xMbvmTKy*u_|1@&<2(Jsb3$Ne98JRk3nUx!DJ=x2tx%A513Tb^+ z6{A$>`g95<Q&rWVnkYPIwQ@b!&Gj&ch2IZbH4Ohq%|kL7qc4yP&<$S-+&CxHHY_5H z(yH)BOYV;hYm2<Re!jdwPI`bN?8W<^3mgKn!%|EOF-72@FoD^W`ZJ(r8R5!E(A8os z#zJ<ArY<)-sfh`v?weLslGjwf<99jXtGd?|md7iq+{xfb<u0ZvU8_<tPY)x{kl1B9 z-I9Oc$!b5j`o)P_ZFE-Eg@)s}4Q(&{`{EobA%5D+5MQ0?S)tM_n+#7Ok~2WgViSH= z!n~$_SoqCbH^IKOb}j5yH<7$IURnRhmcOJ@f7vo|*Yp;@ROn#-*;M<caG;MKK&puQ zrL}+j<La&N3CG{tS~PrWR~Xaw>2ZR_y#^#BMQ;Q?NEWr8Kwqc!wGt6zh&EFKrvp{{ zN~{S=Y!iu^0Jos91XK~^De&WAO?3BQ!NF<=uyq~mg=a<yj1E?=Rj;oT{#mC-oVK)R z?V4h#Q8-%G9*?(^-^Sa^uy(R#c4+HE_0Q45aJlmxlXTd@Ey1#qmN4x4_Gg|Yc9}Os z=Ke%~B+K-=x;mX+DlIOSzKV;XEp><KHOsn+TSDDZ;>r(~#oOa0#k@s$PSzc6DGpZY zT%MiJKfg1}p{soS^vIIw;22}*cuMOjV++=yo`T|dD%z@Ov!(S!t0^oRsA=_x^+YR- zRun2H5=~%|fM4gQs|vMD>7n5f8#?tsN@5RaH1W^l8V#@Kb6(2f^@31PSCF5~CtaD} zHvqx#ExV!o0Lk}Jze|zj2?JMi!xC>^ZcUbx|8oD`UrHT5QaV&bC3|pDTvIB|$&v2% z6%>eP4*a&})c8hn-$b+WaF^U1-Y9%4?aZpl@s?;DwsrU3yUt<P6q65z3bAMOB`-#w z8Z>6`1&HKhr(r4L3qt&ZY~Ue$d;q9YOJv}hM+5p1Omb%T%HEakh-=S^t}!cIW|NCt zvYY;N*Q~sC1sQXeEuA^!svEU*$tdANv&&^(v#x9Tve5*SsoPZk-nva@m)o@7>0Un? z!Atj^ZD6Nk^lh>fKMh(sMon0&1|FKqIv6qslh=z6Ed%72Dy!IIOJsI&k(zNe{r5j` zk_^X6`ZxFWKTWP6!%seNfB&|pQNmWNqVSmX-rpQQ`2bN0Cje~8WfmX!`rCUhuDV6| z?tzm(+(*>4Rl?Uf)zvuzW2UIDP+k<|WI}{Ib%x>RC*r31(n%p}+BT+-9GkW+IrRJX zl4DHYwrN6EI=PMW4E<6fuero2mvA4UMJq5i)7)epXyn;=e>z3@9f-LGcf5hMl*Uci zj^i)l8w{96&a4mrQ~Gl<d_B4T#TQ@fVl3&;$Z+9NT5tnn#-3IItdi@wkNUHjL)f=W zxB|ztGKYxwPhg|$@4Bt)_DtdF)gk?h+O>lC9!c~%TH#{M$B;EW?N3ttH6-F_R*bkE z%xs+9eK>1JJlEyUi3|T4SYbBZx6y2}B_?h-TH3hruKPE(H$8SVQM-|~4Xr_@In|BW zVgnhInnHim#YFuiJF;qqG`&6hB@?p%o1y+ku}Y5rxPFzA>{ANai<mpMN)Ah&m%Jo- zTk<!_-zA?&{vr7SbzJUcp*q;Kj0|)r6iMop!E}wy2z^yL{narTNvVnoVH4i-jNDD9 zM2!2QMokq~%nwo>BNe-q$cmhZ(g6f}5CD+Sf>5JC1{YNhE(3F0!pqbX3(RwM@_N|c zFzw=ol!l+B7sM0Mdy|AsMx{H<YCyb#Oc%ouRN_*U#w|Kh&v4I<xMbG6hFt%Ynqft2 z_lELnT+xDAZGhS+q<JzQZ)6b`Ph@ff8{D21^~2Cvoj^|v?WuLlS?ZQr1g}qTH)zR6 za+Ss8;yIgC=ak*1FgOglhY7jET6kq)qEOkK%Xih~C34IbrCnXZ#`1%tmN&?>Ql(76 z$#hO*p?1?0eXP0O(<)bIWm(nM?>D&fvK;|!P?al}G1;T~4{9s&3~cWA(L?15m&fK{ z)~>Hj3O^K`+eU6-gO#NfAS4*o;1-7UNR|0&(@~!?n_WwQKqAZxwy<UOIm0U!CThKj zdVP5By@#(ohk-AQ56e7iuOn>rJL|JM&?c06U%ORPS!-dO@oAf`H*?OVR=v)~F4S5z zN+5)YCd&}E8gy1RrguKlTO10oX1m^K%4>6G=~)DM_>yi%EXJsGuk#kUP6`2@0mFH& z*Y7NFja4Y}-Gp?I88a-Qs4d@6Y3k4^;uG$8HkVZ>6{d2Ts(+j_*H>Op!RM>kkox{2 z;Rsw5Iu&f8xr|1}tTY4tlHM>@EiDGFo?bbl;~Fu({1Z6Pa>+DgRgwURk+FuLorv&p zv=R76sC6XM%S1>W=qad%1G_wM3Sh6nDM0zsc0|E!6pSFE;zY!kd0?&wr8l1tn`~l0 zKjN<7P2T10Tav&7>10G6STwUFdt$Ckoo6!J;)Qlku~Vxs*jOESa`jr1$`w?}mAukM zx|OzkuRpal<Z2r=X=!4`?F`f5X=<t5y=q;Sb7VuSIarwG_QW?F5k3=+2p_$cidJ`x z=qfa6+k>^<P@a5CW!^oxmeBa7v59DjNox%hL&GpDv)nAp`CT&g_Cl>rsm`;T<uWs) z;grAxF*>czAm!Ag(3+p`9y^Z2s;Xjy+&E`xnc2|LnIxpPt&XsPg6uUf-7ft7w~JT& zfw+4o-?d@ch@?j;51V6l_vA4*Mm!^38vC%}t2Q0LXa*LS0U5%JS+ZNQ2IGMa4z4Ku z1XMXlM4({XWT3mXmejMX4KfvQpFUQG=p6zh1P(#hx0TaeK{z8y&FKjo3kEhe;iDcE zfcF9NrmRd+z#75I#zyOzI${$C4z8egkGJ98@%p80<JU|cW-Vw??@@)r;rU_jo?D(& zU#AYwZx4H}>)mt99&dA=tEGF*_>L9oaR=CWYsR-P*G_o6S+z$z#(P~a{(6#ymX0~h z+zw|!lNvkPaUB%ja-FB?(Fv**Bgd~HFZW*OO%_;My4Q{$zEnTq*A43HRN?uNFg=hl z(mS><pm)SyZ_}ZPIy~6gneFDnlh=-4JH6GN*DM~Axh}obz2j9YI9umR)%Zu62A((b zEZ(Mk=ZLv$GkH6p{9^nahJ21wkUwmmWFcY*Z$n+v>Jp)!boM~Ci|rMz6Z8QFl};xW z+VC;%K?kAOOY{Zm7ozQ4hK7!RFs<OIAU!GpmllpI;Su8(Ht@v8MltN#2yehAjN&M2 z{2H)}i04Aaqn!)TU}`&!mSJL}_emJ|l00-Gi-Fk*^s+fGSJuomHI1=zK33Xc*`hTx zGxE9eC|qWQciQYmB}b%TRaN0^M%k!RI5>`B9d6c9mQ-&9ZPv@IOdauhoi;5;SiiX_ zWHK;M)?aq=IP-A2oqKccL$m)pH~*+mz|;ySZZ3~)-BsluH|nc;xl+!#{ao9<tuwA1 zuk(eK<l6od+H`?T1JZlM`#}9IV4&z$g9_t$7V%+b4<Bddjhvwa_dPes{;<n?iGl<e zm7L=4l;FnV3{nFlW%c?X69fVdpgRjwQpuN$aZAe>QcRBNG&Y@@wdtJbh8!GYyZ)Aw zzW!rQ{z<yr$6V!0f9yN2fvtX&Y&c=i^fr!ls7Dsa6c{>;Ot{z+k{O^#r%wLyJLxwd z^XJOJx5<aJB=zihi!8!)G2R#sO|%1@7}M7(nTVFKT5^$OkK``NBa%L}hm55sW1~dR zLdKvUS$-gX)7(xLDi`7)kuQ@%k|>eNf7|~5`*>4^z8HR_EXsbFq6_{Qh=&*U_cl%k zwM=iU2Q-PXbe70@^dA>Q@*j7JJAQ6|4-hly6bGu#Guf4I3#=NJmMq+jRMnDLMGTM8 z6FZqoQTr`j5OI0-s_>JgLyrB~1ISJSSW>S5iIM8Fd`kT8G)kmiG74kB5_qw%knBSo z@oyzBOWuPdb_$`9K7a)3Pq%~9W`D><G{$o<wXhT{y#LcS`!nt1=i1NN`)PZ^!-?%r zv^)NPy#D{%KF@xhv$y#qH3*%Q&?V{1(Epra|M^dAsb6~Fnd2BV*db|w{?nDuoFJ~z zW}KuA@PAlH;lTSrv~x+Z6po!fRrvbnRv$Qhz!2V}pItpkX^Ap?GR&C={n^v{|A%9T zTnw@Z13Z(S>*IUiM@0O!f@)4ww;cr6QD5gESP1B%!6;MicH!*-Y@P77+wB?U{(vm~ z0JN-bp*I7tds}$B|2Yv_ml9GUw621L=mG8zKA<Ojn8DU%>?tYOyL8Y$OA*gF20al| zE!BG<J5s#_@O_9m17Z)-sFiR4wu<>;U}OpgXwsPQkfX7WgsEmUAWlI(Q%5G%c5JA@ zvU7cnaQC>*j%_XCf?T?a7#|JPH|92fQQw$ue`M)hN67HnNs*fMopiZ@%<df5vaN$I zxLD1ikt_DL(dCWlqoY?X+1oyP^^%(kpB6q@QBdnqbx+<k;pned9UZx-rv1hhShnq5 zF@N>w_PtA1jc&hb32b{w#B}vxOro)&kk4QYrL#`LlzCOWDbu%nMm`flvZfG|KV$j$ z-FNRE&whE;GvWRhXt!eH;b*Q&eRI=I-{8}UJ`2g|xFh(1d6<`@`9woMA|kP%%i+S5 zK1F0WhSZW`Qt4EZc`V(MZsAXaeCedS(Vb5ELclEaS@QrmjTB5H)0hpPEE5EQNlSt? z21ITlh|EwEWF@giEs@COAQx(+_op}^iJXqHgK<wZN*lX)$U%4xp2|b?H#)dYpNq$H z0iZarGVp+aDZ<<f`<XcTVga^Uw3{TkMp!H?=3gDMk(XINB(w^x{0|YokaQ#+LXu+{ zeqa?OjY0AN{`c7sebyJuB@cvhdiqG!?Mv^y_ull5!L>Da5asPlpLpVlbgj@6s?#6S zYL9`li=n^zx)AA&B=wJxE3xcTD*N=wh_LiAeKO-y5#$mc`A=Xw@xj(!AZfrCg?F2! z%%%|*5?(3e55O%Be>hdJWqz|Y>@NYc35+My#uxNsQ%rG0cZ281FRKs`l-S?BR7$Qh z-dVrO@Xl=E(CcZ!zjWz~bC~pbD^8Y^*o%J<{*O3DPI*%37d~UUCSH7g{XNT97LQ$? zYDwS3-Mc~fzXjb-ryofsKuafo;|MWb{O%<N?~=78cO87Pt@Fw^+)bONJk*tS=h_kL z$5lB8z9GJ#*#Eq+|K#CKTE#p+XZgRV4M;Rj;^7MzWbcBcY99FEF=F^p4qY*WN~cUs zY>5q#oGdD3s3+{Gu!C$mzxRqo(e`nj_uaPooI_7+V3f_n$&KXNEvegYzVOAmOI2;f z%Txl_vJgS~zx%NlOt`B5A1jvKoKv>6a#W5%c<Rya>B9YQE}Ng#F-&RRe*ZmNFS`A= zffzY&T}2~NcH;d+T}$M2l)?WJg&c4iEkTi+0V>Z^9RNlas=*@uckms`6J|+}MwkVl zE*N-dTsD!&Rw6C9;`uACcs{*j*L;_2erJQvcU_02%bc~Ubv}FK!A+YVd~oxo2X_nq zIxLJ(Kec`BV~&r=1*4{GtdwIw_4r|;;(YY{D^5OnWS2C@x2K~s>682AHEryBn;yjZ z4?M8>3E?~8cUvB~Zsk;R?@dJv+4DFYRsX`H578avc%LRj22up7SnVaEaV$dP+@Mb2 zq4CIrhOk<yv{1z(Our$0M;S}sp7uM6nufM0!ngn%cx!p@vSq!3eq~q1bVpf1%^HWj zw6@D??qd5hrm=g>SI?M#gOW_%ee~$=YyOXUUtt<iC%mzLHQTp(|Mxqe+p%NzoE>a- z@3Q5iMlTbdyK_ZVk=cxE)U2`ldFI@H5%zHXu&HY<pVxo%+TBNAxkh-BgjbVSLG3Q| z&fc-(xt%*CU>iR*LHY$S&l*@|^Pwk?pbS!QI|E{fuLT9l>Vn41g5I@&W>ri?f&GFo z2Mvui(Ha1iNH}VO&g<oAc2F4t;36nVu;By+uJPrN>aA?EjuED!@2g}wMSvNZckt@^ zbBcT{_aqY7%7ddWm!=M@i%rJXYvdmtmEHZ<%5=2wE#Ya?`{vOxdvUPHUc~Hq)u^&+ zVxd}piz@JUQn_L0+rqRxfv#aS1_Qa)SFTn?$r9m8tB0)&yDHj4Q)OzVO1NO^@T(S# zL(0QB&KiTUe&dAnr^5A~AR?Oh+sP8L@Ls*u%05spT>iM4%=WoC#%#@Vlnc)Y*M>(1 z%>k=bX=I0!#ZUiZtZ<om!sHvKH6b*Pb?J1qnKqKd_>{s3P3^i(18oF$Y@`P&pb7q@ zvO&%Rinll&IO>Nvk;2BP83HY%nxOt@^RQ6}1388?OVhV+Wsgs0?25ERVP|+&EE0^` z9;D*zmtfJOHEx^cUSPX*CM%hFt8IaM+BUL@o;Mw^gE?}ONuG9OHsL}9goCExOl6k9 zcBF9hZPPbzo-Rz=Cbo417-4=XMb6q`w5^}k)dn8)rye-Nvy7(}Gh*3HgK@Lu%)3+n z3oI%!*v)_P(IJ#lCcqSZfges}9(VST_vZX!8Iyu_9WRljFOkeF&%DGjD#;zAuOeiL z)kL;tDxm*yaTD@D7Ic(j;`>P;SyBFLyqBneU^?`pM<(c}IK9OD2nZ!U*T9lL1{g;P zQHC5spChCsLWwhCBD+2mm(S2;iqgWTOcCcZWEYknl3hS(8+Jq-!Js3u!vGXFx%%`X z1<rY#5E0H57emGxizFAgB#MO@V8aq)k0`{0ItI%VD5Y^YgQZzwsR^Ya(VjS14j=&z zuOmZZCAfLs-w7AokmIuQS=*QV^#HH|?w;U3gg;)tyC~?8dDm?rwpZ+0M{sd$lkmWO zf9kdQvVAJg1;5@$^5<Dhp4=DD@&l2UEYpgBBG>GZyXL7}pT{gaax|rmpxnPf6C{R0 zTib|2S=j5#k%yaW)!9?dat0A<n-h5qz>=*X;8^v`SQ&KeDAp3DgrAcLuh@xA;PZBR zg`=d<4p03_tdo51mGomi;T*5<g_jgEtzNRvOAKE0Jp=w<u8?pmC0fj|G^2eDF#F>W zBR30JjLniAk}JV|c8{b_@+!PN3ED$3pu<0a5gVJRMq0Nr)(md5j3YKqt%Cs={mM&V zt(QUujwTQ>MqnxgM4FbD0^omUM`j%X;ov|kMM@GAVteUvCTv*~XK!V8i8e-rGO=_w zoddypK}UkYEyU(oO|oKfA7hGR%Au_RIi%5mMX8P!NNn^DF#hO?MyUXe5YZ^CBuAyz zAaoLmQ4tEOMf%#4pPP{;jWHM)?Ifp@kt=LAg`7AKI~*z{W3ezw)pVPUQEMy~jk*Wh zTB*WpR!FsEi}0SsqLk?wqmj|el+#Tnl^ko>maAr>%xuC2=oZxEl4o@~9aI9XR%h1D z(rWcqJyENP-l}^|YjhfkRH_Dq0Csag*5}@Ne*Zr;M)&xhr-|1PuRQ<G+rMH|O08Cz z{?}JZP1#YVT`xyCt6rLZf_z4lGL=H6A&XO+6pBqLMa#=CD3s5?tU%BF>|g&-ss8aV zHQ)cOM)PgI#`o!W$Vm6yr&5JrWzH40e<xEJzatxrs!>ATw{n%~Tk@(&l_f~OwphL< zCqVa}HZY$G%oj?XR`mrDRG?uJ%%7|Dde!ITbG2SC$p5Y}8a2z$XEq>ISjNkZ>1)ov zgE4B@ZHNjMe(1B_iMB^&AdI3IXEcx*C<ChmAe{t;8VbdzMNHR!-Qp<3aNy9ga>hj7 zB70ZAgoM~V!p$$OCVPKo`w;0RGhZ4!{v}p2VcgvrJjUJQ`tKgHL2`y{a5*?8l{pSS zVw`E_9ZV7@{DRZbcUGeBT!b+Rqb4RXao8LXXKXTqpXO606l_ghxNxwE%@d7RW<mR= z`Ue~sncxs==LN)#+F)tSK{bPR4D&8t8w*GlT10``FvwwlB#ysPGhz&JD2%@_?;>#3 z3UEXjf7lI6*9ic+0Pae`^tPR>QL2SMsL3oEYnGOP$E&ou>S`~7xQVo(=)(GU4qQK3 zr?C@W$tk9f*D9E@M03cl(WrbDVpAIxG#Fl;5L{*BOWVj61YAL>qYM>lvf-j@87tpW z>Z<TEtL-a0inJWJT{N-LyHnEWn7diH*rO(u>JvtU!o^7M2?;aC>6H~*p<IC^KIXSq z3nyf1!YQ4xdHD(*!;D{g@usdDOJX`pA>z?_@A_f43oiSGu}SQ@oNif|jUiqc=UP!8 z=>_F32*pk3PFPZ*vcpA%CN-p;Wxmn4U-oTG7E0BO+K-oF$b+b15-I&yI4^>TevPA| z*`O%f1ySQ{Y5ZqvdO^$W`%*F%#Lt9hQ~Pdj5nk<{#WM`}1&EZna`}}EkJxL5;b(RK zf@)(^i_(k8hi0c<Zf66C_GGR_m}0xxX`y+9`78zFPrs+|feg=SCJzHmc&5K)>S63J zs|Oki5QJx-ntFo~>>H%pY^E}xqM$b5MkoYvA@~kW?9WyLsNftU=J84%FU=uI1-qz& z1e^PwZW2CepU0^YenL2@YGH@)Zu1jQ{eo)vbm78VWF|Q$<=}w5W#K|%AkIaL_Q^~f zi|eTOp-#ROKBVnH#1e_)P3HY8s08{;dZ}0gP%Po!hLQr;BV~334uMWAl-Bd--#Lr4 zPP?Qdr)gAseNmTi<y6A2UQ_0)sPp}@7raYnOLdJ|<1#Huzeemp2>QDw`*c6`PC1Bk z|3&YFAt(-S5J%N3gxme>D{!fPNgp+SjP6|uarzfLH$e)iK6*+D$1m-L*m8QjAGFH^ z!4#H29_}tYGe9>0-gpLnEkFNVf|O((Fhz<rz-WqL&;*)(OzX^m7|o<ozzNd-Y|Vci z15-#I#Ozokzv|tq<d#{fQP#j=G1nW1^aH2=ke?gKQYj2&uL!rf9AnQtcdWxzPdb4$ z6r2bwjFi!Dg^6xpzRR?~N@S;<{tLer1^rUF37IabB1Cl{c)J1W(nIM)FSJ?pBI`;N zMU+C8mf!^F+&}we34|P)JMvDXXF)QSJN4wC&$MNWzT9l#4YOy1%hvdW%RF(Su{;8f zu`&~5GXH|F&lbq7>0>mN<XxiO_%2<#)xM8hx6dLq7~+=o!c*%lalP&u^R)hHCMFa& zS6)+TjvJ{=dUijh*4JOwrq8ks@q@J{vSEUq=4YouF$=LEF4@JjTC@t`d!j%x&0q4$ z$YY#2m*5IWotf^V?@yH7M2WWlZ{I%w+rgAy_-1u9b`)c+jrz_Jj)?FTKPUynyhSiG zAUqMa21vOO6rdZ^W9iQ5&%QC~kvmnTDpvmR!*UiYPWfN8cv-FXuV<GFt28?1QpT#O zANc)6HG(TgaHVg)!IdMp1Ib4Su1Pq0c6nNgE3@>{pkLJV{|+nAL!+nm@Nc5q(1;$0 zM^XlI4futW(0Z&+Dmx`;z%>=+F$`--08{c%b07caoO2rfcx&P4E_cI%*(-V`x`@j; zY3;gE`&aF}^~k{oo~)8NnyMR&zN(UV^8aqFW1e}|cCqmFEzbNRLwxxa?}In<yqDh+ z_6T1*+q3^4!%6H=-@lIb?b}Q^bu??<n2Fu9rabn>fKOla<+Aw3N@!C?SkfJo8^8o_ zI-fw6;_#rs8M>Q+4?{*lf6ip$gGD1_2)F*3nIb$OJoLNYv87o1MtGo;=rMVHc^Mg* zzJq)5cfvzNlfHv34fMZg$+Pso7znVXSU~|SIp>ji?}fH(>3^H-I{4m&4?q0ywD-t7 z&`*A`g)pImWS4M#Zu;G9Tl!s%h6&iR8RREo0+8h2rQ~oF4^Cf%UjrF-Vx~<}RSZ*I zE(2MIVn4)+wu!iV_&KCBJ7WozHtAvFJ})oAL?hICnfWHzmC33lUvkOkcX2xQWGg~> z@BaL}sp{L$pV2vjL?679*l!~z{`9L2m(0`GtD8C#ot^Q#F%1oEW0p0nz3W%&ub4Tl zv7>Bsdu8sZhQ_w8CH3p>X8H^Mu<rIxi1P1uocCCHG<U_VRW}^IMfm(Ssa^PT-OgF& zHf=*wdAvENxvQ%==Ze*9cb>C2*;raREK{(9zN$DD5BT3H_a=?1Nud0!pn*^pUZupA z00^Tj5tSm3ES7<&%$QX!=9c9_0)sU3X6E^ShyF8t!uA7Cb=}?d)XA@&a=V}EW*W(c zOu_RclPZ>-{Zx1NQ$Vf%1X5Uw9d3Fmy}|)ud-_SSfJENUoGgFpK<0AjCt1h|evE%Z z;>VXe18_1@Fu#N{v}Dy$lYcahh+FBgOa3nO3B5w!-!FNJjDG1I;T;eXh*@fdciwr4 zjDCtq-A8v`@^_NF?=`aGOWz0iLhnbEgMcy@d_;QkKk$7ipcWA}i23ZFsLEMr>E*^m zNiljMCxS`D0CtQ<Gz=bkKMmiYre7M2rvpy~U_^9<GE^YqT?}?F;Gp%CT8q7Mn{fbJ zZj%4`83c>Rk`;cwZFtH2PC&AwZk-Esg4y{wTFw0ENVACmqI*lPKgx2}QEvCVye^Z; z7cdw4Cy!~hT58(tTvkqTwpOE+DP#Ggikowbz?sCpE1Y-gkZ|y`3z*$+64-JWdFkBM z*Ij#OYe`h^Gw4gVEuZc6IEwvFsdR;*#px<qlI45kp@L-rf4J3PSfL&6@l@P+D4Fjw z`wjZ|hSeLE&Kp~6FlfLX+E_BWeeV3Nt%&WO{n0hYNmoYh5!;#?dTtE%s%etNlC?nn zT#w1l5(z~CLBl^Nb)XlLMf3?9ti`Ze(I`e4EEqrn*~(coGn7*3jtxx^u^BRed}y<z zd$BCR1#lS*lmmxF%R^w&#cmOMi4zj^6!9$D6aZ>I9Sj47n+C_64wj)Xcy{3t;pT-^ zp1g)@-ZnI(|2o#{s+>8q(rfAp^75*M!p%o28Vqk=(~!6B6Rq}RU(=z=?xM1(WkubU zhnjpJYqg*F8xK`aD#}}&S2U^mP@|C3P(crm1S=Pk9!@{A(q$bR3U-;imDb8&gx;j0 z;T429XfFCd_&s7}e*eKm7kxl#5W7<I!Gk~1LFP6}U%n?$TvGX~ya{T?;I1k2A0#&% z^jB24XD>Zh_&9LS%OJK_PssaKWeGE7bk2mF(NjBbZ8CnPRDNY_y0vqvSTwEU)@I|E zO68Zv=36_MNF$?~kh8xcr^0{F%jpBc+=KqI8uz?&m(F%qRQMx)?AV_(LB-(KX^Hq` zc*ZkN%k29pbUyV*rbJ(s3^CW0uoy3ptf1(|FpOf9QHdS+wI<@yAcjwBu(VmQ6c=8m z6b?EH45R2<ETZM6QfdcJ1gU((;~b<8z#Lc_57IK4R)7w_r53>0DOnSoM;S*<`PnH@ znU-mbX3h<@cXoy%caE$qshO~<IxmvFEY{qSd#q=qtGKwcTN!S>gkdgW$q6rpc|}mM zfW4fn2@zHg?ak<`h$MyQiiQ`Lv=lS5hhmgJXsl0?YsZi4E)8$=c$QBnnXh9F&2c*$ zo}1qk)E{n2YI&bMPp&&}lpO)v=eQDNTY=41B&;b>thIE#&z#?7w)+at2l>OB;qvN; zop}qqD&bJPd~C*5L)|+2Gh=x(#-YO)hiLs$8|GplsgTtp7@+wT*fLZpU7<aLDhrSl zP%*qk?*|hJ>J+vUEW}w38eItqmZNf`rIh|C45<UGR&nt3V=fHH;*_2rdrB=dRhR)6 z%{aHj`HvZU$IbWbsjjKsuwgaPgmU$}HpHU&trI4+<_p&jTX$Z=!%g+WXFPd%PuEQH z@VgxMF2_u3ombag;*o<oPil$uNdG21psUo5pIDpza%5%I=uy>G*4gvtuv2ThuDXc4 z_`F(~o4xr#n>-TrA-kYAe{7|2#8J7Z{f-(gd;Ga>&c1)lWrqs;pUj`koHIS(pOU_D z^8LS$#%g*dRg)QD^LVnOJea-VNlv(W8>d}4abi{VBvc^g{(<%>=A~8;kSobx+W^dd z&`(FbE}}m!n<$swWH;yBxQ58)FmSG&`4)_se1oQtH<eTfCgCu9>6u;oagR#y4*UV% z$RlzEQQ?Bxx~K<?n!O@`;$~!w5)Ni~?1Ur>CmCdnIwnIbM2*apCK_K0`0o;qZC^gB zrnD~peLitnc+7HIOQfYaR@<sy)=U1mSNP`UWRu0l^C3%V<v9<eIyzDhJcXY!r6!WC zOitVT=T$co4QK9M7Hk?N>=5i$KjSiQ`sTL}ZLR4Z5zHCAtN<PR+r3&oj5~9hfz$DG z&hq)@m|1IDzjO7U_fFl5dC)j84=%u@NM#`aWfPQI1kK5dG{3abQ7#}$#*Y#J&u0YL zfhhkq#comz2`orhP_Hgp8!iCbA2hi*3JbwPhoi(witCA1ZUv4)duZcjhc39FxT~fl z;4`a9!pL%+6Qd!8#b8nCVGZM}+stDVazMkA|BSB~lhnzzNqP3YUBTv6;~LC9RkfKz zvdW@08lICI+p=MH0vY66Ccn8#Z>>{bMsjN!6PEI-ku9@ESMg(;v}J0-^JMuS7w0b5 znX@cD7-?=8W)2tRaCYfAMyrX35sT!5f6!STjzv9;6_lBvK768%HD@<*NHttQXnIdk z?y7^F`IN{L?uU%rCUVHqK1zo@akLs-EoXkZnBZUz#7i_Tpn#3a5+TYeLYd_#dc{U1 z(h#`k#S*5uBs;gUF*loal*U~7`L0;$=f#;4=AN=BEs2&1-}$2Zg%57C1^v#VI#-t> zJzRMAY0~-3eWdazv*eQV6Mxv<Ob@t?xcA>e+y^*iS4k<T<b)aSynL5CKaYHIcER1; z4Z;t5N4B%9k~1)y-+BSr<ca&X?VqIU&wp*=L+6Hfd`-Mx@7VDT+7Go0oI>A#R|fn- zu&3e;qG3vLMn`=l-=NG{P!dW@q#yXDaL&2329-vr{@Uo%C`>lC=j2i0{4mP|q$wR{ zgn!v%CnO%Y0uBjp+Bjf5$TTk4KkHU)cFe@~QB_pz^SCGfJ*?JQKf0@!=#AcW;GQ7N z<N;nCa^Lh<!s|wlR$;OVu`tU9rQkDo;hht6$!K<l5IA%9H-tkL@$SF>oi;maX8SBB zw0v&=GnX)%`~NoZ44HYcOdJ!a{DCi*(Pc}iWH`|I(H=k{g-Q{v<}ma?m=r%QWf!J} z8H0%E83q-u1cZqn?7c^L{#>B=FH!3BvbI-O&wt|5F=H-$V*bp7Etk-A)B;d}v8Z?J zB4WCFFCq`qCkDZL$3!R|>lU7)++0^}S32aEDj4OA`8fRuuF~3gDH32)EFsOzy=Bgl zbuV3)$<mete?bq7C_j2P9b`U<BumTaML8VgAwP;H+bZ;DBx_LwpL>8@b(Z6hmq6?u zdXVtQzxf91Fn&M9rzk%aFfXVsQ6;NGq(q#$=}<**)WJ{ZWib+A-;a)nqTVnf6_5cn z4t)>}4PzEXog;w~#$Z1ki{Lk<(<R+^_7UQBrMvR(&(FIr&+ZK5Rq6eNXu|1f5e@QK z=#wQehrRGnLGIl-His{}T!+0FqvTqJuBISlw-+2L$l0Ica0GHIbU~cxWF7~50|^?( zlsX)^WbQq=4o5J*3OfV(n!=DhC6i@4d|pnew5%o<S(F^7v<N$PT9NtE<8$W8WI1-P z7x_kQYbx1%w!l>qh}xw}&MofCb9!BjRB5?P=tIsR5L1!lWmvIA=!w|rhUdd}Y5$nj z@Zd2XuQLzdk4WtBzY3^hY>D1*R4J-QL@7{T4h1Gs&|F;1!b2qrcn-4Ri{yl`y@Yd0 z*^pzgBXmX3x!4)Jdgi9a<fKV!myi<jo+HFJwRw_6>QKc`rW~P=gL~>^9sMO=stc>u zp1<?XHLJ42AyJQ@{e|M%2J?<k1aT9PQ4(sSrs%?<9w&k_6Rf24mpyymS=%&g5lvG` zdW2r4kAnIJc-?yYdygHHO43=!&J?mhoemzrB##~I@1<ta!4e_?n*+8PNeV{eREqo2 z9s$_ZGn8=yhlyigW-JJ!eoL%0dkE@~^6X(G$2=OQ^J*5#F(&fRg!po<5A1BhcaJl| zbyGKC^@2@P$$W;=z0p<SIye&MPh}+ZkjF1jTMtg4yCxj8sxzly&5pt!_0_N>E|DPH z1|+>G%%}<4&@;lb7~m`>2842kdFnKRX;3oaB^xJ=tNn^$zN#HJY2(KGHZfn-jm65O zv2|Y|sE=$MDk`P#+f=niuhp-qLb%_?NizMK%8mDJtX!j)P1?vF8!9)6SVmEIG{8bp z2aE9}WF=dHrxwk=qJ>v<Ou!m!qda?v*+Xph8AT3NCjw<ns5mItXqNE6BW*Bs)1Tfd z&$L}?RW5-#4RbmjQQ=h=CnAx=4z3O}Gt6A%SbS%m((KTva*Tm3;~eax1>ZKCOv%Yh zo)At7f2FjnBAx2Pw<Jw*Q}aosTBDqzP$-?sZspr5yQ*8MRJasV6j{KxP;+yS_SZ(Y z5&!l~p@%AQm=k%?ZzwS<^X^>iC{psVaa#f^a&N&m&A4FlmWM^^S9%ZFIKlfmIcYLA zle~cwab?#R3c6H?C69~O?j5+5(Ku}I{&=DcPF1X14!C@Ld06RKKXaA|hyZ9WLm+u1 zYU9HRsSL0LRFN&gn`8*8j+(;EIWTVc&J}Lr|J??}oqO%vFY7Pd{Y6}OUwA+M#qNvh zzMOllm$Y2A^8D}4UwIj6VU8R*BHYKNenP=LIsAo_?BrvlN&QmChJE`sbiAY%o;Ws{ zJ^8}+nDF|rXml9KiJ>Kc>Yu7U7@IPDQ1zHiY1R;GVYn5!>kiY=A@hYZ6D5!jXKm9F zjgDUbX@8jR^5dZ3&mH;m`~C4Uo)bA9>NwaLyc_};espuXotf1sT)&St6D)?TGRdDT zPCw<2Figb7ochV#|KTi>N(;hPVQX42l#br<AW+J6M163_=u*R(t3+Hv$`zr>CNgD1 zvWp5s5{;f&-4$_d+2V?%|A$k^r5fdYhRjiF3}qc7I;+Crs?HH`C`>$a*KxQcE=)hS z=pzx^E@g3}=pCRZL~ZT#1ON~Xut5lx&eUcc*{uON08|U3d`6q&Pp<)B?F42E1NRRy zJM%GAHH^}96C?Sr?6UqhDb*1YaDnW1aE<FrV}H7j&ICXlFR-PPOkY1dX<|VVpm2$e zB#s@UbtW#wF&^zy)Bz#q!v2l%g^LnQP!S_6f<S|dh4_{JB^(x(?C!lys6Hg@euymG zP<UJKZeX4lwugnKpOUL03%TmZ0wAApOyLIckVE7dddyYf_C+}NQ*tF{61<1wlv?_C z+>>TLszQtvMYxNSj>v)_3QAO@Im7ql<stt7c!9s=HejI<Cn}X0>1+=foE6>vkVT=e zML-E2DW}+g0qxjgNR(UI1)Cq(jDO_2P2H0>Z=T$}>HXxWlfN2Uojav<O6g?xc&6DU z<(xs;629Kn9BD0Wt8IUF?a6VA8qc3Uaso%>ei`8=j+%dd!-BCV*E({dFq=<r;y!7b zZi(iw?y;*^j~%ya)wqFQ;W%^S#J1+C=^3_w6;Z1kaZ6c;a|&h6XQe8=&1b)Mp76JW z%Ys>jrOQYQES*I7_41O!tkCj<#5M2QaG8ryvdqK7=gu9TZr8csspKTHAy4i_ol!q6 z<&!|m64QwpObHr;Z$XeC@yn?D)x@T*VtiL!l|DIvw7dzSd8F_dSYno+%Z(I9k_YJj zv|M0aC;$HDo7~;~Dq$pkFC_j<8=icM@OSfRWQ@v%95YffhmKT`I%QJSENWZSf?);l z!poo|oEX;_!8Rr%>f(a^n0^QrUm-z17`_DZ-=T;mxdE-G&1&Sa35xRsy&xnq5mJN0 zK!wb!qvfZ98jkQ>%^p&%D|XmjyV>G3!aoc_lNykvoS^23*1T~x2U{uIUmA95?=I9L z*Jlw~^}<NGJKfD!S5*iX%3ax{vnr-wBg~DgM<+bn1QcF@*6Sth8%q@KaM5n*o0~yk zoF!LG&(T@bT4no#Ehd#h8TlZgi%wz!j*^atnwd_I5#T`KaQW+Itwl*Jot6?yF3^3A zE}4}XGuLdG#7qdfa;NE(L1X%N&qdA34xJqItk%L9nRB2~YBJc~q4+79r-u4*QsTEe zlMyZmxwQh{5noS~^60=orM;p5sSJx?UCQf#z<{BY4*odch18QzlftD_yafL8A^#!d z!O1O!|69c)9wfDN^bbJJ5;P<sbqWF?D-qAb+JHY^{OwP&ef>!~T5!peeSTkrd+Vf# zRppW?oSGxi$X>^L&`5?#8hsNQ=(QGe0tS<Sh=7NPNb!Cm5f~VHC_)i23-mxV03=1A zmKPIv3$RW_nIDyN=Gd-{T^r{!9h<jq9>E&-C`W$&(dQ$TdnBh+>We?VZv27Gv#S`x zZY2OyBt_P2SMC;6st1M5LWQvTL6yp|2gJf0<7BwUm3uT-o3rxrvdkMw@MpJCqwJhC zsZ*&j?k0Nqf?0WWb$PpuYUTD_yS6LUDAXx#+PCi}1wHVwKmF-3dLTu?Q9A&nV6oSo z@k-UhPdpYrmPL~F=$s-#*jh4}6K)VM{Y!r-HzX`A;+Gyg=WM=6{lGoW=DZ`R5fm3e zUJ!qT%nyqa{2SQ%$wGES$NUcb69&&849DX!S%_!9&{1|m^t$s{#zpXjSU!ThAZ`em zpMkBPEKH+)mURqx;F(k6X~?W8PDi4?A>1LBv62%KdYqIl(To)^r+k4rkHRibtuKrp z+A+}kFuI9BP}DF9=o3}v!~q124L~~#QGm2Yp#;K80}BN8x{HW(2&G>btrLYno+H9@ z35Jh4PFn1&B4`XL_{g>k=KW^r+_+su5K}zr`hwB#F1xI|d$y4oOH{&}z~X<*=X;n5 zfz3sWma*%`tr432PLpt_&gu7BDvm9EuOiIYq6=p1X{ncj7rFYuMO!}UiUBs)BTs*) z1o`Z5JrSoV`*u2pM+f-Tl<-D7;B|slWs{gddl4xwg@uU$RM2QL(h>#HgZf$A;YVLG zl0$wIQT7Opo4-^W&Ft;P9i#4#aYx_(jN}G|+H66>&7adGyzLmnne=3yCCIN}dz^55 z%q53NnLa4o_=l&E4%Pk62f{t%3gK|tBrIdDXQSypVUn<cDPjNuATGVbX%^<8rNj0t z@^H~SN_J$GsuQJG39Rs-z=p$+M?i>Q#)ZYSK&Dbq7n*`JDF?m)27D?iLX(kMOA%T@ zfiG0Ffqf_p6^<=Uz=~9Qb}N=Wa;dfq39?xAiLF(tr0^|+?3lV+4bD}=FZvDP!*|ZV zleuo#==FO+)Lay)iB4#-+S-?Fy@|QJIIp+>9J{11)nNVZ*TGkL-3_oO9~YaG97`l8 z*{J|YePRu82%1q-h4#rUt33k4Y)Nlow(4E0rq3O23t7Bbe$|x$vS#+eW=Ftc^%IBu z#`5&R9&0=M)JgGTyx2DFr|X7BOXMQjAPG%>5=Me~z-O<M?3Fw!`Ge#`$q&eT=Rlnz z6&9I<tc921Tcd(9$vL1LMi?V_>XC8J2#zo#gSvuEokmLq13>Ks;moLJ;z3yyYjIm? zg0+BGvYJ>*qa~#P6T$wBIE>PGX-G8vh!q|}3>8NeL~*NpU@c$^L@~tDK^DVraY>x& z?bc$O#cGkc2@KvrDU$WVlNFHR@nrPQ)cb{S2>N5OmC_7h^vhB+a6Q4DaVe_5(lU!# zw4+1&r_Wz*i%LbWS3HQz&{u#fCNW?^PSAZ(dZ*GecfnPx^t#xIhor9}Uia*q{^*2( zor4b~3k1>VM86!(%Z+PMc6V6DU}B5XdIGL@P}a@}*xZcN_4A&%c+8lK56{0owQc&0 z+cr&|vU&5AsnfR3n7%D_{rtmp-xKq$XXeNZGS<WKQYnu_OT3&xCL)lch<^YMWywja z)nv3<jV5wO4c|g8vO>Nw8Bf?kHe2W-ikXB#O|-cKR7uZ5(TT(GVQ1;IKD*BA^?N;j z@0}ix!ATR1xOEQ{YHbdiSq;J%Z=uHSbC@*_zsJ8-uF;r^io9-jp=FLI67~A6TB9W( zn-kh*Q+vJO4pAtKQNPEeH5!aIo6)4#n%(}Fki*jDi6SSb_5z#Q<DrMiH+wv~iYRhL zYe(W?;0=I83g|2Ft=JNukUsUip&f`jFdkJkk5<e0MPPHN89PfjD!e*t7Re*|>lcAS z@#%&1i23tyME{#Ci!?+UvreNCDv`Mgsb5hG8a^*#cNk6fiCMnPiX-Hp+aBztPl4Oh zyHn6D*0IHn$3DB=tiNbPC^UlpZ*J0?V|6jJJs@Q`rA}qn+Rc8tYS7vYi29IOYhBsd zuG*5FF<(~HWYziASy7zd5#-z)PSo2q#2&G$?fT0GFSTxP_hrrNTFu!t*=E!SBi0Cg z2=SRH$2YzncHm7u96A(;d=Z&(Qi-??nsK-hIGvf`4q1jA<d;frK%d8~gq}<LT-YqG z@RSGwC{+l@$U=^-f${Nlm%>~oib#XKO7tb8)6w1$r@c;e$bb_`&F~Ni2jzvZn2Fw$ zz~B)d_)khj<Q2VL{NKEWq%!0|)LE@NB>ggJGS~kwcJ`<lGurcOybTQ`nVs-hTo#W# zkX@Nq6DkPHO>S$EEhn$FG)b)C?Be?Rg4{?f);@1;dk*(~!#;TB_6ue~koujG{(Beh zUbt{KVXkcLp4__g$fK)QtXTahxoGr)j=G9-8WhCenK&*7rYIphp6F!0FZDa$cKI}A zbC$PH6CR9|P9~in$MVcdqgHQm<%JWmV76W(Ra?!jyjZd}yEEKSQq&abG|$;JC;bSc zi%r_K<?^Bk^Lu*Jg>o|C*fHU5MMZZ-d!_K;<@%9@Wx|6OFrky`ijgBLxNotf;yC;P z19KdM9L-wjp>Ck8BG5)h!T0r&<gXaPc@TewfP<L{Buy!}uIONlaV>0%+sf$hTN2Lv zkjxKXirD2~To#O4g3+K1RK6xdDPT%wEeGp9$`Bglw<U0z1u$iCfD9r(_2B4)iP0vG z^$`CP7=Zn8FH=5PXb4(x_h@E>rgN{jB|EL-iaRh)`YmW(^uJ7uLBa*m(&$7XGI-Ke zN;nA09{>_C7UNiom=;}hVi~*+tXPQjh2p-!$Alh2G7T7~LDWZk#B@Y`_||eS0j5c8 z+}MXS8)x<*jNC9-9f5cm&Im-bpfa@rDJ#}aeD&mfrlGy%ww*gk?W`wa<Hlwae@@q! zT;Wr?Bri<P>$f&eubjT!agn2CWzTsF$9FQ<sSIv=)Sj)_G<qzufN-O`UOrcN=gl{- zyXG4H)lA!3;z&5&GA%PR9;CIi*^=4g6^;tW-vSRGbR4q%Ff4YDy*Pb&Ztk<z{UbBY za80TA{)A2Vy|3aGTl1&oCBkiFVxsJ*rP}vvxtwDRmA+rqr1R}ohq1vP7}jt@QI+tS z!{RhFfGJCDGqxnJFNR+7=Rfbc<{IH2jm-CRH*E?42NNiZZCxD-78eJ<uqQWe^gF`2 zVMjc+WmTwZ)HPGrZFgSi7_sGodRdOn2Z~!)$TRhvb7w7QCoE21IBHaJqI~3eZ`SyS z#XPm-YfnvNaiQ?ltN2q>Lv-MyCyzdwe%0(XgSv}M>Fy@F$&>plh^`XnrC<3lF=|wT zxwE#mprEjD7ST?yA%cmit*xpe>+<l&ia+O^lb81(xriQ_?xqFwPgRw0VRiLn&D>d> ze4^cc(iT%F0-o}GzhxHDd0~0Nw%;391a(%WY$gC>p7cuGwE}l#_6uJTU3%q&Du-Sv z1BNQ6(xHc+GOV2wta51Ju2zM;w9pK?-$vo<7hb5Tx!}@jjIK(9#}tXZhOa3(4AZCt zeR8mWs=yNvM86y>IS;<HeUe{G4oUt<M^*?FnPCw_t28L18bJvp{h{R|>5hz*qP;<Q zsbfSh8E+~_!x!b9jCULP!7OGRfuR)TpuwU)D1uEQvm-&mzw}BJRDesF;usSk?aD+N zm;{U>0}qHi0D~PqBaSeil!iUQlCV3>8lbEi7?siLw38X7Ay0^wp7>Q~U9X90Kmz9u zGh;-Yf!@kam`UQ<v_#9gnupIBR^_fSa++Z#@|2wKRLK_R@rDt+9CQj@8f=2NW>aU~ zKC^g{E;aY>7jX`w7r}f$FY=D2T_qmcXkvb7<8v^QFe+0lBwIdIEMQiJi?iI}QvaG9 zFIlAGEc-(x;`Yw!xJj5VRhrI|!-jRvUkNW&`eTdRs$1-4wL%XTJcV-aZoPtMmT%{l z$~8)|v|`{C&B}j2h3Jt^>K>w12|Y-kXd<Sd6}PjI_kJ`LQya^`c&>!bQUbiuM2zE$ z5%+bO<i^ZAj0u%WzkHA`2Ik!Xi4zi}$jD8T#zaJ67OtB_Fs=iZHxot~M{BDE3n`s| zG5CV)5?3*aGdO&?a7_)cNhVHD$eHk0T$tizGU9I}T3UX#<|D1OnEW=Q$6ZMtK2KUw z`orgq&7rJFRim+~tFxe}p(*Ms@^tx(!+XXQm6E8bXN$4GP?r~J%PP!L=a5Tunyf;l za@%fag}!k2ZsxrFSZgva-@ZGPHMX=?$SY_pC}?EwD=L}Zv!p(;a89+pvNhLi<Bu~x z){@o^3kMa)yc1@AQr+OtSdp@3X;viKQq^GB+Vnn$aandan*^6!WLYks_m^=YuWFU7 z<Qd0hY?ik|fJfCQ{D!>o?z+mdio*1I#~xKh1Nl9@bD{9rvijuq<*AxPY@W|#D%3Lf z|LDW95-oJ%uc7PzKjz*$Fsdr;AD?r})J$)wlbIwl6Vlsc5+KPWKp=z?2qjWO?+|(s zVdyBJ6hQ>RtcW5iifb1!x@%WfU2)a5#9eiDS6yFsbs@=IzMtn#5`yBo@BZFDewoaj z+wVE&p7WfiejXa<gsfyi!lqOY>4W`Z0o=tf#%Y#8W@tEJz+IKR>U~HRPH7}){FA_g z2@RTRpp84qzJ|6Tbl~m%2s1O8`iyqZ5(?E!d*MNCf_fBIp0pN>Y$)^p^{g6c-qdT) z2G|`q!rdp`_EOQ1xd-;oeZW1skI7UsOBvE8XfB>qbJ|9n@GEyp#)N$*zuR$;iHTMl zMb6o*mJJixJe)xE3Q6_4>)`+&0VYGZT=+r_+-_y*&qQ=9TDu^?KY|vD9{9zI3DK(5 zME=Du$arMS#9PPZ2`ya}-Oqi0SJ|R6){pA<?<@LXXXV)6xC;%-E2hpbl)_RdTJa4} zG1C<3HsJ*7`=3>u>P<F}u$;#sYUc`)=Md#Clu0NwS|EndUjF-S=7F&00m=)QA@blu z3*og#A<KwLLZ3)_oMeUt0Xl`qet|_#n5LfVkyh4{r_xHl(W>}GuxC!H>S(E&)JRvc zK(%pLIt!%_Ggh;J!P3mN(C&zQ%b!{2zgdp>O3i+p(=nue_40cDaryCg10&jdx17tO z(^oG`_H-m)1cDqwb`64b;Smyx)_@t0hzGhdMCC4<9`|!TD8jm$rK?L{m%e7ES5xX| zjVv*(Fl`#N^Ymjk_TQ;du2gC}db*#$3;ZWOD(u{Xf?=5$H@|z8nKTK#24ycWnW{7M zAKQD&^LZK7DvgHE{3S1zo_>f1NH&P+M;%Csfl8EPu7x`aIkw>Sb*g?XAd3zsX^HUS z;UC1y6~<^aDLl9k{x&4~;8i-HtfOnX;mQ^KYx5>mteILiZ%SkHXs&4RwL5E-R@LO( zM6u}hNxwS1`A=KMZudb^r4d&kLjbo*jB_XUZm7xw()$Npp75WZModdD;0bDHwr`R1 z_{sVCpn^HUU7WwBZ2nzSn$~Q2(Y)xssf8Q^yiQfaGpCL)?csqTYl$*OC+Z@HVq^XB zOye(GF$~=Qgsvvqt>JX}F)?~g{W!WMD}jH~8i`yrp|6CFShk_1l1@(nOjnF*SpCVK zPZ>c(Klp(l_zKcZz|<cE@}QsDmHp35`ee3N`xeaWb0WvRfmbgnLSZjAeol1X?2jjQ zJkNz%A}vbA8R=gWKc0;f-_pwG0`5rhYCt|$-Z%S`No^td+?Hs0loDvFNyccFDWsxH z*A6uxdHy>T@YCZ0<co~tcgo?_bF!s}w@g{R?vV-Hx;`CG`nT0HLHhm=*PdP4Th+g$ z+}O(yR|zM2rD9@rMMGrAwd0>yA0EZ^D{lW`$b84Z^U^;j-tpQBvB00=t(w>;jRGNw zHbmPcyBkeUMyN*Dp&<=!4Z*9_kr2sB-A2w*DIcMAtDSr>qu8;Cw5OT*sv9K9fcGOK zSm!4y(a2K=dfsK5;!ihJii?WuI$xqIGc`8d;YdoW%gL@wbJ?B#*wjo{qOWdT^k9m- zk==Ptc1~SdlEaZs=lt{%`6zA(m=DT}5dFZ2(yka(5~#H%rX*T@<G7#Q2$NAKF(Ed= zVK7<a;uDkN;-JuRU`L|7S6*YGmgv#M_~_9eofsdN;Anxlr$q{NeVcgG(E8dyQdX=x zxwr4;AwRnz_n)wAuM&w5_aOCHA^aUZ_^K5b6flM`#l<jd;X+t#3k!;lFo(VuX;F}M z67zu)9Tr!bU_%5hhU`Fy>>g=_aAidv5RVz4Y)D3sGFSTS2r^}yJIAKH`4lg%ntx|R z@g|#cj@ugfX#OhfWp`jJqBtUbHkZ4DSHKDHin0O4ELt|2GH9gHaP!L}3}X%RMu9^v zuS(%Jt&VKN;Q3N&Y~gBXg}t%bWVW+k1Gq)5L#s5@ZkEsLIw^XNABqBodZ8Z+V-=0W zNfK@`WLS{B9Hl>p2R#J6Cms(mA4-IIVD5qlOg);Cpn%vztqY4NIw=`LQ{iB&^7#Wa z7a&uV)>V||WdnY{zt5auLkdb=`8s!>hE*dQPt81k<n)M=gi*#Mwn@6Q@B8gz_q;e~ z?Cx3c56|cw-+29qrM`-hV;csS==cW~4I7=uVjM1ELwurhaDFu(Ql=*LN`RNo|LlF% zTRgdL{qU`cBjz-uFM6o4`R|h}0tZvl*ukUFrO$cgmI=P{snfSE-CO+9l)8+*?qp|n zpE=bg^TIpfeVn07$QGyNLrYPGCLlV8)`I<ya8U{0C5Q7<)V-{mN_9YaD_i@B=cS>I ziO)fk1BII*_SGJx{lTuOLY^sHz={3|Pb?n%Yie4$M&R<(ilKI}PV{R%0}AWba;7QM zlhO+kSbd)<)y`7?fZ^f#8IR88g^8yYJUP*(>zlFUnxzNtoZYl6N1f{El@=@+k}>b# z?4Dj;?9=<Jw0dtMr`K_5xkh8!z+!EZZE2m#)Yy=uHYWCp7kgLl&fPzA<)Hkg$EUOT zk1k%A5WApm(5dBfPRv_rpWJ(VX@7sh4(_v_9$|97mu<X+9h(fRfZ~eGyJ@7@_fYB^ z*l^341+WfaadJ2ldI_N2m=NytV~zgsvRACMZsm?0E7?YP$-YTZUJ*stEXUIt7fX(> zS6nw@ob*rWHR+$@M%;ibXjl5MM&Dm&83`?45etEsp3Zfah6&wn{SbZWiSl#g2s8QF z!b4X)kx8BIv0a|9d#)&qO#jKn1JeLSU&g}PO{iQL9$?_n`%N@9{Doli;kV#$3Nk1^ z#U4<fk@*HUNQj$qlmV~{(<reE*h4ZKXge{6b`Mly@)`lI0ocDydLcbE_DtoV&1cSR zUi#p%CoQFHF>_1qX>;tNcxH3ovQtK_!)Q;noSJxssaap?qI9Elad>s5bi2j#ytCs3 za>OCS+>#mBw~`ecHs)WC{zzU^cx+5Je#R3lT<va8J|kT?v*+)lD{f}t&9nCZmZ{Ig zN*&H3gAN+)$s0GHVe)-(rz!VWOqDX@@B9FPt4omi>oHj6;g(tCOO%@6wkpq&GX4R1 zbtJ>0R7-sa=3topyX?tUg83mJE@(3F#$*?KY=Y=`;PXg{F}hsA=r<KnNU(fTxR}%G z=(G<DQHyZWATib1G1r+Y4ibGX!RPY*CD9fM+Y%FPT-e6$BV%wxfkilOmgY1v&y8UT zr!{k&OxMHy%f+y;Gbza_g<Uy0+`{z4#Pr0-_{i~aptd#;jxM?JO^etI!&da|yJDEs zd!{@uY{#5(0rNr*VGB@<4!Q!pMM&d*V)$vDP@v>60uXOmHR?c0m~v#F!u!V#*&AI! zFCAz1AzPG%yv`L)O!?wt1!<A0w1R>(?ra)UJ3BIHo!{9Yy?_5{>Guyf`FChX$Fc_I zzkl<0r)IOI1!<ein?8_!clQs{ylGF<(aqRq`6s?-`=^~rE8zZIU07IMIA+YKg4DEv zn@&6+y?wfCebxj2!#1ZDj2?Zr^t%r?G3|Q=Y4R4!|8SG^!+Ql3SD}N`*7ukT>D?xv z|1Xy@#d)U%ppGeWtaJ{l2B)wBCoHNdN?uM*O~xylSFjm1X(4SGMWdi;NKxSuf(5t$ z(yq)xWA3qIH}GW;dPcJn8YKu5f;{oiO;wizg-JCFwS~i3j<8^y&6ATjN8`%x<M=0* zEI;lmm3F##Z%Rx?s`UEpX1B5L>e@W3ZTPIsDF&xo?<=iJvK1bU>vQqQpAR2|98e;? zywn>Lli7c4!^k9)D%NBa68o3AL)UnD;d+hQ!;L5&d5@<^J+vey>4Buo;w7UeC9Ww; z>UC`7uuab)c08w7zw+VUfg^7(8}2hqI@xh>QPckSg{{)#cJ`ZoB^^z5>Wnx}rQ)|t zm9Bv?Y4QiD9p9(jwKLujJIq}-HB>Ae=~c1k&Xe~rE;Db4B|o4OT`5J0Rv@-mt!atz zj@X>-1Cp1zVgT55j#C)|HMfmO@q}V#n`2Twx+XYdZTw(Y`5GfTH>Yk!<SDb#w0_~9 z8H1+Q%$KT-<&!3c4oDqm7iN?)xPg$2kNHpLi{cUePB`(%e?pBXcU|zWsTiiR;t+Gc z_h*k3Lzzf3r_bXCTMHowZxHOR(;;}=1omFetl(pL^Y0AzY`o)%CwJa_LjS5*R#;l0 zjW703=H5AHIMKELHKDwK_6Pj=LAD?{TWL(>#zc-pZW=AdnU&ctSGLmPRA#Yl%*st2 zE5@3|99PQ)1!p??$QLg?_qS8cq3YGk^9J=x+wtQaLmvIzOJ(X93s+Gg81?GDFTVN4 zi)CtqLG-vQfkdF``vU)J8+thXfiD0dYXo1A1iUiY;}P;M1b7IG9<XMe8#L14A7-|p z$!NHDhK3+l4Opbk4Zc;*E!o^8eJig(V1HxVr(0Nf%ct9<Jd)I#A@-Y^;Q5FZez#<j zh5B!sn%l#)CPGHv@+qt7*o~_!2EIiW?iI~Vd=u7CO!*zkJd6=u4dlTiM-EUCyJT`v zHjF?&jGY9a4MDc+(ABoQIGu<y+;`+NWsS#=wR~c7LhLKCiHTSwNRG<Dmi~!}{Wk_G z?LelCn-rU9FLorxP65v!v~xqN0@8&*6;_igo(WW~+uqpzM&tJFjY3}IcJ9$7bQfAk zZGp<7qRK#<!|^%o`@H*i#i2lDWk8x~w?CXw$sM_T_4Y3QoOn2R*~ngmo&@Hhj|}JB z^<wa<9Q;1%{e54upmatWB%Ogj#(Hk<$rT-;6(>)w;9FLlWY2N_j$6R}D_C#tuFLyR zQg?8Y>?h+f4n;=rDT>*O1&SreUa?-W86MDk6bIlb(X6-=xcVo7u>QE>DaBdEvx-;o zHejCOiI7E?piCY_R(m?>8YV(eH+fkc1o9v@DE}J~P!EEwJy^lDDl0jm&=M6(WjI1} zhsug1OnxZaJWem}2`>S^DmBPMa~QOGSg}|L3CHQ+J#ajM_k+p-<rOY+nuBI10{)OX z$glLKicY(R^ZL!Asu1u~xg2^8@AGT80B=pTGF1gqzoASz<}6k#;%%?<akgi9<lHn# zP39uAwAdW)Oc9>7#qsBCaS65;S<0J2iW7)(J59wVcB6%k{?6%EJ!OsS@Utz_$(y8; zY_=t%V?5*DFrIlzZ{ki!YtM2>w{6Pe9$-Sq>~eHS?^dvtrb=lv8>;ST64@AOhk#MC zHzd7!<k@2<;J$jV>sHq5<Bx^cpHcEFO_6=)r9a?(rbn*b&OXl=&Ai`i=9xqNuBeu3 zS#d|pG5iT-c^lJz$MN@W7%Flb?8$<3n?_^9&jV_;GsR-F**vl87&cr;wrMnMx|nRk zInc8REX~N~Y1OeFJN`Ve${6Vo^EmVd>5P!v@j9C-9X0WZ0+LTk2bC|f@z1F_*7DLz zruI=vvH$QnNO|>oNZOsqiluu5BhEgp6xpgOR(aQlPoGxv0hs4a`qNCWlU_c;dVlqi zTDma!WiF=mlT6^9KFbP?yQEJ)%wpTyIW&YF?FBzULCQyRsUJR;KJU0*`iv#~`OnpC z4l-gG(E_)Pgd|FRRmT4(%sYi_RPEM6;$3%-Z%5%{n>c_iJhrLhpPL>N-gq#SBPHg9 zDzo{9P0z5IZB?7kp52`GFuR8^%q3e+zbL)g1bTBFEEJU4yBB)6py1I-C^!=N&1nNd zCbKBK(G8K1;))gUZ+7rVPAR3Vw7t$6-x$fJPaG&+8+m@w#PTMtSUR>8IWwlE8>A1U z(8^i-@18xi?eGFN_%(Z7r8sxBlq5ZS&Db~Cl-F;l9Je^~taR<5acm>kyS*=)&e>K> zn6*kON8)>1LFFjt>#TO+!OahJ(gx)D`j_ncOO%}4G{JPx7gXF@3{UmqLN~)yN9>Bc zpC>`rSsX-oGVPMHLph6`su_njt$XR&Kiz!upPqdwyjDEi%D68N9r}`S(*JBYcVz9o z&$k{p(E9wnYv-(faNH~R-S=Ja_ctH>=)vYCYu{Y{=JESp5mvRUOUK`Q^Y~KX!uq*$ z+wUr^<Rim&?Hbm>XJ)0&pP$0-5N<hK)lpwqFmoQ5XyT)fV{RTVbI}xm1zF>l^v=I{ zJj$bjzVt*|k!cGIjUTvd6KyVeA${ty&7gHGB<#Q1y14zTyV}$4`fA-A?XMQk9G1;8 zp5EWF&#>*j<J^aKm&+bWr5gaq3CqaWv}E_wQmU8N=gR8`u)OQ8ufDo#+4BgWTl}kj zkNtID$Ns7k&mTc^{b+-7S(Xq$+bK^QA>JebfrN6kWh2{r0A9OgK<yp?f4-sc-yMyZ zl!>6uv*5?N2oX#x;mx`pR@Uo*GrC8yA6OX273VP`NcBT5$Qr0j?G(M{{P7piqRt*) zN=el73s(VL`SV{oUT6>g%o)xA9Yvu3PritOk*PmT7!2X&#aO|Vk=pG~2a{1WGXR_p zgE>l4UMm$H7b0r$wzikJ{oJv(mqs9+QS`6EILDZbuS@=&Z5%$wIA;~Ut2=)?Dwi<Z zQf6PuY*@Lx-u}3EDbfsHx&PZ?OS|st^+vXDc>M7V8y|a2de7gte_wyolz2Y5-{hoV zNoufec(7NxJ*CD7ZahunGQ>M#l7ayb)Ka^pQ*2}<f3#z&^uCz>^2^dYOPAi<<Nv0V zT#q3oCxyOxPfkiojwg3gPD&1aC*~rg{mrx={Ym!?UwY-PrNh&%xF_zP`q;*3Y1wsY zy);0?w&xdCWM~~($vL?yrbFIgV3_r0MqbA&Ipo=*`JPALTZ-|w3$l(0e&Scku;6fi z5}YST8x_lp#^l>uj~;F1rK7F4-`>hvE3z-Vn_W?n%^t`Kao>fq*aO)WY&#u0N+&ig zJ}Q*7oyn@G$P)Y0@>jpY5>F&PG#&KoJ^YRX^+K*%Ss=<$$y_-}L{UXErgc(E5-&jp znr?_BbPwuI#L%IiL?tQGQxhLhEFNIO&2PPbbo8M$OJ>hnvg%;{q2Ii5`}B85i|$0V z!QOX<^!@rRpKN0Z=T@CRx@XJQ<Kt#-*)Z8P%WO+F|KaxD^U4a;MtfYJ2PZuv38nlK zuRXu_$eY0lt2S?0H6i%etw)}$EfbQgc0+8SVg9mrw!Y3xV|UzrV#nBPXG{)zT{g=w z+wE_7v%GerHKAWk`&n<2v6Gh#gY+dppOXo#9JM+eaY%gt2OrW9z~zSG2MCJ<5;w`) z1w!X9@u(_M&MN?JuZz?{84uAjDwn$iCyoe+Ln4JmnA9NAmB{B%5!BA*UzLAeb;q@T z#Z+P}e~?b;fP1&Y%bk8Lsx~pj8Fd1JU{1&T_$%*1w~O?2EazJ!MXZ-!qe_a^n(}b6 zFWyktU*LhL<I`J`9bT0WRqRpks6T$aTyHpTV5TNM92m$*hsF>I$o|_piwYoJ1MS+k z4@{;Nph^J0Rz&vw*R{6pWnO9y>5qG@xbr22mF}0)L#gr~)}4H_qp>6$<~$925GmFS z&0^K?9>3KCfKji9ml=9*)MPGa_6R~d<|%laTO_^BzGM?4)z`l!wMngf1bd$Dc#b>y zn)D5~h>eq4r8agA3&T>^5wi5Qbc9S$4}>iqA?)E5ky+fW9UZ(72IOS8<1gH;@(K&j zloXa+bBDra6BOoL3kUoHL_@>&^ECv-8f4FE#sp1<FO^@0qW<@bpi_>A{n>?AMziib z$qd)|3UYAtV1Drc0u&k(6_1!N+06DIJd)YHfVjlPDl1-ccwBwGrPxwmkM*Bj&`JO9 zczs)T=dI|h&|7Ak>vWhY=o3EevYFqaC&{<?#mBJ_G?3x2g#IFz%}Uo@^(z<Zsz>Tq z)3qak!8J0(ysUS8nYK5}M38q_I^SDc7B9UZ{n3JhIN{&iL_m^m`s*5hGQUi*X#Er` z6bg?OrWdP`5fltDi&4H2EUat@&_IR9LpUa5W4Rg%4tUpe(;Ger9WZ1j`qB}QTf#b^ z3yJPJRD~)R&xINrsUgCROu=#5G1XI4iK;2pV}O@}KOO%07*Vf-`?EeR$EwxqVsv_~ zH78B)v;dStjN$1NIP~7JcXh{s)q6EbIU@q&-f?ixy=5Md=FW1>?>pa><xU%5e(O0^ z!aE}?uE{VVq98;eQlT(cAaH6c$5{d0V$twOQ|D2~t8FS|43A4q0YXA566(dMY}n}$ zpsUh!99w<E4XewRT)%Ki{0E^>4E#k(Gs<^oc+1PZ8N16fN=wp54FANlzWFAaH=&b{ zfQAnN$J&Hh3yED}MWOIH7)ogV@}!cEsZ;SyN(m5WYD~`QDI`rOS`C|IRmP8uznuy3 z6YU4j3nT_Wj2)#Thq^tT0U!@=r>Blx9f|3`@u^wA`q~sTeE7h|h2DfqiUHkf@F7ED zuYDvW)BRyvr)4E^ilw7Jav_Gs7aQ@|s+U+3X3)W3FWt2JrdKY!z4Sq+^g^o5V&0dV z1qHkqhFbheojd#ItY@|lQRzNyUi9L?d3B#|Oz?MU#uKs^g5D++Bss#_E~hJT&JrXc zz?^emMMC_0k@h`{lHJLW=t%Jn&Ha_?_9*|MfFDXLc--MM6MEpA;3i*GXw={t1haxc zP`O~@;Da)-23idkDiZUq^f)0+6fq@S=PW6PuYLV{sqOpMudQ0PYG8bpASTE6ZY)hl zG*aHwjnBOO%*LsCJTs=3HujEB7KN<%fvc8PNnxb6k3uS-^=bnQO7TWH*Hy)gvgG8l z85Q}%i&JB8E8I|<5bHDvy5v-s&E`r=ju8y8&IB#)g!{#$77yo#OK1lAl0AaH(6h4> z(VSQ$yN2aB^90#@%0m!-u!JJq(ht2_FagGX;(L(h1it7V^eiZib?`<aYl4Tk9WX!~ z($izui3*kvd~rUq$5Ld8>=sRIu_INiKC4V|*i)2yOAx9uOS);1I@Ox3+wfauYF3K4 zOuA;4)LOn_QC(VE-J%WUtrDkDYIq@X0)YDCI7@<^#YJY=;(>PkSyL*zZ_nWm%{ET# zC5_}x+2RxIQr_V`A6&?+38kflYBDbn563}g9u_;~*cxbq6e@C1CRBO&B}a9MFmZHg z>&!U}3RApc!IDO{B7B9g^xk`|r1yg^5$eF`>Vbc3h|%r%WXnmGaS946*%m{#AHL;7 z=?R!_dYl?{EfP$pnC0-+&-WUwd!@fx$VwEwO6D^=?VyBEslcEkgpa6}lN3z`4yHZX z0PJK?bdvJ0Fj_W+No<Mt$q$e=t{Z>&{9n%>9*>{puinPiN$s+-au%71qGl-(Z(C}l zy-X=>xb4;D(X;8Ib!?q{o3`-fx)3Rmbs0h!^KMx*b`G$h3KiVGf3^t&K3Le`N(YJq z`T??m-Xc>Hm9neQeEFW!XjHi*jq+ootM5tgo!)c20)egr?CPwRuUfLyNo8iMvLbTl z<w^*@9VGqjZffPtJua13H^;JpAKuOEgBnkp5^QrfZk%gNFr9AiG?h^sMEiq0*Hi(M z8a8KnaCWsfP$1CWzfeEwBG9LR2p|B>7wD>#prGjauD7x7YW3UykBu=V=6-d>2Mvl# zTMd@Tw#(HL(Xa4!u(TMqUOM{n)hmcjWIp^F%XAv5s*(Aoy|L%plHZjaTRM->L;jn( z(Yu2hvm0`_bA)sevFNaIg4T5+6&Jg&Yy|O_8v!qQUC|6pyf#nEG;`oi7ov(2?tsOx zW$u{H1LI1Mvb{(D%T}Up@bb~XA}v#AsS~tIo6y!hUe3Hpod>3stXub!RwUgIXogZk z%z6oQ`n9kwl4ZuhA>I2=`@QF9hzRu%%$g3QTQ>nzmM@SQ5=@t%DGc~QxEVaeP4Jqc zE{Al<Qp|>b9FSjsl+J($zLMM^QvCIE_uhN%b>{Eb2iB!!>8wMCW-XNs%-qH6SFXIC z3q3(Y{R#O1|M$bvH>XTjkfI*9XHkN54q(mprAzIAYmU6KiOt`%2|=Delpg<6>)oYM zq5=0I!8m-lQR)EeDAT#pyIcQs9D(S9f?ZOoh&EIM?{pHpqp#BEz&<PCE0zWeq)b?& zqeiA-m=${tJXj#*0R=x0VpN>v%nL&nrW6Gbh|z9nE=Zz&d4Rf@@`|1|q{5LbefQW~ z(y@Na-`H2D*4*%?Z7cqGjog2Fym_fl%A<Sbod|Hf<9+;hgg-jYGsCNa54WKq`4%)F zb|91>@S)Jyb3{)5Cj6+>5ufz_Gs;=VK3ci$ultSBF&OH3*5JvSrRY&ov&|RRcDKAZ z(cw&Ty~QfLtM*D4J5(^?V^3o8Thg=GgEmxl+BF8F4JW{^@$+qnKJ#x0Zx>;LPPL%3 zDdoN=vwA^5&Z75q_c;@~T)1b`pb6d5zaIJc$>lpxad^4*pst56UgwNs`X^hT+<WTf z&QYmA7eqX^>WSqu4jr1Y{0Y7^+WF+oE2$aU?qR7TA!Y3_<4<X}`3aVC$5YIhl(Ke; zJR1Mf*$shrjY+cfZq{;lX-9Y0lR|eB27=6|$ac3rkQlC<GouhmB-PQ->M?r;FMCY> z>^ypYr$&<lBD8bZmGkMa`=a~rJOA(J)pvGk<8cGcuHjeCufy((?!WK6+^#>JXSqv) zJkOTO`5Ya<bmjoq2D7fEI2h<=Py({7+vWJ#<rI3kTX0by7ZVqLkNHnY@0{H7$qpS+ zmS%dV%@d-9cm)FEE7AH)h#t6jc_!l5#!63oc(?S|y;kGi&$k|CmQ$waYdbz6dd<sL z>&wv_O*k&sroHp^$Wtud4XmQ7u&@r=;Yy;MG736DQB|-W<WdRRm)6N`L7NKJF)D9( zI^UABYi3m~0Gj;!fP2c;YM+qam!G)#=gP=@PiVE-IJrG^xk?<eis2T~15dP4Q?z0p zI>j=&+b6p7iRe>0zW&L)D!&`j4@G&%F8+)rOvC}XxURy=?4n#mJfM>!i*&PxL}F-W zkK9IO;HJ||)yaiLUj5NCL14o|7!omTpTvmD-|p^AUS5hQg_f_|cA5JFKL-naH`m7n zI=RB=4=O-BzC3o)x<?KS>xBqV0Xqb!Tu66N_d)rAQ6f+M;=QQ_1*y{N7hRv__Fq%6 zbo;TFUW#~VpBOGkZ9AD-z}0_ob4dyNou+y3y<bG`$AK}aa9N2yOH^Qv7($jXk_!YH zl%x~%8-T$eJ2HY@lqCloi8{1XI0ns?@J@kKh!QIJ9KLq*eJ{*9%1kGHBUjuvtN+#{ zZJN&I$SCjvVK8%?%00WTtbfC}P;gR3euDmw556S*GcGC4<=~8k!!sTHz4M>Bady!b zsk!m-lN*MHO8omWr)7?;DG;?sk|%t|#<?nI*Y6!sUe#7!QC~1-_VPKo_dhE|Ud$Sq zm#Ik{#~Vk^TY&12e0^yR+HNc4iE=_LQNVbGVuNL(LZUjsXgV?nSOqY@a)mIn;RBT7 zZihHbZ>pff(gj0?OGPsDT8jDC;_neTvuR;&>6WRxhYVu;z}Q4(tjcOss|yB*Dg8?( z$7qdB>%TlPefo(nCH$-!{@qcKb>@6!)v8ydFK_+LNon%-`Kw;x3K}$`)|2TElxOd4 znm1NGzMq5F+ilxb_8P59T@woAsifhZH^I;PSC4-=bhbE?ZX%tNzI<iXq^)fKL%+Wj zcP6(x{K;}*6fejs>xlhm1xPGGD9ey)#?$3zhFH_?bxWu38Tp`)Pc?nRWaOu>(v7H@ zlDf9o9vj%k|G|rRTJ#G<8O$^XX>W<(?povI(@G+4a&HDuP4}|f?kLjO$)v~`g&X*S zz!hZRIEaPq;YHFl4|uw~M=0fi$Bt7-bx&?hoe~UINb3*u)8{@Rbbc<x8ueDIUTU`L zTl7|`nKoFXyb*B^DPoHLvq&|hvb&3`XOzL^>6V9X8E&&~9{n*uB*L8l|I+P0y*hf| zNK4U>ZwhW$9hk9v`s9A;<}&=58;4Mm8R~;!)xYHW6)Fhbu&aL56A>mLqh-iT)S*Hi zVh9wVw0xuvlQ9-lBDsDg<J`*?b-3v;;EK^ZFW2*tiyF;#jozTScu`}}W0h8Zv?pSJ z#OtlMJFlqlAvXAs&6=2$81L<_Z{*{jzscp>KH@D7c<cGgm0z<4!K^u+VsEE@3oJT3 zK;soezho{l>Zu={LF`@K&_guDLmGUhP(n_=q-cY(TUG*b2<bX-;B9ftC$~pJ@jecF z;n|L(0?xy_gN_~u-Tn#I!)Rd4X*ej`LLIV~3j+B(Drkt|#vbtaJ%K{fkt4Zbs#4L? zB7GBNHPQ^}Fg`O_O;Gx#r3KpBeryfvCn@H?t5is#mT*f)3r{}`AZxq=(-l33-fi?b zG}ok}egy(C$>3?^S5*O33rKQWp`|kc5{)N;`2O~X&znq+_Ev|<bpGLX@MYi1Nt|$J z(E6vgbc8oPF1}(+PdC0IKE9C;Z+WV%Mb6p8-XNGK`a`2$@oaf)|J?Jt5-`#8yR)4B zY+3#k%~=|Xz$z!NvQVVuXNna~^~#>3VnupxP#M8lT)F{tXa(Ls#n=<(4Vni86uEij zxr*|XIyD@2Vjt;y08EWu4f$<!T&&q7<=T^MR)dRO;zOJx@>gMAVxChP$i+o2Wl3vT ze{-rKhD#EJ@$K`FxbsVGu2WcMOEg|m@UuFOGA&o#{-?NP{RjMKe8)2bxiy?IQ7L@~ zEfdOxcE*?_JT62j^u$+(_uY>$)saQ&N+fmRWYqgDRx#?5Qhg_K4@cvaa~1tzS?^#< zW`Xyt7j(Wa8^}hmNx-38$$rhAWADKLBXMvj6bUJf)Gkm>Ad7i46SLo^49e>yI{B2* zb1>K990uf+PH-K6bk+q9Dnu<+IR{;@1H7{%dPl))ptQ$`M*zGUTr;9ez`u}u>kM>G zdt?g*8%I+e)b4ngzX&&rURUgJB1?hOLAO9)H9pXprr|v~f`#QgMR(BzNda6c;P(@r z03L%p=H<{f(h)kKOoh=j`b@ino(y9E)c&-jn&BEcOpjEmQv41l;wO9}o`;I#a@++C zlTUGFbVU%HM*z_j)J`r69t!#tAQWWU3>5J`RR9)gdB0CAhvqY&gwCAycq!YK3^4~= zgvuc}i__2?MdiRTvCB_ZqTYCjI#r4M&?vJKP&BlM1bzo!Ovr*hl!mHR9HfHCSApxH z_%)>}6=iY?K;_1Ud`+soz)RIq6(jc}KB$j;D-mGp)GFlBi{i77)ILjGfMX*QP^lu7 z&l(5Uruqbjqf|dOC42C;y!70*CHgVZ)g10+)+;q3rPx=LC^ij82I1Ce|5%%_=(-gn zxbM_f6&oKe&TDW)Mnrz=9GeeJT~4&Bm2rjyl}4AC<kCA6Q{yc*ohs0P{HexaT#7GI z)aMv@PTNasG&=jU^2Ld6yV^9^*&7fyNGqL?pI4B+Cbw+np6hKHMV|5)U||KO_8pzZ zL=~`N7~k7jW5G<BxTx>ISiqiVXrP|R(u;|{6mGadqmF3^XjRN+iBC;*8a(j{I;}cU z@07mRjC2VJi8lAJ)Hr=VmtN#c3XOwZh76tEVRBtO>l&%?SQ8V{lltr9QoY8)prCou z(8rpVof99&zo$0yyxyFi#bTw_FYdbQi@S>F%w;NV(uQP>AWGk<0n_p}Cn%M=l&#W1 zQ?F8^1u*a8faiGcX6C%>K4w4c0nm)O${1f#2u;08%PBRg8040<3Uf<^7?%ksjlYiN zigUAK)MicZBsK!MG5oz&H;Abliwno-ox*RPpL%?X(#a)jVzRVWpmSMAb2e^<bZSVQ zT3s1>;|)N>Gz+l?B(pIZGYpz!&J^?7uV3IA#fDWGz5!-lJEpLB;|`NorHQjTszjmC z-ebKXp;DtqKHLSOI69@rx=>|QXD6f<WIC;b=ghfz&if0p`}M6+rY~swK$q+^mn^R4 zxLg2r_sZk=!}ShJvQDdUBqeFI2Ad&C9g~PxW~||~0|LIxa*x@ojkAczOaOEfoiZJ` zMw}-(t*K;Pz~oF~@upY<Z{Ttg1xrrvK#g7v*Ixs_PWsoV8?;v55Nk9T5@XFp>q?ta z-5z8G>m>ry0eLfV$5^$`?5;@f6{yy5`LRZHqQn?YqRFDyXcJv_HU9u$kEVOCO|l9r zGPd;AyA6iW43kmImagUdZ_S_Xj!Uu#)}(89BpZ5f$xs?i(<{xDYZnP<%WLNGe%~&u zMWwcF>dSGPjxSq&{P^-^k`Em*VFd=2jvv(TNui+u&2AetQZ#Ze^;sFGR$5FqCvh8{ z`du#s^Pjs_ZwGu6VGOC*xC{(QwLV`|1K0^SVH%s+ssr4bxwJx~&e7|W($FlC%?8uJ z6}p(fyy8F|$MyZ7qGWMd(e^1woB-f1t5c`f)%Qzz-EQBPpX%Uwdt%=(%Pp?*dDze) z=s&SGi-0^1XD9X9Sv)Tgqgz>RGUTK9NQ_N9Lq83GlELp9$zvM%ysz-gU@o*P>@ot8 zBvrYXgP*h<mH5xb?Ng>~k1U<Cy|Hn7WL)XIZP)(>+C^6S?vCHzG9{bO7&w3J&?jaj zO`h0T?TZ<HNIHE&`rw17H!khp-;<k37vXYRiurx7sVz)*8UU*9&Mg@<V#fT+BjXB} zO`bWTu5V#7pyy1kqQb#_Mg>V?l6?;3_||BI3Sl44qHHcOwkQ$U=jhB-M2L<Q<J1jw zZ7l#R1iJ|4`9gubXrK`5GU1T(4Pc#dI<Ce|tRUvlC&-b}GS}a=<#Q{4jD;xll1@pl zeY|<|$E=8rWJR<VS@2V&=OreS8`-3<om-olB#Zb-sUzf=!frVKx8&Wh%*ns!qz}&V zjqqRz6H`fm>SD|0j}cLI<<ow96<p}ZFq1^jYBhyw1F5~uOGsa^#N0bIz}I#^jmZ&> z(l?ECuyNw1O%tPQd(WNgxDj3x#L3bUEsH+V89N2YUfIe7UX1~7qNg`14158Zn<A0B zOZJy#rUHj5d@-zo&d*}F&_a(>g(zOWHZZB`0%GAORjEQ%lLEDZf_T|T3sl8!I;#U` zLC?`F!N%B3r}6U1%@mY$MVS)1%M?`#QxH<mBG}_74#^i~=jA{p`1muhtehMl)Uy;n zDk6%b;96<}KPp0`@yaqX_y0wCc!;(Xwe<g&^1!L*|E_(&<97BTC**2KCecg;|H+$D z|NBz#|Izz_fOJU|u7xfs5l;uhl<I-&K{Qn+3B6DyAykc+ePMx|{$u0IT3hVtxIEo6 z(o5F(n3(kRn3x0$`x>b|q%`cV#bNea923nMVrzz3v?}Ns3Lcz1d|VaGZ6{zYv(1C0 z+pqM%ZPX1Mi9n&bNM3gq;|L#;TA-r{g+kJ|O$amzg;)r_FfI5sH8n9)NDQ}1jp0aZ zYk2S8a4Y8yvu1fU+MIZv9M{m5?SZ7OAgFjHo=><ikT2zcX@D~W$;%@GeG7g`0doMz zVJL{~1B+6^>Bx?N1NlS0B$s*YYK&MZ+^&$qq(y;2J`Akhi`c2ew>|nRVJ|Sf!+aP6 z1uA_3C6dCF3pjd}fa9HiZMXut9<ZdG5409Ri(!O?IT~ej0V<`XHq<E4h9tp8bwq{m zCZHS^@TBNjt1Ih<(8JCevYxesCejNDyQ`{{Js8=ki6TJl6m1|#;{gqd1UE8#@gFTZ zA4btJ&Z*WBMYs(`7V&LIT~P&mIfcBV>k>Xpb%|a}7jksHyp5k|E3{*c{y2Oi_|PAG zh`OFh4RBc&G$TqC@@WrJis+;irPD*bRt2ROlCzhji^!QyY1+f=I%C1(1tSq(+8Eti zlHSo+GH4`rLZ(DJcgdJa%=4rhKoU48cD#7g_!Jcr?WTl_Jqf3{>OxY?6EV_v%-xQT zUBX^UPkbEd+B+0ok7kMsTAXo&M~7hU^b)=q#~N`GGPzUHO7LiUnVon@I@HOJ-Z=_6 zDirXC>;@!6f{D&`N1+2C+EK9_`LL3i+Z(_!_!&XEfd~XsfPsT%7pdMLl?I|2w}EMg zTKqJ4TXlP~Q?0%AR;}8pcRBf(9XpU=*4aMi(;@xluMTYQmB9vauS}aUf6bctGp6Ou zPE1_?*wn17sgJFn!PktbDh-XS0y`;{vcC<Ud?iE?z*a<VCnr8okRq@ROlW0A(rdkI z`ZO7lT+6e#NTr_o<W#k)uqg)l>6PhqjmsMA(v`xE#REiM-7hCt#Y66{;ft@pA0iz} zSjM^~tb=&Orj}C=FhH${=v%+Jm=XiYNEry&a0^Th<d!2;Edtzx5SdEN)}zDl<K}MO z%uU^lr03(0NZ;MQ^1UMykKi4bGXs~n=<$DSl79c7^xgw7Wt?K!8@_*h5o_oPtHu1> zBfXyf>(lt}6&c)%y(v8>eTO@|xAJyoIC4Z9vg7-^8t;(adGcQAk0)o`^A)eWqB?S) zQ*`rc;4Q@;&B8y9Oe4?x%k#91=@+#jfR9jyt@?H-ORah#q_>7ARkh39fB@D3W3KC1 zv&<;a&PF<|bGI<`^2w7}d9$o<rJLb4bS{!?Qy*2R!}uXz)&M+KMk7iLx){>Zp~+O} zUY+{il&BYt2mU@3DjYROmt#gF2W44BEOhDDq81nEf`JhYWw1aXHH381y+hdo+Nrn* zGQlg@BZi7}u929YwicQ7X-uy$NOoFff3r_rJJrtqMjMfes@&YFTw(Xb8~1JAcjLtB zCDUgMmLV2l_Vgvy?TV}I6+)DKArj)lxMkb-GKVQIL>(R~uayoQSSqiWaPQozjwv<E zsyv>mWi`5;Z$A2@%HvTz`RJQFbywZnQ^%PNos)tAUBF@Ka(SRW84X)B!CJ#z22<*6 zFILV6JQ&l^M}Q6(c)JH(8`__uVljNax%qswO+r-n#_nxVZllNzLw7H&?od=O-96Om zbXsXk=-Lv)$T_oU?p$e+)PA|jkP`P`MC@VW<$aO9N$Vf_Zu92v9$KHI@}zrIS8hh> zCproGM>Y@@;Nkzjs$nMc*boqi&}q(}iu(OxwOTtA8vYwi|HV6pd_H97;{N}6O{&Vv z+WKw$`|0(`$?H%5eIwCdqWzc4PO((~o43<hcEmZN=<uxnr8k12kLJgWE-ij+*5|Vx z!yEih-@&<u9_ldcdO0KG<y}|yr-A>=5~p6-pOh*OVS)S?o$2~{+?jdTqg(ywmH0_V zD%`WDkb2Y=@4*P`b`9v^k4Q=o4#_!czsI0fA<MD#M@Pvo0;EA622=U?l-~JuMb~6y zW@cSeRF~g7C7u^LuC{mT<*Py#LzuR(2nA=4X$aM3R|3h|RheBIY8W#+c(r}xE7Nrm z>d?iXC@_o9#e0#hy+pL-V29`mXdqPPkfAXtkqjNQ(vnVrWf-TBTXy%VpThV+J86Ln zRRp#Xoy1s_v=%@m47R+Ohj8Q$<>ge#i&R$ZM_w6-#oGB=d2fN=puxe)0#QAxvb3tt z?34ue^qu+z%BH$Vc+`C9wIREv=|ts@$wfJXgfPG%Cg$}+WMsYTKKgCVO_kpDSCH5n z*DH-ZoYw0H+U>qBy;99p<%HK14i#CrAf-58b<^}83QMISvAK0k%SW;FnwhQBcCpDD z?E`46QTr&Aji3|xKw?*rVpx`w@f!#AEj1H04z&!L1u};mB|_q9*O}dIf%q}x+2Err znV;|_NIW5zU}}w{6RO-*6RHmRLV;Rx#SL)}rWC7&h}cK_-4AbHnrwAW+coDF^$^2# zBO-Nu7o<ty!UJ=M73`Ykv?hz;s+>p@XQJ@X$hVgiuNT$^GE*c)VO9#;?@nOf$#J9K zcAdcO&UtQNnXqe`S-EqLWJu4H<`178%;gmQ$ILyD!XBEoODLoI%RG#1>xFj%yd<Ym z9%Eqc`0+AH%>pNI*<~C9GFl(tM$4k0N>uX1e^R$82$DfY?lLM-#^|M8<&5`68_?lI zW}+zONRW(_aFD}MYD}OJQ}BB<$_SQq*+!ufh5XaUDxBptqSQY3z=64ovj&epFgGWg zTZWn7!2B`N{S$6Fe9V<rl>^`4k@*!YL~GJViIz;0siMG!tc|X;FCr^q9f8_xFK39z z5-I2WGH22Jku|J7vluFZ*S4ooyO$OX$ni<9gm>i!MAz~GJ}qp4=EO~Pa}SvReqe57 zdczL;XeamLz`=%~C#On#NLyEMNr9EkdUd?r>nI3mnhinTd_i3sNUt)y6hfHK+!rb` zXLcy8qjdwaxZ47?>pc0=yE*06Id8mCouwWT$QWb>#q8{RvOJh3<Kv+xVHkGugk{Xz z&8*N%pcjI!1a%g=maG~fj9CmdNQ!bNg|D^;W0H)*au>vil}EG_c8|{0VqtyR!Zfb$ zil#aV30<T=MLw!)x@RT3Gb1u``aX4KQ=PJ9V&pgeP)8*Ku1scaVKN`;Xu-OAP&OAH zpI#z{w7}~eP&El-Ip3sbWwA(5!7!?oijw?}f873(bOaWLy3;o`)wx&R6W%s$_$+r_ z)5R7x?Z|pwU*wB-r{>s_eQu;?G-UNINjDl>lDw0u-0?ouQGHIr^Rfa<9+R@KVF55$ zL9={*3VN0oWRD^8lK`fee&v8#z7vuJ@%hSBp1jjjG5tlyuC>Q18Vqs$7|RH0l1ZNm zcn$F|c17tRF2fKn^08NkuC~t5i_27NCz>~nt>0*?pJm%vf6W%dgjK3*wLwQ-N`Bm& z1EmF$*nf1suS|32`aPO5UtWmc96wD{?#r#>m#GBxbaj!3do&}3wU^WuVW_?y8pI2s zTz{EnS^NRM;*w%=E!$ICnC)O6Cb%YU*N&b)YlL(syKls-rDL@>OpHyH6sk;<OQ*Ye zPI;40+FYm%=lLRIxN*L`s$8Q!@*z9uEv(8h#7HTL%UseTcdvMMZDzlsn)uKEEU*}s zuD9rN`{(&27uRGk<n@=wx<d9DE|d{SDDMQ#2v?(YGy&j<%-?qr|L81$QR^qtFOxMQ zZCw+=PYItDq}0>-CEeXEy{d`^M~UA#L<dZWg<nT>iWpps$zpKvy!{UCw86PWiw7no zP1=|^!8E%nQV=DC`{xYobKtLT=B9rU^MRz0!mkt$p_Ww?B37WOaq4@$`j(`Z(L4|u z7aU$2XykeahldZ(`+yr@AFJ9n>AhtOq}`zrQ8GB^mQ*fv?g2RGft&C8cD51mja~(1 zv7Mp-OGapv@?00KVgP|-Q5U9UB8o&0sS$u?X_TP|<xb>8;v#u+1bLLF4)iOV(`qOG z_+Z!c5$&Z+J^^45xIOwhq5%T9hKM7@C1MbZ>b|+VoTKeK8Y0u@9{9WYz}&h`iDnS0 z1p9#HPkMre!2^Q@b)ZdE4>-K`c(s1Bwkij^n>C^KO7(@AnH4X9D%FNwGE}8QZ=0Ak zKsVaD%RDF}FhZSG{l*(P)#W+TyZN4VwE=#$v*Ot4NfV^|$IL$frkh)qoiq2q_`z9= zi4aTeVofm3b?k6OJ{xI^&#BsGGG$s4rH^Pm&BYomHehAXa>Pbf3|N%&CFdmlC=^Bp zZ+30l--<I?ea*=6(ks540Y#-W>!od%UJJ<jVT^eg3m%5aKMtBB8CT_Mo;wIMu|gS0 z@e+O=;d-UuM^5Ymg&=^dC<=ifiWnwq@-XDDf!EGE7X3DO?fgM+1*%J&-YOV|GL2Th zHO9hno>tpe*)(UenI&eMUaJ{~-y3b3542idFMO!6?b2KL*5!Ij$J_G7Sr+|rgT<=t zsL<=Q<``~>G#0^__eLIyF>AF3{@EC_HF6;~L6xdO(3hF2gbH=ySZWa2+&dbFKp^3e zwTe+xxh{U56e!Uk5YTuaB}C^z2aFt77)hW|=r)j$!9=k1^^Cgqj;cXLuOmT+^`K4t z++l<i5YNbb;quW_N7pE`rMIPTpI^TGd1gY^4U@d~{#C3Hd}V{jBK>9Xd(sZG!DMC& zq&w(71cMWseA~<k`_i<0@$%=TZ+~<@sTN-34}W{(jo-2%U1pS?_09&ZkuzN}Sm~h+ z^7}ABfy3w?LXIFQw){Czm5^1Qaufdtr~Ra9eq=x5Cf+*RpaX`HNhb(KTY}4L9Wu3X zuy=sTq%)e-0lkqoWd%lN-~8L>_!yk3%~qR#;naQ4Kj;5Z<<YE&SDDX-Q2nKcyIUf6 zw#711FK~L~B{CXfRMUqJnU-iU=ol9>%w`pUifwy#_ugmdESS=N;VdElD$UO9S3EG< z^u$wyF14y!M7QiyqR<FVm0!bx8r~mtYT!JoVq7Z`yGSF~e4=rX<YukUN*{C0Tyvxm z+pJY`Kg&FgQkZKc#VQ?;Pov$*bW-POblE43EKGe|mRDuH5&5zBK|1jyCwy_7LBB=} z`h!5MMP&b#U6*?uc?iC2XlazbWX|-l>!sd&7JEVJjVu68>}5{r%k;7QkgHVkQADXZ z8=k=_bYU2mRIwLu>Hpw%&){~rumKQyKkbyHtNsA`x-_(n6?TPamdyb`avHBdMaWsO zt5<eeRe|+Rd}~256nf~MSfhLavcc7XbL2Hd$5Utr)PCSC3YgF1R>4Qu4p-qWPhP7B zf;c!c(gu=82Sjrs^=VKnkxz(6PJYhqfFn&1ZtFo|V{lk7IIP3JxOp-Dg$;}AhA&y% z+%e$T(q+f){QQ`(@z}DZ$FR}yvGhOBT=(|cwQpbd41cdAA<jTr{`Rfo$L>GJjgY=W z7F48EVCw|7KC4`_@Q`%j@Rl#?a!2Y$yX(H(a#*@>XrZP&i!IpCZu?U!yMarHK0e6N z(~Bq3GZ!yrav56W2OndfA3OH>F)5v`W5%`T+s>~Qbc+^_KlJwUrEeab1kY#e#%sW1 z1)*?#;Vn<zCSAC-X<Es(j@902i*IG>+n&4y`=>8%LZ6ul2fRa=XEk^i@E2CN;a!ad zLb7BsK+ZYv2%?<jDzL>eA~Kv}WS~~$IVP{89HcxWKO`4m{y;*=fr#%bZI^yvS|Imm zr2~&|+VuD)mZcZ;>Dm6JFV!%e%N3J6Cb{2B()Y<@u$s(tgI-<Y&rZiF+O)ioN3>N9 zYAPLnm)GYB<)v}Ukzx7_?)1Z%r`X|56DMriG+|=o?u6{LUY@ub`ylx)dY7v|{EuBO zy=x5J&t4Pf>6Mn9U~?HP@q!^W-hrIw@fL$io(saV-<S#*aOJYMYNz!cvKAC+aIVRf z*U0k-xl~n3N|J>c6`NQhcNa(eFK6<(5t8fviTe2ViJK=*+{_BKX?>ElzO@@yBqSvF zNz*#g`_<o6cw@f9p>dQso>?*!OO3<vOwq1U{n7`XmHv75ED{2(=?QfT&pq5}V&n%~ ztQe<`O;58};>1{6cAu<(q3FiE&KoQp620ZwB10gn54_f5&eGl37agIM_uR9RZ^068 zmiYOw@^LW?KR)u|lLbf_jS&FekOCpqT;|9%GQOuQbSsl8$8G;idiH?_rDs3iJ|V<C zo14mR_72F0?Ekd%bZSoifHbz>BZkLUMlL=mwS2y9+vhCwAg2mVXn)s30E_tpJkl$y z*fSu%FhyERIvs|x90U!RMSV_0WD!gih+;(WMJf=%Jaz-H^c2Xf2DK-8TR^l&9k}3@ z<wFMX003AEu?zTO7AJ#pFd))vQmDjtr1#>a?<-kgq;!0Yef+X4#trn3C^E&f>#~#I zcUa#^@*U$?-+p$_eD}hN*#47Q==?rw`4Z20{bwrngkfNxc=j4&JIW*9d1i5s<wq`U zfy2qOyzP~OrDH^&x`0dUo!X~k_w+J$IK$6A4GiE4ST2{7Q~me;@9YoebE-5YWBFWp zfmH25>SO+*FW&%vPA*H>)gG#i^0hLJ*21Q<1YGUj9u$uxPlPzLa=~j;p(&6w0j|L+ zS^q(P!zq4BFh?|wXqPN68A-trBv@WZOt~0*LGpUX%neqUQlCHr0C5Y_z0Fa9fobB% z!=ooNa|I*AKjMjt_oWnoH<+YZzIDfBUOJ{)wRz_x?uOZXVw|AwGx)<zCh!ePW*Rj3 z#rs*TRgXc!Ek2q&K&un`8y0Y$1VJBXvkh(CY~=Jf&p5E+wFmq$I`5)elS{NZq0}&X z{X5dT(v#A=@2p?{4ogS!-1K)ozRCo{ZHo6%aXj_h0QG{k8^<dnXH*NX-88=M%O^RD zQLjyDI^yn!TlP23;k+(EpOntmezMsJ7y&$XP``8cGlwZgX^n|#I^@E6VwHYDiAEo) z{b*whM^(@d`iuN<6ytJ%xD8jCvSgaUI_Fl0B8AX#7+Kc5KD@5tG!1hILEeX%#N<UP zKu`=XE9U%Zgvo+giofpL-+!?x65lNSvrzgf%oaju95IMF4t@T%bk~c@-}dIGpS$UE z>7Q(WgKmaY(sufE+i9hOTeI~Wzvk|}?8NQ&OY<XhZn`;1D)U@q>px(+-~s6w>BC6< z76Z3v6RTLE#1*I8Xj~zV5_+VUWov?40ZdQ`)<E<kUYy1dJVJ@WshoZ#jDh83J3v%D z=0U%UmBTuSeue&mvI`2UgEKIJ-zI$~4Vd5CQhjiiPPas#@%6IeO{%!s!qIA@E>3ig zD>3e{*bD1=6;7)0mX&HCJ~?{D_r2%3!Ka(|&r8Tu_sbqTJ;Au=dIpjraHH>dSNigj zf@NRW#740JEOVmt7Xxn|v4qS1U0*eLL?(_%RXOvtPxs3lS_1FKLO&<;PUBP-y_%mq zLRXfVTr)E;{?$`HU;V(7Y}}%u(md(;^_LVM+&8V0#-aY0&r)I0R}c{s$Y&EKQGjz| zFc4@EU|0#>8?duTKq@c*n$yrK2BItHr(uKi#^;YecUbyrX6-eCa82z@W;^`c@zv7n z_aqq}kbe8=R^qWA<xjADcITn(vsYZd;?RpP99p?;<-BdTh=~jLuAkVpD`QvN#Pxd@ z&R@mUH-E$WpMI2hQ?|0>LW^|ox{6UHZ0e_fW>ZV+E3cF8L%B&lG2y*^3onlV>?GAh z6;vKl>Hz=(uK@)_A<5SwXz?m}ivrRK(C1|69|uod5tMf1oQo@D2Uq6FA=L|rV*7?a z-aPI80(N)FXVSS7Pu=tBU0-LLC%njPkN=|rsYT;lM#ZIvLbFHb)y}A%J8J&k)vpdH zy!gVDF-vb*^H|PQc7c0WeD|i^f8fTJ<n4Wa;;7sIxut#?Q!Q=odk>ra!*Haxu&~K& zd3<nc)v}Y1vIpy@R_ETcXj}W*F%#<teYEv;Zt#s~&!URa`9~GT{9`0^?H_xDMXj3l zE@NP~)-8ZFd3M4PmBOmO2m>Uj4$PD=Lq^=Jk;J18h({2%8Y6D<cv8YR$=tkrVh2vN z@~?Mb7rc~0bQ%`8ly8wOm{cwY=Ec9FTu!naTMNmSM*T(pbUqyka%7!gCM)Jes1%eG zCzt~ON{p*wj4H41hUcqG(%_LBYq1Jkp{sPV^le`M{=yfm2tRoby={^*Ia|ii;I%{C z8D%M{cCE!Wx^MQ-(n6$VdmEOj(CCsCTjm{^e2rD}&G>s~_s<h!>B6=z^7_BUrp?G6 zT%8{iUzO1R?6G4n4fFL1>0@-x+<f=+2dHi3+%@8ASzl7ExL5H!W>sQbsIx~uaN~w| zd9+gKA|&h41|$UX>Y>0*d5PJCqE~_#2Nb#j&t^)>Yal@%pFk=(qQm9f+!=92Mh841 zSWLm`=&O{olfYx_X7odvtfHF`HL0~aU!x5w1^AiMGf)EHb%IKE6_qZg`_Vx>e6@1% z-b2TZAG~?d;_{3bp{P(~mc)XYQ^T8g-?Sw>MX5E$*wZ9?RfRp#Y}9JXt3<8Q#97o; zRVJ53uT)i5T3iY2#hmOBb?<!lPTj~%BhwTWXuW+IKW)y<``&nSZ|~wnqX{yhPd9t_ zpn<dJ4Gb;Z-1yMenq50zd}(JOmQy4DuRYmr<`=kJ9p_p4+MESzR=-m>B0DEpqtnIf zHLAHY!Z&Z(kYEAn({H@z&V$$Ml#9zlp^B!ay|cz7s?~{%A2(p_%&EmCB|(%};H_S6 zq+DWcS(Rwwj0TmqvdWZX5vwZAu7trW7S0(_H(^5E$k`rMg4vWftv{>hwl~f?w|Czg zCS5_Hn&*`_&6-g?ux?O;G_7CF)(0oQuxsbeKnjQS=W5Yu<W3l!3#FutQP!LZbtC39 zu{YE<lRjQGKBFXGn;WM$38kUl)Mt`lbNK{)CIS6^8EM$O#RwcVfY{_vTHtbGc;Omf z?8Tgc55d%c+Xt+gfzRMDQ^;`-gxLpJDA~mX4*0T}UW9#t-aH11R}Me~NHx@MP%#8y z(=zZ%qtRj1mv6ZB;}t8vdHDGB6t$q#>cy7%YzsSdmLWT!Ev3+G(b#j%Fj>TBSu>f^ zpw__F0smj++=867(&hxO&!GQv`Y@|iXYj4uzI)T`@{)$@R_&ZtU{4vVwD&FQYmwg1 z8n^EB%;|Sbsf>#>R#(-GavA!}UQpRrsZ6q(f+PCnmycgQv6sdOggjw+{)1!E-!je1 zukU5hTC;C;s5Cr)iK5A3InI=)RK>7+lB)_bbh=jWP@7HX=rcB5nOA?)_)$A2*7Qo$ zaO*4G0nXta8BFNAV*bedf|`lLQzA#l<YqbIre>Gi!P#<wY7pfCW&Lj|=pcD$%>y-z zl9w(wls=@<?2OIrUh_f;N&dAMM$lX#_r#C38MM5ljfajDS}Y7rQe~BqGLvi;-M6$W z<z&dw#NZ%=L@c8}mteH)qL7gu>q58<jux#%J6q*5daR0yAw`${R~m`@Hg+zf$Qn_v z)E?_?779J&LO;HfeA6r1#|W8}+K4>ZI?bE1^#wBlgX7XKVt@AV>*=n26tghev}h|K z49Acbsu>qTZYYI_ssb#nyBT=J<#h&UrmM7CxM&D##>LSSBX0?cmY>wwAlHA`)f<XL zAk6=Y&OYG>=OXtB?`4oRisQZ<Nl(aVB#I+L(f?UHjHL+tGiRbP=1)HzjXLkzK66IX z;r{QM<`x9zU*&dkz(3tyYW@G#UN*>4=|BwuRxG^w2{Z{!MGYh`{_h${bV>?josn9j zE%O13HdTA$f7dKrUr7PbWp}i_aX0z4k>3ABV~{Kz<$04j=?Dpb;8r?+FhzH<P^<-k zm$7DN*U}e%F-*35C4w<Kwy^sR@LrGpv`6=28PzKSG=uU1$yrAf1;K7TIoAn(;FT>U z-72GEc6M{Q9QHYionTo|*EUFRa|#+Hd(T-CE%&e%V`MQsn!8EJj~<3v{KOC(JGYlk zTS+PlJll(L@ke=%@=}~dR0Y*tAx}4P1V4<i(5b$^OiiJ}rv6Y!F1^Y(wc1^Y>1{3Y zb3@UnR7HAX#~FtDqpEy}j<mI;C+?EZ<P=OH`~h!$S0c=-ig=%VJe1h}f$ZZS&$mPY z!f-mB)6ydI@r3QzjyW~ziHj1GEg2?JzgLu*CE|i$`E-ijV$m#`z4$Qvsy<D0SR&!r z*vP@iL9M}R#wLeNZZ<dD-5$$@+8d#4Z;iBy-`hNGVVhfpfJNO8KZrUTbT8Os@}~Y! zyY_S82YtKtJ>iG8i15RE?NGR0)(x9MQ3GA`4H;@>?i%F*Q6<NTEB165!f9Ahu{nj_ zYL?t8HGWvDO8DZ6&Gr*&C8w}h^=c)MbgW7+>un*M8VW`$=60JJjrr3({3V6f+6E?_ zXIK%zv(tMgdB_cUh$2^v;LFJ&wo?b(l~JYZ7aDC@IueOP0qa<<g8W0++-`xRTqw13 zSrp^6`{!F}`ac)WxL;~3N{O-YLagXDc#QD|qqz6(Z`p0^3w9ePUx!OC|Faw<seA8U z%l#!<fY<1Z4$))q#^>er^N)+%bc*@!y_d=@)A1hV&Y`*M#|WlEr?!!7C(z4)c>-EE zpq9Zhrvcs%0%=!;NKYN`75gBWmy6Ja!2^<^UM_akntdtFmX5r6)5ft0u{j5?%`6>I z_8Ob^=9_E;Rk*tL1*t8+QZ&X2yojLM7*3UE?-lFP9eL!k$%uQTM~$PkXW<=RUElQT z;DW~SBP!<ml<FN{G0Rudj#Fq1^#lD3YS0<MBpAUKssqlFoI&Z=Fy(=bU*9)l#(iJQ z?@=Qt#DAd&D&eKBCn^mLYBP&N8VUSz5WiqTmY1{+<Whg+wDc~&GIE-w3rA_48!o*^ zd(o0iG4fK2@_sQS$Du136#l%Aho(&BCxIeZ>~LDB9cdLiEuuqtzg9Xc{ra;Tr)D(_ z8f{rHH1<T!ZKEeIb7nb$m4&lrsP$_~L#tSQJKy$|G({T0RL!i4DThq8-;#cVTC-t? z^vRfuzxvha9r5gXotoZpRFA5FyvUQ^Jvo9i-s(XI2HvwmDEsik$kq=(WM!Bb6zn*+ zlJ%1Q5V>A@gRZ519o0R9v4Ahw=+5h5r*Q^hr$K^pAYa45O%)_JW!dBpq#2?hMh1s_ zNS)-d1Kf}l;-q2RVAu!lE@1XRlIuK=%E9l9sZEZXH!m)^HfD0b9gq&V<JhUxszLc% zHa8BjY4tU%WxrBH=-e~DzbFNPk4fNG6str|`r29Vj4@PG@r4#o{gSxS(zqq{p2o&w z?p%AY)@xXL-Jq~q+GvPjs)jKJ1WXD@>#`}VRPuER2}!z+-;9AM#K$N(^$dr~Cf#Vz za2h}+P~E4?x|v+~@r{7BhipAjgAC%wWFrj7Ir%bpVMBI`Q1V6<XaQuRanhUy^+xAB z11&r-f;$CM$czZe<)9Vzkq8RGLupef`V_>Rmv&2a(w_6W!t!PHqx-(kdM)E)4Q#Px zP-b~U!`iXZL$g`dAA66kU)FZV*tHD}<z)>#*n6!@*Q>d?xtGqR)#);Cnba`p7RTDL z4Q1sG+(W%5$K@2jXmcy<D2H=%<EHc;xxC__mec4>{0MJ0?lQJ~u#~R3rEIzM7x^I# zQlrkL(`qx)(=)VMZL%)2K%*(RKo1+c7JY+ElPhpPBBke;u550~+o(>)t6n8<h zG6t+4)Zi8<@Km1S93dAH)Bt80z2_`rH~)n#Tr|7=Fq?DY_kVb~W`gv!bjPlzzvuW* zf1lUa#9ga)mk%G=-{IJH@r6U&XY2m*>i#jmf8nW1XBHhB>5lJLC~XT4=89`r<8QxX zqo(%VG->F%p(XKvpA?60yrrwZ%D(kcH2MUE0zD1Ak!E1(kZ^knV785N)rA@bqOc%O zP!I=&sVE@{{0sZsTw|meq5(^x*bM>FMr&&o+{dHyl3e#>)E@J@7ph2zpCI6rl)!;} zbZJoGMHSW{k6`f>o*oHDoqQ^Sg`fw6_kl9+{lVYw+IM01=shnk-1Oy;KP;4Pf8|%w z`){vX_crtW>O5O4g}6tS!BGCqqg|HrN0IE}_;t7Y8@Ic&W3<^nELwHL?hAVtzPM-f z>iO5*)3WYu>3vWS+~OUsT566+u-JE**QM{jl$JF!1d)`aqi?&xr?lc75>`tm9zoE< z{APq=n1Sfb#C?%N6Zo-hk325iZrd06icOGWI__c90jj(4mX42>@#7+Kjgvd>V#B%h z9UpOM3VF^}hM^NAd+v4UC~`(}NOzE4kg^8SU36W<8;LqX;upt~5M<c-8|eOpg|5&{ z#(qrmHkF-56ZAEOI9axzf>_!Mid`J8y?hPsg=j2!n+uy7P56f~wevR;29`yHc6Wcp z7?p{+Jy{-iw$DD)WbUgnRVP?#tmy^Jq>2%{&!hX8T1}V#BPJFihc&5%`_^P?;+n9K zze*Ja{BAR*{=e$p13ZrE>KosCXJ&hocD1XnRa^D8+FcdfvYO>?%e`AxSrw~V#f@Tt zu?;rW*bdEw&|3&4)Iba*Ku9Pdv_L|PA%!HAkP5cO-|x(fY}t^!$@f0r^MC%fcIM8V z+veVL&pr3tQ@lQ(H{B5hU3cf}4x7V@V;L~v)I?6_*wq6t@dtRqF(&Zxdh`_-87jFo zg{9(bQc^a6km*oxBtb82j0+|3Gt$9d#X?J%2b?W%t;(wOlfeAIqtZ25;A4nbqKVe@ z8qq%asL^OLI8WZ5S?G*P@uv8q)`9n^>;UDX_ULuK%KXB_tZ0`vF~1;IzRt6IISK77 z-|gv)Eyz#wx}viZ3-c>|-7zgy^wCu<G2Kyc+L#jMEX)*F`keedqu+Q`63x-0mED;c zRlW@8IwFawaES7|6T<#ESvjGKnQ4oAAbr%cIBjM{C?{)<Kb+vMn2u4IUg6B}Rb^y$ zSB}DF0Cme5`p*EL5~+wGN*NPJ2Xn%t(M6%NB?H6@=a-L-l{5b6c6t88V;A#X-*84F zR1M5yHu)b+d<^#DY^>`W4o?X0{{rKZ1(}3OoJ%xgbRfJ&Tt)B>$;bt~Ya)oH02^A> z?zHL{FI=YWUC4L_u%Zs96<+WowQSBTzrv!*aGs7Lwv$2y=zHr!2B#q>)@n^jG<&zc ze%{XG;hsiMezkXY7Y&E#ncsi?kFPxOhr2$1aeo!7dhU;Gm3R31ubRC%u~1x$o<2R= z8k`#4%yc`wIbK)1ExM;C+7=&Q70n)*)D%-t6q_iRE0U+rIPYg$_ijm?=dI57%-;XT z{{DGazWCW)*MH=B>?8TP-^D$-<^HQvZBbL>I~nhcugb8+Us*55zK~{%u8P0)+2_6; zKQ$`angE(21O97%3H)Kw^?{5e3Q?J>K!-R4#1|JrMzTtP{cS}&H-*?hL0I&l<9B)i z6o@xu<10Ov6^e?+7tRS`%uDbl8>L@f`0%!E4`2B4(2c2kKkj|(ycU=)HYFA;TE8$q z!RSrw$;uu&5M2;nyJlvhWBAIBoSaoVU)Z|&#fw(@lk>v)QC#ne4`vi5x*f|iGwWM( z&Hnlem(96g&CKF7mzmpEY}>YC<+g1<aNNIfR`tBxx}}R3mfBrKHKiHpMU%4ZX+;Ui zoV72EFUa=?3es$bvXz6Et(|xE_U4M<!u4IHg){S#%;so+cv;x#VytRjW~@J4JSi!z zB3xb85T1#{0)k(aZc_Evb?2TQ5HAR`T9IPLELU{C6s2_91{{rsXLp)A3|Dsc)95*> z-E18(f+jMBv@km*uT?$Ws`}>>XgO8h2Io!Cra!F>uk%$gXCXL2%;_N?C)hp_*NI3p zLO*9c^P;nL+SwtN{ng&RU&-&_%08v`D05%sR4GB}+=id{&fc$1=bESTv%dZrXyY0B zl{^}LttWv8RCRvzoLD`v1a|b__0`w<=ggRC@<{)xcgob>IE|eDZEy5ZXQ)H;UvvRJ zdjbx$K;{Ty_n9R3hq1t>(ZxW(1Ldb;KSs(Ir|$s|xUMuAwG~zi!?c<HSLuSwmGtFk z63&;>^=p=Xxp=9N5eEhR^|KX^olF;(A#aC4bl_-Q$^6);{6eB9CdQM<Dun4LzZ49y zsftXz=5aIi=2KuY5UYVO)Oh&t2OsEw7&M*b80_DRKq<{6Jv+b?;qh^02eR--VjN)8 z3x%MF6ftX>8S1<UgwG1QaM+9W73cRL1Q>*_Np2I_X^o_%P!ZYABl3X2mGHCDR>zQW zM&Suv;SA%DgXBtCBtD({cutV6nQ`n0z7>Datx)gle30qL!MpT$DK7KGg=;Q}xGrCL zhbpgr$I8oHkxSNCrWGK9?4#dNFioHy99v&Fd2%5?fZ)kv93s_6;?u<(n9`0*t40`| zB(GDt>P$EW@i}5Ty~yEd;=6Jidwh96CF)-;PiHsfms7YL@Sh4?@@vou0_@DgLsq&# zhhK2HffFY(<(4WC=bWG-{d9<+MByX3&V*<_<Md1@RfJqAL?sBnu9m9>x!eGAnboY! zVK$59QoQ{50z>REr`aUTlM(s=hgAsum~KePrdLx~Ny(-!FvJ~G-=7XqIVNI9;pqII z$6`<EtakgcSotw5Z%$S|e#gVHSf;*XGw7ZC;`rTar8yw#y0Ome2RM<wW)$Xu4$>h} zUU)nZq6Cr^WSIYowj~UDC{{Lwnfvzd-?yE;CcnZ0a`CA(tXe+0Mt6$8THSy5Gk<^P z?*8iW0Q+#?e&O={`%X5q*H{4mUmH89JGBO)3O_&wHUI?r!jI1{DLMbgtO5wHLJg~P zGaEJlV5LoKmoBp`3*P!%#3>-bN!<A2`|!`l+Qxn(zum)z<;#0m4o}!{@4c+=-h0RX zEZ;Qt5r08`r-zNOksfdjUKslb-#ET*sC=Xx=ojfubB;8QlFq4DtogZ!`$cCa*ora* zS&P~m9CCEdnbSFjAO6HSAE*`yFS4CD=JEjoZK6-PkFC?*{FKto5tQU}<dks(hDY7e zUya85<K58`Zcl2_=m1G4oSLp5lOD%RH$z_03!h)`2LmazGFJ`+iU>W00}QqoFh(U5 z_I3)fCvSpLkO+H)?~@-H`}}!1@Vqe~6-Nv>$hb*}RUVB()kzcIXv>RX!ILKas<E4R zn|Ex7{L`2`+t_a5A9(UAaG~<sj$uyFsSA1u8-aAD=#XcD>?#Y8)jb>rWA^~=6v($U zWv7;bzCwQyw=J5D9yuaR>)f;J%XMt|KlfcEXDhZ1Mq5|NV~=fprP4LWRr$)+$K<gU zt)H`l?6>UT=ltlgu{Ty{aMm<?U1Kw27aTkK<ZbQS4!+;DoU!Fy?;qUOe%q7eP#!A} z!HMbgc#iM0T;TraX*%D~lOWG#v@bpV1NO^<OL+qkm{@x~L>#cPR0)3*R$@YWTsR5O zIA6&3uq7mxJGM^9vKoEz&eva;clwN0t5JN%h%MXW@_N4KSGXKsT6H43YU$D{@tvxr ze8cFd?$owzGFd;+so|5iQjSx)d+x!UG@i&t8RFUl2M)N;WFt$Gv>s#A2-r`dRf$Bi z>AxOF>X6ofSS6jCQVeH>63_Bk5f4s)J_dd<Vd#kqqn+h@UQ5eZVb02`iYyQ1o5cLa z;h}41Uk~>op~SgAl^4$0uxL_c;p{9-qi0y?<J}9BCA-bW>N@4$dG>VPyZ;IP+7B1L zH0+AXb|$CfMJ`#pILf$q_uUtd_-ge+T1HGIX8whfFFttPFP~?DOJ@u`aOZFC{&3Uc z#a=jNOyaR{(}54sc%S$VvZg_HCpz$Th0GxOa8#?DCEGdhE2#WZ5~D0D1?v+*oGL@y z5~4St@wFK#p0gJL<uFlZ&42D*MQXDa#6w~B_wtGO0&7D2v%NeaKG9_M#F^~*PGdMK zH!5s&=G#qi9<wPiK7sc>8!tbqFgW?1{-==hxP0QN{{E++<P5ifPk~49qWsY-TerT# z5?MJ*R6;L))Ba~kFhO5crB4VJ=nJif-d{02Ca%~l=D7E4-n_@1BbtljVy3Tn|B$s% ze~ZFe-EdA#RA<lDSLBb*sZcKdhMg4AF!jLS#4Dmco`L?wsx!Wia?#{8WT_l5+{*y= zddR3K#{Q`P9V`>Ft;7OwL)25*Re+~}0H_}6{CX*0oRXs#@+*Y&tIGCWw(8|;cD7%( z`BrA!|Gm`Zm6GqX`1)k_`wVMT-pgz#XJ2RMzOIw+u3x!l?^F9u>>b`S`DOn1hN7`w z<d!p`E}z|J+_3GPn=Xs&yylhFy9X0k{<52srP}35Z+Z>U@^4~_>H@!av%5N}n6I9m zvS)bjSNp!dZ_o1HYhK1z(VlUf-X{s&m6#W&542T6n!zXlB-zx%Zsmv@<^mME79>ML zJ3<oTRfJ5q56-ZXxvvUpnY6y0rf-D-%|-DMvaFOmCC~3m@+wg=38g7Xq5NgR@~os% zlhb1CF^h(+A71p{r}D{9?rCqo=MyF>cXrLWL~$buQ;TKC1C5o*G0`w)>7%&%^hp`% zPFq|?O75ft_f)HXp&{OU^dVM<;wBa=KYGqq1O1V8N|07y+)a?xn6F!hKB9F>;pTuu zgG6>AWXypxT=3$F|H{5PfuwtsIfqT6p!g_fblgBT7%}xo@&{5J>HaLZjs@h<gP(aw zG$_QrGrD^9=qh&k<T|^24P-(DgJmnbxh~FO3xty51pb_~Bpn<Ix53~_iL!`=KliSj z?PGTuz_2mMy?Lu*V>9%YqV%e4vbA=;aBYfUvbgnw@=pZFuUNz%ud1nDwW_*iEIp78 zsn<uW1}+$Fd*nlM+0op1eSDm4azYee!H(SeeryJ;{BptSj&*RB$1X_A9{UH}K{4Cy z8;+Hit?@M^c&t8`)5MzO`$~)wmn=EvdtspyRt`<Xus2}Vd}z{%iNLfLP|qc>eHMX_ zOssGM6bn=xAm$numq;aA5H6YM&=B$gPUVSqYj_0A35IkspBaRNOlh)^@*l)_*+1`L z!t%(vaBx-6*t5)Kf5+~Ue^q9Vmj4#xvhjRVG@E003zJT~Ab(+ZyY0;SBD;<`5~t*q z`YYmL8HL&7%l&ydRY_6&al}`hiH{qPhc<?izFbW|9?y6(Gu^&yy?p*4duhx{rB^L* zWJK}5+1<~}7yc4+=&yFS+-Aw>Zr+qvu&HZRLV_`A)#~k&iZ*wwh>!m-<CS>}4xID_ zG^|!*hXR=*3CtZ5mh)o)CdLgc0m4fdEPG&&LCBw^P{FgO_mH~-?9zsr#KP#mvO2hc zvxrHAjG%kK*wcGJjUx&SASDKl6_f~UxKWN0g>ATjcg2IUFv4DDhIegjnoVz(j4U&g z86~scmKM9#o8d5-jErZ*FY~#vuc(+mH7P|el=%H6<q1=V1)(}E&h1-vINtBd%p{+G zvuDRV7KWd-fdP6taNrhtSlQgXk{)}9hkLKLtlex93lfZWi$#iYC5fZ3>I9dNlEq>- zCKQOK&1)^5DOO{2RMC>MI;)}kUHOZ5ySHYo%3v(oXq_V50rfescC*N3;p{hNyS_($ z<_6j1L5esaFF)`iMXdS*)BRx;MfGCI`>FhUYz4v5ql<AA`x=$jO##1+R*9)ti^-o> z6V~H?*!<h3+oih-9{q@*QnhM=8QPs|_jBXVeLkIzw!`S}@e|E+Pddk+|EK%E%FnoJ zx%k`4ZLM<U>H|}6V`n|7DZcb6R+jmIa+B5D*-w%hIi}vUr*BND<zwsAvXv`etK4Mu zre3wUvmQ>`6?@Q1GX~hzUw=5E#tG_8d-|q?Y7r{^tJ9yvIzVGg7UAc>DpVJI{$37J zKpTy)c84=_2JI+igw)j%EJDmdjF=*-sZBi{Y5Ne1L-ndKJ{HihqBxqi+G{X96iGlL z|G{@8Be)RJB-ucc0UeJ}_x-<BcK?f*ZY6fC_bCtjV{b4cJtfKS_yAMNAHV*9w=^Ry zJ1awVsem-&z8l7r^sE6lX!~4(+bb;N6}DTU=Ul0V`kP?sHYynND9bd(#96HQ&ebn_ z3{Gb-=8v~4Ootm()<eN5-Abn0r9S8;wJtBpN%vRP=D@}{xH9W2nwJ!36$YEjR4*#j zCe1O#drFpSiXjt^bccb*tBADoxE>rqMQFffI}}py(;M-K+BG>`$TJwnFg_$_(V_dU zLeDGQZ8H51d<H5vGYF{^bSrQj$a@l-1+PZIe{>)NtVcac%BMhudDsp>4h$Wvc*%4@ zB_<3{JjklBxfQ`oWI|$avv5WXcfRUy;5Gb@BO}I239C$V8ZsbNLdEKfQiTN%)(<qe zBtpufaZ+4VRc2^*hB>V`vnnc%4~>T=X>a7EQFGF(W|S5SHevO_?5Ko{=$M%3jD)D{ zgRAvU=plb*cVtH$vDiI7+ZVNeOUnF!A*G?{ysNXPic)d*;@O3vp^l7r;epdB;?oO~ z;?y*vF{5l^s_1`H6|*O@bgGM2bJ)b59V$;XrevjsF4pc`iDl90@lh#JtZh-o>?o5d zYIeq=HqH|^8`4>|x5T!IS#D%eZE=RGdGV8`EsjD9(N1%LIS@VjeEBG)kpFh0{8^hP zJw;8yiZf29$oLm!1Gf?ltM2PuuqZx{B-E7iYs@JhQQXAA2mQw3r&xPZW+JwBFm*)p zlny~C5zSLD`3o7iGvs22^zN_>I^cC4q*_4q(FB3rQ`|0j?2=CMIf5W2Km3toWM!vi zlzI=WCm25bfy1AalAaOtuDWsT+2dnRS<|d{TCMtOTt1GUUVG81S8Zwhs0QwPHSlL2 zl6yOPQ0GZmbFeV0cu8}`dWEfdIH$JCpPo~+ymb<0&)DTuEJ{tY>h-wVK8~Ayeb=g2 z!F@Wz4|c=GODFXP0G$2^7||CBNkB(Kevkr?=O9%lQ26Ma(f}5Hq)bnvvkt6}G@~@5 zCpaQkML$Sj9Q}2!bu^*H27(Y&q1#d!Y^YE4CPuN}&a=hXR_)?K$rrKtYxmE(`Pw)p zdhD|ca$}N`J%-q6Dd`n)9m^K(T@j;qNrGi#Z}EI4NT$cmQqCJos0+Lpu)rd9YxVMb z{q|J3!hW7)oXb7OYd+RTUGx2>y@&KXZBekLD7MHKhskO1B-JlWTi&yNZ=+|0$Eu$k z%}m^J@+>tyP^pl4lir0r`Z&<3I4dJT5Q855Kx$qdKm#EG;>&`pqBlw}67LtCL#LKr zP^n6%fyx4~<*FiG1V-UfAAC0&yp#+mgZ~~%Q{JqsuAZojX+>h9)otd^YNv~T;V|kw zjnyf4Jm%1wlZ@WA+aFxF>u}bxu>V$;T3G1A0dHd{&m$Qi&%i$XYT9{E^}!V4#yOG@ zxn-#*#kEy@H8v^5;jNVaaasPNc}0*Xu$t$x(A-sHcNlC;aGKT_T^V~)Ry}at+B+@{ zjds-~GH+I3hCelX>Y9z~a!p)de>>iD{Mjp9Ci%J+`P&&nMU~C)1Hcf&Ir}!q*G++s zxLxQS5{1Pd?SfIV21sPH1yE61Ks!KUYfG?<LlFV5<W&y7)xDv?Tg1UBSI-PnfQ3O? zg2{%Bl!KA>yMm_;z`P__1pOuD?$VxJ=s`*pE`x!CslJ5wr<Cl?w#?8M`M``kV#=xr z`<W<L=TyM*bQXJJ>>oJ+y}lyT%s!BB_805*;dH&79sLC)5WEie6Y2K2gqSDZl`=kM z0*kfyQf4Jw$@R<^E!^f19mUqN^*m>9sQUf1+|tZH#@W+S=f*-K_N$nf%=FprKVRyI zNz0rU^-RQ=91A7V@|>)4p(%P_cE#O=ljT-lo>=ZH&xX9AZ*opnkX1|7Iq3zH*P5qh zW)$#snXJ%ufp<Zw|D_8uxgUNHB$hHS&TC1$mPx#zhutCnedet9CMAZeite70yU&}+ z%2OA3Jx-r|guRg7=!%X_lUK6^>GPsoaB|xGLx<#c9?O}`6n}NPQ^}BrYr$x(!G2%> zr!KVMK$Rp|rN>f;J5Bo(?6!P5qU|vT%3c)Pch0badE&A0SC%xadgP)DLtKPqj?|r8 z?o4ln3%Y;A8_*G&Kvo5>0)u2`c_B+7F1@WH1_DY3yFQvf#;ko&!`5i?`K#NYoc!vw zZuhEF-$IndWj?=Jt~XTX2><-lWSdk0{(V+nEIZ#~zf4?zEI*C=4Br)kB`oTJhvkp! zW~`O_65UI;CT1r-cp*$5nG6r}itnyY&N8{3ZmY-W6;2F3Z*!TeoxgF(pZq>$PRf<P zu72L;HX&k@5H!SkB{?k55U}Sp2s0D2^Tz5#bH4sZ>|iJ)<Xh#(&F!oDp;i?$P<_|x z^-u9h*@;`1x)T%K7d{vz8i>rNwdGr)EOmirSOj@aI>%6ZNkal&y#akd%Z!h9PH=pX z<p%Q&8l-UZl;z2a@k7tg1+6!b3Fva<q7V=%bw2dX;;-HJ+u!fK_R=q|UANR{sGWPq zhaa$o$9%OFIX^vo*q)TSXxoeehfr2FbI0=Du|;#=o#EoS&vmD##TWKZTAMH{*0+Iu z=k3Ec-+cJ(YyYt~rK&pd?|0t)$tQQOm}|>unSE4#rHx6xEAD*#{#Db`j(nTHb$rq( z`SIDCw`IE4UK1Cdl({%QKiRpYvTI-Ol)2E3n83%6*X4lQTMw!im@x|=F;1LfZo~Bi zz8NanVFA(DOnN3USPvw4gNFtrRu0qgkpyHaDRvGISd351$@kpw`x|c>3KfXn$u&2; z`YH>)`XD!_1eR6A#F*dni;b15*+r!}i>5Wk&f1YAUQr*cES(1_$e9xt2lm;#X>q1N z^~f!^j11l7%FB=Wh5XVRZ?du2qN$s&8EW<jdzf>$xAD=en{wJ`EcLpk)nsQzwbcYS z`Gd1Uxu1V+O&I5g%~#~+ly9P;rmZu+8N?k8GcAjx>r1RXidKDjVTGVLT0Jn;=%&b4 z;Rg2DM0S{X%2U^#WXLMY%5+<^EuvA1%GkN&g*j1>MX_d^W76@)P`%T088<qd)>3<V zb^i36ycv1b>Go2a({ALKF?KFD>=KXUSYGYYJ3Q7Tk1Ni}n_TnL=PkP}eZH%SJ7V22 zNmh?T@7kRtc?vyJuFI61o{T@EJ6rOw6X){5n9c#d;0Ek*S7H2tlnGpED3z&Cv;vSa zF%Afdu{fd=#`T$~KS;8SP>%}g=rPh(qP!r9DH^uY8h5@~kzlghqids+!c%8YwPtRg zpBPMh53UQm?!}(WIA2w`YGpXMVoJCwB|bBDQB<7UXm}4v=IzL^PMtF~nB=H+N83#a z)$d57Y|nX>TZ*nWBxEG|@?BYpj>LtRrdlofq=r;Wd8SR0(sQyC60&pBCCQOlX-REJ z(p#*)-3yQ~%bk~!kQr~dvUqFdWm_=^&YauN$6lVGU&EvSYZy4!f`Oz{;h+$3V9B;B zaIj<P^K+xYK>;o02H~N=!ESD}J8h-5^cocoYSL{%o5NvbyP58+$p9d*FRvk~X$=Ub z2Ipk}2>f&XbGS231p<qmfS`zgz^np+$(1K~1j{*dfe~+5v2{&Y&n~It4}d%aBH&dF z+-@+JBxV03=!uqu@KzyY3WA{^hB;b?DIj^vszeagCf&4w+K|U1m`lBmhMGoWQKx*5 z{Oi>}FPi6cOn+?AjyX?&<~CXM`ez-!(c^n%-K7h6Hs)HHe)q>mS?`Y}S4F6yJZNv{ z{?h5q!P@gT)#`PHs~cwK7U`ouDNLH`&)28CXumgfp)=WFNSN)*w59lQ;%<@eNHWB( z;4HB)EeiZSeHrV6mm!lQtzc&11LE9u=UrX1aMP?*^-M*vpV|PLc`fWelWZH9{J`%M zerZ`{23RdQ^CPZ4aQlQG&?DU6o%IWH$X3#vA(W62?Na2jp^HF=uF6HqmHu?hmG#yG z`BM*eOqoC5?w{kg&zn`-ad1+}gKuTIj(s9YpMF3I3a1?EsGAAop5<3l9GX)2z?+#d zNRfO{{>!0F?;Kpc`rtd84l&!onPdH9{rnpK!?DR@lcgVy>BxTpA1z3+&zo7_acD}> zgKuYgKKfj*|Ma*k`|StwY7TWyn=#*>3&|$?{F!x~hbaXr|C3(-$p^0Nw;n8-a=5c< z{yck1;SuJ5q2+fsZ+e$3HamFo7?&?%+qlfOefbl1lTgOs9qi<fg;g+FUd@ieR{2qN zU!qfVuiRK$!suVP8B-4nv7v||k`mnC%u;688%XUHc$SsAplk=tY@9A;mBDq>BK}bP zSV!N%Eo;293od`*1>x8KkdwXXWuZBXda7=zaJ%IXKYCJFdh$1!Mt*y1V_f6{$v@*z z-^sD2{Vr+7i<b++<uAVb)fZEi^v_vPlFFZpzbP0B2l=nY9%WygxT`E$v@f|lsV?my zpaIp^yK-J=0M9QKmUSzD4f}MPbyw?thxZ!C2iqjbec*V6&?D^wzTsiw3veMwIi4_L z8J3G^FYu!JQ*JOd8l6QOG9Xbk1tHC_YM+jXF6>jV`Y20{@<zePn2!?a*Nc!|r!6fV z8!I>JRSICq&Z6Yl^wHK%S;Vm{VXvZ4>(mBX$~nkA!t_dmJi_9%^0c(_i*qJt=OiWP z+?zc)Cnq^6=Q}yLPaeN9>tgwx`_Fsx>V+|#7jI6UQl9K9!>`YmT%K5B8@Tw&8Bxhi z;p54R9^BjCYLgqPTdJqFP30rAztuAL>ayZh?V%MJ5PlVBFJa!g$(8b_tHeopS^;G! zq^Nvl&&D<3;D%|wtQE757RN>x)b!L&^0>U*EtunDoy)$wG(BO`vPBh=)dq0!I}c{Z zr5BW~6n|e?R8(2?)#AbAyu9SW<otYG{!NI#bmWDOdyZ{hzV!aLzb(HJsR$_lQsUM! z*F&@QuD>kZxNYBoUo{l-2Ltox2TJG9myfNxy{BQ);oi>mE`510-d+FPV88sw+UkSx zY%s4{&0kks-^g4k>kNfQ2g^GvF1zW%#X%hGK+&Mk@9w`utges@Qk28R^sz9avHSDn zlE#U9_&CUpkd#0$3$77pXRdG+A+HS>aAHI;VM6I}830cLF{KlU3}L@sKJW|c1&ytj zU*5WAa%a!}Bgc*%x$P%xMQ?8({;}wDNC>_uHRX~yE3SI}s!5SHlCOAu6Q%288_%T< z&>TfyjLy=t@Bnotz!;F60oD&mrd&BL(<{=?pc4Rg1Y{n)uH-wn&Xhk~a_cKcrp_6C zWOUBdr>}2qwLce}yWFzd9q)&}>f^=s;G|;tJJRyFf%;XWqpRu%;_CAqJSUoyvllx1 zUH}<a3RS>A<Z9hMoeus2G3g`-85>A53Fm5s9PM$y8v{hG1t?dc1>}<q&7esD^#y3w zr;}MaBqEgtEM{S_0YTCbRRjCzC{JCiLBT42S$1r3vlvNeDMwT!x{UdXOEP>O1U%O@ z`h1N(y~$h=A4o6sT(IawV+E^xz*Cty$FjQi(2bJMnqZGHvYerTc|{fdQL{pBABPLm z`V_+@>((5s?YLt_#m^EG@^<Dw6NkO4v(cT@ZGopvrC4T!7}mUmzJ}DMvfK-5Ctq@2 zf3f_5d;{@{*lqUOq)EAxt20Jg7cOkQBfYvLoL-s$(z`Vt!eMaTp|{OStIiF2FJCLJ zoAzM+D;Ah#t35P!43gb?i&6e%f04VqLLZ1O^O|$3=f`s0!*lBXlDasxln37R3Z*Ho z<*^xi9JRAh6kK6Io~CAzxwy_6su0sGS@lH>ayI-(yx(4*81yDu%FC@$8S$Z%8YhNJ zp`~;R4$V~dPG`0O5dH>X04mvw4)m}Lj1BP$Kwj7dAV=`I{a_A|5QCH~2C4)D)EmBn z%7evN71PkL^|n5#skpJSF|b<SciYy6hL|d&W$dTSu+Snvs5{>By8&r!3Er2im7X|g ziAS7ZSqK+sje&V{XU$zuyigcCSx8FM!s`x`p)9I0v}Q}AI3qPPGp#{t+_ENA8C7O5 zjotZ!DaJTU5QW~gK%lp&GlZSPC@W}*Gfw$|adKLL$5Z5+O6vvj-PCU_fxmO?zyV75 z8XTSrd1O{!wPc}r1WXntL63%)Wq{-1io(Zc7E&ro4K!}h1ZXDk*sy~@e<2g~7_2r) z&t@3~bKV^nidnhyXJs;$Icr|NU)p>}78;vrOt7qdLz<gEEtav^Y56b?&C4wD&##=e zN`6ad%x$3PhTKNs?H^Z$>;_UBRLp!(2j`r}o`(yqxwEOv*>ejs@{S*0p2Pb~@x^Hu zH48pp!0Qd9rig1UN>=(tG|jw4tV&5sOQ{l{&o>HVe&NWX@>##-waMw}$+i6U!zBT$ z;p9594|3nhbxNlnDfbVuW+^$nBsR7rJvrmvM-~#e;M_O{Jh?vtuZ+tb#p{w`2gr}T zXh63STn#UnT$x!C^9ork6B>4Sb`wJ$FeC|?tPIxED7q{QNAi%vD0A>E16flmB8hfr zD)>WLegPte{;ct9Sthtuo*0*+=pExF8yjV$%Sxs;Xd{cvY}QL@?|@MdZGj5yrymyo z4MgM=JJ>Q;H1Q7DE||B(Fg6u#apjN2cE@k|*avLHC9e=}a3AMa<DdYi!w<P#(~aUE z42BkiD8DCi<40l{H%wUz4<E+0JNP<oVh>0Ho1%B?H(n@7TO|ErL3%|m{Y~T!xA+4+ zd+Sec%BAoA?QOR6O*Z|fW5?fOFvE6B<7e}k!z2V7^!(6^>}U6#c<2wee$F>M%O1bw z<dYv?+0`UUn^wO+`cZ1hh$K8INsDflgg?NK+ZQ5>GKiT=^{mMt6|@=I>t<mWyB^K~ zOANx4C0u{rEKw})(+d|0!Y)xixJ!`u^}xCcj4L!;5->ls>ga$z-7b<L3s|8bZYbow zU?)dmiGWxEHKLeEP-I)x!+j_*VKGqUNk{<pOh|mdl2Y7Q3b&r6MTJGB$z}S|#^Myq z;wij(%HsR3f9rbu@$;dY0rwh!RCvcY3Qrm&@v-jomE~5nMWz>ssm@rlIo6pf7EF({ zRm^N|<~R0ScU@2Sb=S%BkJ_V;QFaO0p(3RSeUEBa?L0yGMiV67R^ZeRI|1d44$B%a zmPiy9Ed-#WCc*z)pbEB)=qu0q7VWFFq!Yh9=3JS2QB*&zxNv5X&uN%nJ9e~oKC}iF zgd{^CrXVTDpOaJ&6W|ZIZ0l$ijbG2|1)J*>^ng!P(|ZxKSvVh`+Ko?^A4{7ubH$vT zx{i*z;#KSC2E`PM*MxswO9~S)?G-o8>UCnTP+^1?NR=2@%})+=u1CQyPX$d<1Kq+A z%vs`_k3#@g0Dx=aWuOH7=&5nj+~KJI;aOdBkq8SjGNqmgjW4?p6wyWJG*;+~6Y_I& zbMq65^%add(X*g29bUBK`#W}gUrd`QN+07Gd(jaS<KX3vn2GTWtBHI>u_U1x;E<0H zEa(9dY{_VMYlWETaGOkSN1|BK+C932Po=_l$iJ;7aH9*0Mwu}Vx-iR`*m(q*>n6aY z3Z+oO14HrD=-2vh2YOHi5-^!cm8Gr>YIa=PT`1%{fNk6!M@R#{fA#FbPKml)6~P20 z1`0*f8q`8xKe-Wgv%<12JnQQnyXU{?Qb5p`3iPpcN(X5cJ;>$v=-S#Z(JNZ_zB#(& zYdy@KRJwO;-RX|}^mOn3?R4D907142<rBNuCBA$HACS7^gteHo+Ox54fO=D`D-lal zkxRqjAUK$cgd=EIKg6)Z5U%w|fAMVJRQLERkJoM5?pe=f!N}*V%QR_Y{=t=>$qzqz zTB}j9g!`i#Uv|z~v}l&|<r@#&e?NZ^>IamZg&|n@y+5C0C-@AF;Dly%K3Yn4d|@i} zw0S@>)vg&21d}bg6rRfie$4_Ve@V5ydj;9v-77!*8A=y>_n#4K++X|ocGk1~^SiVL z>vbec`N;R6hI!SMe`d3l>?fwb{MAjWtfl<XO<%ptrjL%^thM@d-zmHhl5Byt4Lb|v z5d%*VScmCSr3;}<M5m`bOYh5~(=$)0_(0K;HMRLKUUBm7D_+d6U9+TU{({|4z4p}Z z1@d7{7CUeG1qZLaM!xu(YY$$qoPTaFZrSnk?Kiyl-VNJ-zN4kse!;b!NR3RL*K(Kk zF<*UfRr_b)$!yzZkpJ{q`&HCd<?L6YeMl6rQaZ`?PMA%ez*$p?6l#_AX#!aVX*0AK zQ-hRI2)m3=g$3n}?=+S#$hmaa)4O&(&2EN+0~=X711yt`v$eGZ=0_pUxDFU&>FCm> zqdjdEvu9U88A1W&6Gx<VUmXFoN-q;tr7kuq&;mjsFQ?%Gk}b)Dp2=+R79xaCm2*gJ z-__%4T2B8JIz1P?LZC^*oaz^yi*6N!svrk+#6)pBk1*;;t1qg4th%T^%`r8f-JL&m zR1t*{A-FlF%s-BAm9a>w%8{gnN#=VHsa?*bB4?V>_AimbaQ4Kn53gAksICqyTN5su zJD1&}$mz((kWj;@r>z00&nlWd6UqA4QPPQ1{onQD=~bGSDuBTM6;91O2d7F3(W2s9 zLYn8|T-Uz<Bv1#VQ}gAe`BNwK=Kp;^j(!P{)2kpi0e#k^@5)a1BzsHg#jzu&d-03Y zp));qChp{e;<^(AmS>|(uGlC$j(HT1b)7sgrKj;IXEZj>WT+fM&LD1J_OR4Ls*l*q z(0*St?x?Cn66Xlq2=RBXfAIcmuf0F3!jl#b&CDrGE$O=Fk~`|^*v=7bS7u(Zditi- zwW-ZL2jmZbwQJY=ENTCiKfZAN(wlb|t*M++%RhlqRfYV#{G9wl`NvUtlN<7qoXx9x zBKzeX35|WLYW%Zc^=lYDzVEu5<-IgK<MOAzyzFWDN8JrGXOH892>1gx>U`KST(A29 z7zKa>5}U&3kmea3T`C7PP8?q(!vL&C%aPcrM^Mg1kzT=ZU_koGHY{==3Tvr$@}meu z(76{7H1?;&I71DJE<MRiU^7P?a8f96CrjuPOiSgNNlxqq)xvQiL_AGMb3xw}oeN`_ z*unhB7sISmTR(U+YryaFO>HUJbY5U7kF&c?($w^%6EDR3)04!Cc>mjVaVxT%7K77Y zh?pqBk>{-y%(hC8Bnm!1{Hf<A1t8BFtxwo=UCH!@lDMP<S59DZ&g85_r%^8$%`o8a zP0ThY)Xtc~f4<vQId8GgnOr&F^k`17vWt5xE{oCUYPhgvos~yoQU%8akk7xAErBL; zSAr{HYWu<$zLJ0U`jX{Byfe;oeiD2g;m2q0Z1pd2o2`0NZeU5_oN%sWEwXvy=Qt`I zaWQcfFkr!plQXLd3#&3)s`A{D#094%@0qP-TY7so1w%Q-PLtK0<SH$lRb31tL#Z(y zOQJV!vAbc;kzMkqzwtG$nUaF@f<>0!vV!feb#LkwVyxaMx5<@y*LL}%dvho98^~G} zG!Mgm12%DxTp%-y23ElgP>F!e<8u@r#M`blW%*7XNs4jC{))30i@_o{144R^Rr8*2 z&`0<U|6ab|DnDdNj5ADQu+Acx<;y<ubl#T1Z~P{O0!%EJ=b?4Vrko^~VqGOG4BEb; z44UEKJOLm86hyo!Am)Q!HsBasU~C_J&}j9L*3I~j6J}|s9Ib2^t)GnG<oYLJzI#*^ z@*7pcqeqp0r2Ia)Ek@XLawMj0^4y&Tf{vobbOk%-?s)Ra9goXjGQ;DKZ09e~(^$oJ zwp&%MQ50;b(f^;fo$nd@|83jZ9{K-C+e4*fZTJ5z%<S3oe*-a^ze)w(O$vQe1nYvJ zB*)<$Ysr7#Zov3|0_pQNY?%LF!?=@R+%O7ICr%Stt8aiL;ZmFgw&TQSqwYf8PTiHd z1G+<48zDTSi3ftw48#0%{!f-cl*4{6&dSM|CMS(y@ajcHD%j%&>p*=TzY~ufG2^DI z;q(2Q)BlV7<N5SjzVW+sz1ci=CCsEPG@J8hxXNd>uRm}~M}+kHr>C!dWnn&ErK*Cu zE0x>r%5_Y=!9E*3GS~n^U_5eSLiybZxnwPulF6?oQ?HO%i>G#=8S&=)RljeYeqj9x z@a&1IUpOl(sV3iSmhVvVt^C?Gs8pfKH-G)@yI)IBZS@Byro?W5#*<K263$NwAh|O| zHw`v1F3|1JU7_2rJE*%&cc1Qix~Is3FZS4m(<C2}16ik^u<sr}=L;+26At*byE<NH zp2y=S?${@R)kBNB0u&@YM|?;yAJ2eIz%yR{c>eMGzbgOS`0-~wIj{%qH??L=S2NXR ztHxf1SHsR<bmBtgTBuz2P6(?p;zE^L2N&(Y`kpz3ojD$h1=gA5=ari$!<2|KrrFXl zsJo7SE%)pHHb$+D9X)#2$g@PdZ}fQjqP*UyCr0i%%DzKwi!PjSRmwUmX6*F#fRC;} zFwbT8o!z*?;Xpe1T!OiY3FW9|F8sGKYF)}6l4Koql8m*v8oGWP01*m_=u=5KA9Iu2 z1jw=||H*uL2Ix42Vj~)o*!-aWNL(}wc0Ts=<D&gw3o0j4P;n<ITbyoy`#?t;bjkr` z9p(HL2T#KBsFYZbe9{vO@#&*HS^n!gMx+!(Xw@8k<`MbD@11}A<|f8|co>pw0yA>v zFz!3P#c0_0114N`D=T_$``GdAPi)`*1iPhsjS;ks*I=%!9eIAkj-xhnU5(igD{-f> zshbOzynpf4|Gb7RU)uk6%gU84Z}%;`lj%N}&tEE7O~uhZ@RAp>z+(@yf;-KIp8I}x z!DI5P^955(tf|OqvWk_zW+iuA#iVDpn#>zsli$mvI=7$FZGCgP-e?YHo6X_93;UmF zwmN>eWA&Yr&E}k-$*7<8?giVAU#2(g{Ie=s13AS}aA?3%B=_Db)9(y}j{!}bz<8*~ zJ?g%B6!NI+Chq$f<~O#PjBK3i&fUL_9~G&2j~%7mH(fB+3jam%K`7{~!1cNu7L~(+ zy=h;dw&bj>vBtMm9KnNrBUkX)?+a+$*pYEY0AHsXIp-+-6y9(hF$h$CqJVmdLqK&a zaz)CwldWB7-owEOwgIH1fMZBlS);Sa6aa|k1qDt}&g~oVTYJssk3Tk>_X4fr9*@9T z&wOZNx4r$Zl4;pQ*Tg=hzCoX2Y{;`c@qPYdySUmWO6x80W2*PAyVU04t~7VT^GVy+ zhnU@kPx*$lr}N4$i@LL5fcjI#@d_-FBkZq{^@S`jHYmR$t@{QVp0)EJjtpP>CVHKC zwK@aG`T<k;=#N6!kN%<V4fKg0<~}@-wjldSkZ;4r%?-C7inahL2>{8vN%%r}=W%B$ z(_Hb|gBcG?AUFkN5Y~VkE(GrtKO*q7;wN+fJOUo29}*gAigXo;osss59xv!U`MCtT z0Y-7tL3UXoH<G9z{;ZqrR6sUVoNd1cHI&I+7p&q;$?!N3uAwtrmOGDX%no4MwBE zYcw26x2D_tR;zm3LQw{z$I14jT^sfninHcc`?<&9(%S_|Fgz!CeQEma<<nfbRx5`e z7D31>*PGWbp4^j|Y{)20DOhSxob0p(vRs8Wo6THMV&gai%S?{*q({<HS3croFfSI9 zmzx7&R+BHvTOOMdV}n!S?DY~$wAsXDNVYq;DV=-ba$R<ttKj)ZQ<iQ_DC+K<n)P=K z<U<&-hZGNNbHUJ@`?;7A6_p(wC1t!}G#WkhNuGu2Hk;p;W=pqPv#jYGDc)#wdRA8F z`4i{1EOjSm@ECoJImY2}$I8*}B)i)@z07H|Fji3D&cVUa!ocDkW<zO7Y1^!@L#!_E z8H};GV&kFdpNLFJqLA3MCuH|Hdy5Lw9-Z#ASfk@AJyEVH$y{$@l0$;)v7F3MdvV8b zQm$Ta2;@wiR9BlEj*m?a`}2L4xCfbOU2t3Znk9<_&bE9L2<iyO0S^KOrvvVyNMD$w z?n(t0<N^UHVB!%svr0r94jB=Zo+^cC++q2Q%*2P_ycTi*kb}S@@%^~I;{n)}Du_z$ zup2s(9FxP#<bNz%$s*|`Q;Gt)(Q8)dOQpSkEXW_bT)uQ$T?xZMH!rH+#y0b(_xw@s z6s0x3l%)-0zf5#UGsiaIz*XP{Gp>Z?zGt@82bgi}jd`<0OI%h}?mL<C!YOe5Vr`GJ z6_@etZ0}#D6xw3jtqJvGYgV7XWdsD8avq}ihl&Cxycjh1B8>wImJ5vIN5RxqA_FrH zs@2572~8G=#8x69z5(NV=>~rmtP)1KN?i~;E|k*J)1YM>DD}XM1K28x)<y^k${_Ud zb$yi^7~_)BZZcu_4qrvEuW5nldr=VelHQ23*c0z>-O3(Ze>l-?J=9$=Cy(7F3C?I= zOiomcQC#KDxT_pC^QMT7w4}n6kv>CmQNZ``#3MQW;Ul8Q=rkAw7UD+1DS2AAFt5=8 zA(0!o*<jI=g8{uovVY3nfse6wezk8VZsjl~Gu2+_b;dcZl7NWP8><fQNb;pS(r%Em zlQX6W(G!t2))h%te2N=qOaH`*76bm>B50lJByg6<YMBR82m}id;C2x<VRX2lh-w<D zpjDkL82k`8Ac2A^PVl7=Cz3vkRIUkmAQNf2LD5~G?$Zen^o2hgyz&+b5Z6FDj_r=} zA8;4WfDMgkag$!M6<*jqk`i^OmMxUm+!^N+#KoD?*1WX*Wa-HHKbPM>e69S~^~sLO zw|{F_PIhXxNfa*p$t_zOL`Qkrd0#$!O=hMi9nQo;ugPP(9?98#=>=I?S8aao(^>ZT zhF`y0oHk=sMkaa7nFW=1eN=iTkVoP4?m&{jrHbrYIKMKwrruJ`EsJt?C59YnzC*C! zQE}jx$A82GV{%*XJ<Ei&H|4kZq{KOohC>Ultl`DgiwiySp_^I88y9q~t86c=iP4J! zOUleNTViVGPR`iymr8w3ZGBv<)8vY4j&06#i|cM)Q)97u{jKbLX4*CPHTjQ2sg`&c zEnW%xe1QwPR>j9#8~m4DwLLeN$2j6+6B4ZEl*vZl{wrR(WvDeV%`t1Tf8LPXfbq*b zW!1kU{S_xw#h^f!DHf-&ED-(&wMYUV2B<D_F@vbgDxpjt4}Z5HH4SbKkv*_ul>-?j z6~eSPWM;Y7&#Oer#)Pmg3sa{oS+olnaA``?^re-%BGFb@dQ7QI$e5a!8S92~PqrcW z%%9*w@2k%r?vR+n>=#QrVX2g@V=IT<{4WbG{r+p;zjT3mV*@q6gZa~+$nVMWBaO)= z(wr-w`rxy_AAe<bYUO0B{PsVMoX21A`lah)ylvNfaB0tzH@EQ5^Y5w1N^&Q7&5|HG z%(l$T?2Ob{8yow{wkMinOSd0o-dl5)<!rXSChwHx8>~0qngDl_DX%?Ehd@uOH~qD* zwHg;Z@OSyv7j9++e|`O1ksR-mTZaNy$`}2WEw7hQ^6Gt0{p{86?_I%@+xEVSsR4Ns z&@>7TC3|*7(9tHD?tbWIUj@DF`(gVBa;IdW66dL8xw7<s`%G5MfNC`<F<8=#ag+Rm z;^UU&9&ncMzj{78;4F6H4;DH9?OptCdG^VpWHVK$&MpUG^gm}&iUiBg>2&(=`%gnh zzCs1%*%DQD!bmw$!sq|PoyLagim<*d!1{JI(VBo(P%#kG@j!@A$c(}>yt)?AcAAc2 z@J=zY5+y+c4O{4OQ9sO*D%dbC07Zs_2{OW>#H3(>#ID;VMJbP904q|7Nu-?yy<RvP zCfmo55Gq3|MSh5?!!na;W0_&3&?n#Vgx6-X2fR;|*#gsT?ed>rbMn~K9OnSo4Fk@c z)L8C(P5yJcZF;~~_JlV8LqFap?nsI^<-%FC;u!KJ(Ug!T#wSog@j;JP4s(1%Im~fR zISKJ%T7pTGUs8NphLdtl@$8n=Zd<7rjaq-iUuw=|`8UZgd>Wmb;xa~$zD2TtZ;eJ9 zT`9TIpR$UZ<To<SrT!!9(JF7Ltvgj;Sd^--I(QI<&GU05Dyh(JR|}HgxQSJKb3yV8 zH?jP)3zBm4GZ+=5Pc15>aXdqZN7Igq5s^!a3Kj~lCj;(!JkeM~M1#cqv_}Ts%8;Hh zH12(EWca<?x(o>YY~)7fzL!mxZ`r)XY<Wa}<B^kbY?Tsb1&`dpZ{STEe{plfV3>E+ zt0PLtbgAx?I7Pm7M1JY^N97k^h`WTX8fIm;KgP;mi1REbqDk8un00no0QaC}BysLa zx3F|qR+-lT;-vs4*|IY6gBc`0&i*HwK019KPci|*!?%>)e^1Fn^I|@ak*BfZi{;nY zyPtP_#<u-n;nREyEokzy^7}tO|NNh`G=O8;&;RsI`;C+Gqin7GZMHGBq&>j9P|C%d zIzDS(x!~yqYn5Ecf2Jh9=^Lm*>{(AS!%FC^F4wi_dSGSZB6y*CRQIgzW!*cvk942n z8zGA2hoCFA71%OBmJ$;}uWT`($E@x(gc!ZDg-~`0;6^B1i7*L+hrI!1y{A<NoD8f# z$Wg_Z2Xjub0;{vDd<#rdio}G&1cC=U5D1h+%>YTqa2d@@6zTCo1Q!H`o@u428I<xU zs6?y9jHkf791l{8EXt^ONs_{1QLsRe=FF1p9R<nYj~E1lWFQ;p7Nf<YPtHhSPE(B4 z5>C!p?{x+;^E?Y0l5?UBS4;X7dxD;~Fnwu*TU^wrhboN7w;8N~lBoLGfs-|Qr^6m6 z2+l;l%xXx>v088$i^-UZMLaqhS4nhP%WM4Bgv6RlriFS|_PQ@RG{wp~{yIG%EZUUo zugVZZ>+5|x4?i${#-&@97wLlyF}@Rnc9YvxVpFd7iqUC_a7yKjN)&H{44Es<7~^)Q zj`cVli3wAjPDi+ke<eB{4r&G(^L+=LmWGqf`5{&q>t?a>MUOv_72z=D&!M?0i14E< znc=Akr;1+YFkp|BV2duyO}yg#tJ$<Rk;kXn*oe_$H#q#!f3f&8y?*1JhfPV$@07nx z47J6YY(mPN$!cZsdimX`oLFNNU4(Gh>WZ$8Pq0S2##myV-&$Vlc3FA#2Kmc5Q-#L0 z5<DDFFX)`P%D&;Mn=2<@I=INR<iZMXS&X5kY1d5W!gU>dz+Ga;S1VUEFbVF#@!6v5 z<Ro{RD8^)`NupO+pD-1losd|S<{Vq>h!ce<yCWVSf7}yxI?VZDAFTfCVws<ILdw4) z-8wA{9~`<nwJ^s{;)hyT0O$8}EiCFREM5ysI@tcv!g|DS(!vJa0-mLXjXEp8RtuYS zX8wp4hD<8|L<`$>$wCeIJWPazJe&>?M~T7=80Km%%z<$p*1`g0SAVL7MV*HckBHJs zx(s}m8rCDeNedfv-)7sjuu&Jww`gIL&drZ#VT&%8Kcj{1y2*k7-b6p-jkmzhX%}o^ zbi&7&51O0JIJbx(G##NnXf$m>H~<Q>1emZ8;TqtN9^B958d9Djx*_BnRC2c=rLL}j zV9Q`vN9VAwzIkKBH@&&9ZHq5ZToNwy)%5iElvhK(!N^c#aATwm85+=@KD43+_=!sE z2Spn}bbsG)&8Emue=i;uBBlfKE<I@7ARZ$fBR$OsG=M^z2d&dN$XyFN*7Ff=0PlV| zWUA*Q7xYmZ=FeL^r>3@Y{^Evd%Nyq}q^SR(#-++v4WW;ybv|7X-&TfSF~Z~hqFWjn z9O~-t^92jb3X7GG{Lcz+#D_%iDb#h;r4bw)Q78J)4gJcsQ+e}ELq&O7k#4+U?Z~0# zRP)d?btjcIh&tMkzE|nCZp1Ysmg2jxAdDb1UP>Qw(Nil@5796-_C%V8A{eLk$e?ey z-#6SD@tqmkp-Ag6eRz96UgAwV2Fo`**xVNBZ656QH4hIDcD0NsN&5PSyILbd+CUGY z76PVohI(+=cY3V92^Mu{U`eNd>@YyM5+r&NdQSb`=CjHyRK85tIXpZ7y&h^_vkFUv zUH$(}2}KwwwO9I-(JDgbZz{8>2Orrt6v2Ci#-ZE4`p2Kc8wN^9z$xJ#-EN#QU9GzY zwu1KRu406);cgXD<OXJhcUCjAV3%eCx#?g|r~pPY7jv^1EP7rR3x6%~ECJFMNgz{G zm=8?NH0)k8SSIsB|0J8`uv{3c$!BD8p@<d3WNCnvvLFkA=q!T`MQEMC4g<u~vHVVD z)vN|yR_a(iT);N4>1+m@36aLx@U1YH&13UfBU`{0vPIbGEn!R9GPWFkVOFwLY&BcM z*0Lt-|C(6~@Y!cN8*624EW+AZ2kT^AY(47+^Q{;9l>KagZGa7wAvO$?up8MXcq8A! zwzBiEF}?ueliS!RyNF%PwzEs%c5o-#1xb?2pt`z;UCypxSF)?v)$AI!mtD*DvHk1- z`xcC{UC(Y{H^N8IL0ITM%#N^|*|*s(>{fOgyPe$uPgi%byV*VLUUnb*4!fUymp#B9 zWDl{2+4tBZ>{0d@+^s&ro@C!=PqC-j57<#y<9wDq$9~9u#GYp_uou~n*-Pvv@Id`C zdxgCUBf39hud|=CH`tr(E%r8hhy8-R%id$ZWWQqXvtP4g>;rb3eaJpyzkxN?-@$Xy z$LtU6kL*wE6ZR?ljD61j%)VfMVSi<RV}ED=VE<%avai?)c9M-TnVsS~&N$}+7rDg2 zP2ome8aHt>x4=7)jl*ytck(D6&0XBhW4MQVc`T3P@jQVi@+1y^3#>Y)@-&{#GdL_q z@GPFqb9gS#<N3URL+6$k^AaB5r98+(Jj}~@Ij`WAd=j6`r*JTKcr~x#wY-kk^J%<+ zPv<lEOg@Xx=5zR5K9A4mjeG%L$QS8e=ZpCgzLYQH%lQhvlCR>c`5L~KH}Q46nYZv( z-o_)m9ZC<Kyo;~r-MokQ@;=_r2lxg)$cOkaAK@GMCcc?(;amB6{Cs`^zmRX^qx>R% zG2hNF;XC+FzKdVVFXOxU9)3B$f?vt6;#WgcbuYh`@8kRV0sbw19lsuQ|Bd`6evlvH zhxrkHGygWfh2P3=<G1rW_?`SNemB2|-^=gg-{JT3@A3!ugZv@>F#jHZgg?q3<B#(v z_>=tm{3-r4{{cVBpW)B)=lBo#kNETa1^y!cF@K5wg#VPk%wOTJ^4Iv!`0M=V{0;sl ze~Z7(-{HUD@ACKfFZr+d`~27Z82^AD=O6Nq_;2`c`S1Ae`N#YZ{Ez%k{1g5u|BQdm z|IEMOf8l@Sf8&4W|KR`RU-GZ`34W48H<q6gbfDRAcn7*o67(=fVT2`UvtSXdu<c|Q z9D);ep`!(t;1*(_i|rL+g*YKzNDvZ*BmvAg!6&2&X+pY?A!G`EAxp>>a)ewVPskSv z1n}a7VxdF`2&F<07AV6)nNTiN2$jMlVX`nqs1l|M)k2L>E7S?~!Ze{lm@do^W(u=} z*}@!Qt}suSFEk1ZgoVN)VX?48SSl<NmJ2I{mBK1vwXjB5D>Mn~gl3^dXcgLoh|n%{ z2%SQguwLjEdW2q~Pv{p0gbl)=FeD5MBf>^uldxIXB5W1T6V4YdfD*|zVN|$CxLDXO zTq5icb_%<MONGmX-NGK>a^VW$O5rNuYT+7TuW+rfPuMRU5WXc`CtNSwAlxY2BpehD z35SIv!p*|Bg<FJMh1-PNg*${hg}a2ig?og1h5Ll>2=@!$6&}#-lRA2uhlZryk)f_u z{ZOQNu(i_|>Dw6T=^uzlop>G=hlZO6&2(vs^bQPf5l29^i0xfHy~g3rCQu+95kA~$ zpm5jFFz@fy4@P?XH%1Iw`}=#Fy84XDy?<m_=x=Y=4|R3)HTMXu{T&jP%AroN6SR#H zrA3;Wdxpi~uHJ|^*x%e{ZR_9E*Mk5>8^<5?BLfsCb@jFMZ?+8dG;e8Y?HX+DiJ;Db zNb|4(OEsvfP9rr%DX^!%wOefOY3?xNW7-Bf`}-n8=8gS5BfXI(w8x?asREN09vRSY z7;Notix^ta9k>g_%^f0sLt;yRf47k?w8BdRgI#^Y`qt*&$Y8Tb%PZdZwCTHso3RjD zh9jGYn>r&z1)7!crmnW(PBY$h^fmQF+J~)b5KHE8WYD5MD3qa14X+;=8t!V}BGR{5 zy87CXPR*x<m9+Nu=GF-HTGPg^wn)EWpsRIwWH6#1i1f8~^_Y8`2b!p@kwJZP8x@Ei zMmr;IUBl8)XY*i0YVC}mhiJfTL&K4Qrk3W`?oG{uZMODibm91uaXcVWr%MCP00IC; z|9}D14<)xM$;Tg*lC%dYvL1wz74>W!>{q|sHvXV|f@z><WT=S%!`$1|rv)u45Gm1y z{%+-N+b|MAm!J?zZ0hQ3?^m-8wGKu=cy#s;+q7&dRG5%a4Vhb-`^JOKgM<B>l%BMx zL8TQ&H9Rt4Rs#w|C|yKwgysx&ZH+XwkM#6dweV1Hb5D;mvbnXVxwrXrv&4?B_F)l( zV>{-^V8j^N0zkuPm?+TN(?1lkqQCmO`Z|=hOX$zOh_SV~C(_r}Jg6VUR-wPw(AwYI zi}BX?Hh1(zhRx&sH8OCzAE|u+_u);E$gmBcJ}^K<wqn9s+X01<LA5fA_CQT=Xbs;O z83Z}n+!LieclHl<Z6)fk#{`IPY6V;jTZcDw4FfLKjwc`^uvea}D#SOT^1*(gJF-Q@ zY#uUdO&+ohcaHS73^k1mP{%p6Cu%M|n-oOS+1%4^QLu}OQw%hqKoPc{uD)&nr#ixh zfsvt3e3lI}DKZGO0SwdEt)P&uK0PWQ=-guI=t2!GDjcZTfvS;ufP?xZWxiV!5LYX* zk569p(X1p;G8?oHHjaO*UM*Qa0yNaxZ2^d3(ohGt34=pJLT6i>u?5h8&g&CfB0W8p zR_fMvbnI}%+=*dqQlVQ3(tI~4p^*WTa;FZ7Qh~GS3`9ns6{8g3I4f#o;OtCP3~+dV zOGLkE5Ocm$8g3ry9?}D&qR&h%gI$sKR%~L-1i9)wkvazZM+Sga`nn|m<Vc&oCDIHG zA+(MRV<-o<m<O5%6!_^H5QngTHPh%cwE$4N0df6<04_e#!~1)HF$TN3Bg362u%pv7 z0vt7nVk2lnOHV`s@OHHV&5yKpn=p)M52mmEbV%uTXGed32ax}19AKFcAz=(7Tg>S5 z$Z!*VDdq_UF-g?`b*n`UDt(1{1I*qxBo6ft0@QF(vKf>RCeQfFMj(PULWMOE?d}J_ zbO8R_uq3tgV~i~tI8#dNIB3%Y;rL;|>o9hC14cmlAjZBK7!f$n4BXxcq&d>lVgz2m zICn(sN*625pry;IKB|yvpry2_x6OjQ!=3#@==_LrXrybHM$AY+MK$VMu~0=KSYi5s zm1(6^mJ|AfmXWR=%$5!#G7r$YV`}b2?ah6y5q)o@t-EX3(oRi6E$bs_dIal0r_%3Y zdvSXts;z$n1J#6f;!2$veO8PLe`iGj{?2-)Q8Ay%Z&8CvMxz=gjH;ARNeyk0p>8Z2 z`kv+ix+#D%Z0+rDq3=>=qg8`<1>VdXM*4@<rdiaWI?njozCL`6npVQ<-?PQ6p#pS_ zb0P|)K6Fe#gY;~UY#yK~iXcW812{0G5FpY}FB&4XV}<AwdLx~N4y^72&22`YIR!3^ zL`zUMyAn`P3*frVh(5;Z)!c&_)D|%*4MMUW$7y`0As`?Vb+J$;z1RvYW}+-jST4H> z*#IiVra)PRWx~p085+Ti#PsbN09cQ-s39aPFSQPgY~4zI*A;1vU;(89iOR8`2@;{B zAL{Ii^t9Q>7aFxSQM5!g0lfl-M!JSN(W8Svb`e^5Hn+9`L20YDf&ml&IV(m5kh7u) zK~2o0AgIpa-ky-yIy6+O2W$dmnpLby9jRc^A*_xrz<bxgP}fk?nFT58blmu&B{r27 zmx5#f=|_#yV<kg-@wMZW1C^<vd?nJ@69G9(I71C65Q`?Zs;ikvLF-f$N-hbQ)g_;v zX%WV>rj<<vkTZ}1(52L6LS$r6=x7-bMuysiuD(HG{lFGsaHK`(9^53f47U=Q95J1q zvrYvMwQNBX2RfTuFe95v0~OJyV>OOZWXSXNDEchhc(j6pqt1Gw_b9G3NSBax3s%#S zmWaBvX%FIN46}(YO7!V8)R~4hzzv9MpmY#`<H!p%7M?o>n|t-`plQ1Yh32+CvAv|M z#NN_1+ycZ7Y^)9gFk#Q2Wmvf>QI4K|RCI=zvQ2m%8JPH%;L17Stvbawfz0jSG-SXu z9qjLFlQ1zxHlvwcEwr`_b#EEKqSik$IJ98|ivq|2fJ(o<9cZ~HBGQEx@ZqijVQ7Sg zHXJt4=B8_7L}(f5;2XQ8O_8paerz22@P`Ct0lV_;m<}rDrnq2?`T^r>aF0rY)2pz( ztsnG&vi;CHzpUK45u`Y%Ql(8uRbFgUS2iW0sh^?(bSb3^ja7MwE@8Tq(WRU&6^4<% zu7;ADV)S)$31TWJQ$;B~Ql<*ZR6&_4C{qPxs;Cf~g2hUX778Ipuo%?@i-T%uwJ0c9 zj7-5|WC|7|Q?Qsal@!y3-j-0N63SG9YJw%GCRjo_N+?GO<tWkGR#&W+T1WW;lrKQ} z0+cU6`JmZ`3*`$?z5vx!N;Q>I4p?)>g>sZ?&8yc6tS?auu2)h})>5rX_)S#0r9Q0P zsqi3`5u{p!RBMoG4Jt1vYf#HNjVcaN#UUy-M43XADMXn<lqp1+LX-)1TAG4k$`Pg< zuw#r1<p^s{ZBX7(rf?aCq+NMOnab!z8D%P?Ol9<<jH)T4Y9Q&1#H|#fYRV`_Iprv) z90V6Zf{P%*MUdbkNN^D(xCjzl1j{K$1?8xq90U|W00k~Vu|1#+BY*-S<pt#+pa=md za6yg`0Y!*_B2<hzLdB>fL=X`ohzJoxgo-PqjS=8d1PLTUR91*UB19k&B9I6XNQ4L^ zLIe__5~?IXl>{gU0Yiv@Aw<9sB47v+FoXygLIeyU0)`L)Lx_MOM8FUtU<eWV3c<7$ zE|jB`a+FezQpype96`zvq#QK#AsYG+4Lzh4=t4Pylp{zvLX?BXJw)RkqHzz=xQA%m zLp1Io8ut*5dx*w8MB^T!aSzeBhiKek?~E>#BTP9k=(tdha0PlBIdGvI7<7av2Mv0N z20es9$AxmxpoeJCLp10i8uSnidWZ%+M1vlpK@ZWOhiK44H0U83^biethz31GgC3$m z4`I-8p&Wz>LWBuIzy$4qvWPN20_EzA3Q$d98u~B|eOSW>fpT>^1*pC-0YI1lAWSGB zOt2KD@ekAZhiUx7H2z^4|1gbzn8rU$;~%E+57YREY5c=9{$U#bFpYnh#y?EsAExmS z)A)x2>a+~hXf3Q!=X{_hptiiGRJ*GaE>NR2wML!!ftoVyeYtiYFRw;>uGQ{!+Pz-8 zPgC!;TD`Sey|r4swOYNkTD`Sey|r4swOYNkTD`Sey|r4swOYNkTD`Sey|r4s8qy5Z zY4z4=_10<i)@k+DY4z4=_10<i)@k+DY4z4=_10<i)@k+DY4z4=^=h~^pyAd)y;g6% zR&TvluZCd*8iozjYxUM^_10_k)@$|FYxUM^_10_k)@$`n)B1Uu_Px`zdZ%giPSfh0 zrhV@;?R%#Yq*Q2?PSYx#rd2vkt8|)H=`^j<Y17ohCU)u+&XpJ*?D)khk@U>?v$(?k d0m<LsAEnU!bjr71rTb6jPcEkW8zr5O{~!CE|H}XX literal 0 HcmV?d00001 diff --git a/assets/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.woff b/assets/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.woff new file mode 100644 index 0000000000000000000000000000000000000000..400014a4b06eee3d0c0d54402a47ab2601b2862b GIT binary patch literal 98024 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 SdSQM28?+M|D(2r_;{O0|uQ74} literal 0 HcmV?d00001 diff --git a/assets/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.woff2 b/assets/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..4d13fc60404b91e398a37200c4a77b645cfd9586 GIT binary patch literal 77160 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 literal 0 HcmV?d00001 diff --git a/assets/images/favicon.ico b/assets/images/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..d09a5581ae11cf4cfef771c3bf1884268164cc8b GIT binary patch literal 1150 zcmbtUO-vI}5MC3`hLdNH7!R6wFfoz4SBy6k|EfWwi5E{Kc$J6^Q9-E&#FPl42~>?n z1T@qZ3N3|}wltK|+HJQjU20+5O1t|x@9l2Ut4=fTr8D36y_tD0D+mYZ*W4`7dRS<0 z5`;s7AheKEh$4ENHbJ1=>_Of6e_HULmJ7W>c>E&P9M=$WSoVFwg6R8p^6UFCBhRpm zlUW*ov}{Lkw2kA|O#H+Z#AoheHy47k6-C0?g~<4&KQK3la~3JjW4(G!#ddre(#kNT z;0W@}S6`ElAsZakJ@5)rU<6sh$gxRiYOT?^NIGfnGn8|ysAX4B5IxAJ<{{HwmHZ87 zIflvjhw#H~<@{<fN%h@pXx&dO;NA8nvh`n>kmI--{e+wAld!CPgjMuH(=?7vx*kw( z5h$dWTI}aBXJH+8A|LRz5X0rb7@YD3ZigK>>a^nITrc1KbRIKtX%MCKB9wd>qQT!( zw(x~CI_bQo&mHJVIPoMoha<#4?deCG-;UB=ne#LL7uZSrh##WfZ9E2Oh$?xwiwV5V z2H`7-=p+6us^OUHA*M*%G>P-Q{CtzIX?4`;E_xE*c@5UhS#*<k#lOLxUZR{vbFXuW zeSQd{r<cd-G&5%5-7H$D=5zjG*is%0q!v*lZH=^51C#MR=l!dD3gXk9s8x!(24R>D zi9Q^sn$LI#F(b!#Of_<9t&I2#<H$T-qPyOh>VUY=hlHyeMS9b*$~IbQW~~c0B+CU9 zmR}-Ccg`>jTTIMyE}I#%dbNZKoujZBQT?&9j1%rhI5qziV)Z99nx#VdGPzl+$)%x? zg07<)?<2S);e22e7w8?V)4eiN4GhN`z3>EIh|jp3uQjktRp<SkH+klF;9vLOik^w{ literal 0 HcmV?d00001 diff --git a/assets/images/favicon.png b/assets/images/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..fa4d47235c063267737847e7394a2edc1e2d91d2 GIT binary patch literal 3815 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 IQ0}Dv0aRuMXaE2J literal 0 HcmV?d00001 diff --git a/assets/images/logo-new.png b/assets/images/logo-new.png new file mode 100644 index 0000000000000000000000000000000000000000..1016e909b7bbe258ecedcde8a1885a6dea9eab96 GIT binary patch literal 10192 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 KMNUMnLSTaO61D39 literal 0 HcmV?d00001 diff --git a/assets/images/logo.png b/assets/images/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..5ff2510482407f93a7b56ee2705758e9de9d4199 GIT binary patch literal 95882 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%0A>1Zcq_Mmpw%%6 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%0Aldg@X3jrIUE<@qu#-`*4jBbGLpzu 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 ITN`-rzgr<gX#fBK literal 0 HcmV?d00001 diff --git a/assets/images/popout.png b/assets/images/popout.png new file mode 100644 index 0000000000000000000000000000000000000000..f9e722ec5d58572d301a5115bf595312e32e36ae GIT binary patch literal 13510 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 literal 0 HcmV?d00001 diff --git a/assets/images/vlabs-color-small-moe.jpg b/assets/images/vlabs-color-small-moe.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f4129424272c6207f1784e4c9b1692bfdf82a28d GIT binary patch literal 32248 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 VpvXjfqTGI6;yRB7I|E7j{{!(Z9^L=| literal 0 HcmV?d00001 diff --git a/assets/js/assessment.js b/assets/js/assessment.js new file mode 100644 index 0000000..59149b6 --- /dev/null +++ b/assets/js/assessment.js @@ -0,0 +1,40 @@ +const quizContainer = document.getElementById("quiz"); +const resultsContainer = document.getElementById("results"); +const submitButton = document.getElementById("submit"); + + +function showResults() { + // gather answer containers from our quiz + const answerContainers = quizContainer.querySelectorAll(".answers"); + answerContainers.forEach(e => e.style.color = "black"); + + // keep track of user's answers + let numCorrect = 0; + + // for each question... + myQuestions.forEach((currentQuestion, questionNumber) => { + // find selected answer + const answerContainer = answerContainers[questionNumber]; + const selector = `input[name=question${questionNumber}]:checked`; + const userAnswer = (answerContainer.querySelector(selector) || {}).value; + + // if answer is correct + if (userAnswer === currentQuestion.correctAnswer) { + // add to the number of correct answers + numCorrect++; + + // color the answers green + //answerContainers[questionNumber].style.color = "lightgreen"; + } else { + // if answer is wrong or blank + // color the answers red + answerContainers[questionNumber].style.color = "red"; + } + }); + + // show number of correct answers out of total + resultsContainer.innerHTML = `${numCorrect} out of ${myQuestions.length}`; +} + + +submitButton.addEventListener("click", showResults); diff --git a/assets/js/assessment_v2.js b/assets/js/assessment_v2.js new file mode 100644 index 0000000..65ab4c2 --- /dev/null +++ b/assets/js/assessment_v2.js @@ -0,0 +1,185 @@ +"use strict"; + +const quizContainer = document.getElementById("quiz"); +const resultsContainer = document.getElementById("results"); +const submitButton = document.getElementById("submit"); +const difficultyLevels = ["beginner", "intermediate", "advanced"]; + +let difficulty = []; +let questions = { all: myQuestions }; + +const addEventListener_explanations = () => { + let accordions = document.getElementsByClassName("accordion"); + Array.from(accordions).forEach((accordion) => { + accordion.addEventListener("click", function () { + /* Toggle between adding and removing the "active" class, + to highlight the button that controls the panel */ + accordion.classList.toggle("active"); + + /* Toggle between hiding and showing the active panel */ + let panel = accordion.parentElement.nextElementSibling; + if (panel.style.display === "block") { + panel.style.display = "none"; + } else { + panel.style.display = "block"; + } + }); + }); +}; + +const addEventListener_checkbox = () => { + difficulty.forEach((diff) => { + let cBox = document.getElementById(diff); + cBox.addEventListener("change", function () { + if (cBox.checked) { + difficulty.push(diff); + } else { + difficulty.splice(difficulty.indexOf(diff), 1); + } + updateQuestions(); + }); + }); +}; + +const populateQuestions = () => { + let num = 0; + myQuestions.forEach((currentQuestion) => { + if (difficultyLevels.indexOf(currentQuestion.difficulty) === -1) { + currentQuestion.difficulty = "beginner"; + } + if (!(currentQuestion.difficulty in questions)) { + questions[currentQuestion.difficulty] = []; + } + questions[currentQuestion.difficulty].push(currentQuestion); + + currentQuestion.num = num; + num += 1; + }); + + if (Object.keys(questions).length > 2) { + document.getElementById("difficulty-label").style.display = "flex"; + difficultyLevels.forEach((diff) => { + if (!(diff in questions)) { + return; + } + difficulty.push(diff); + let checkbox = document.getElementById(diff); + checkbox.checked = true; + checkbox.parentElement.style.display = "flex"; + }); + } else { + difficultyLevels.forEach((diff) => { + if (!(diff in questions)) { + return; + } + difficulty.push(diff); + }); + } +}; + +const checkDifficulties = (classlist) => { + if (difficulty.length === Object.keys(questions).length - 1) return true; + for (let i in difficulty) { + if (classlist.contains(difficulty[i])) return true; + } + // If beginner is checked list the unlisted question as beginner + for (let i in difficultyLevels) { + if (classlist.contains(difficultyLevels[i])) return false; + } + if (difficulty.indexOf("beginner") > -1) { + return true; + } +}; + +function updateQuestions() { + const quiz = document.getElementById("quiz"); + const qquestions = quiz.getElementsByClassName("question"); + for (let i = 0; i < qquestions.length; i += 1) { + if (!checkDifficulties(qquestions[i].classList)) { + qquestions[i].style.display = "none"; + qquestions[i].nextElementSibling.style.display = "none"; + } else { + qquestions[i].style.display = "block"; + qquestions[i].nextElementSibling.style.display = "flex"; + } + } +} + +function showResults() { + // gather answer containers from our quiz + const answerContainers = quizContainer.querySelectorAll(".answers"); + // keep track of user's answers + let numCorrect = 0; + let toatNum = 0; + // for each question... + myQuestions.forEach((currentQuestion) => { + // find selected answer + if ( + difficulty.indexOf(currentQuestion.difficulty) === -1 && + difficulty.length !== Object.keys(questions).length - 1 + ) + return; + let questionNumber = currentQuestion.num; + const answerContainer = answerContainers[questionNumber]; + const selector = `input[name=question${questionNumber}]:checked`; + const userAnswer = (answerContainer.querySelector(selector) || {}).value; + // Add to total + toatNum++; + // if answer is correct + if (userAnswer === currentQuestion.correctAnswer) { + // Reset if previously red colored answers + answerContainers[questionNumber].childNodes.forEach((e) => { + if (e != undefined) { + if (e.style) e.style.color = "black"; + } + }); + + // add to the number of correct answers + numCorrect++; + + // color the answers green + //answerContainers[questionNumber].style.color = "lightgreen"; + // Show all explanations + if (currentQuestion.explanations) { + for (let answer in currentQuestion.answers) { + let explanation = currentQuestion.explanations[answer]; + let explanationButton = document.getElementById( + "explanation" + questionNumber.toString() + answer + ); + if (explanation) { + explanationButton.parentElement.nextElementSibling.innerHTML = explanation; + explanationButton.style.display = "inline-block"; + } else { + explanationButton.style.display = "none"; + } + } + } + } else if (userAnswer) { + // if answer is wrong or blank + // color the answers red + document.getElementById( + "answer" + questionNumber.toString() + userAnswer + ).style.color = "red"; + // Show only explanation for wrong answer + if (currentQuestion.explanations && userAnswer) { + let explanation = currentQuestion.explanations[userAnswer]; + let explanationButton = document.getElementById( + "explanation" + questionNumber.toString() + userAnswer + ); + if (explanation) { + explanationButton.parentElement.nextElementSibling.innerHTML = explanation; + explanationButton.style.display = "inline-block"; + } else { + explanationButton.style.display = "none"; + } + } + } + }); + // show number of correct answers out of total + resultsContainer.innerHTML = `Score: ${numCorrect} out of ${toatNum}`; +} + +populateQuestions(); +addEventListener_explanations(); +addEventListener_checkbox(); +submitButton.addEventListener("click", showResults); diff --git a/assets/js/event-handler.js b/assets/js/event-handler.js new file mode 100644 index 0000000..35cf885 --- /dev/null +++ b/assets/js/event-handler.js @@ -0,0 +1,67 @@ +"use-strict"; + +const Toast = Swal.mixin({ + toast: true, + position: 'bottom-end', + showConfirmButton: false, + timer: 3000, + timerProgressBar: true, + didOpen: (toast) => { + toast.addEventListener('mouseenter', Swal.stopTimer) + toast.addEventListener('mouseleave', Swal.resumeTimer) + } +}) + +document.getElementById('bug-report').addEventListener('vl-bug-report', (e) => { + if (e.detail.status === 200 || e.detail.status === 201) { + const learningUnit = document.head.querySelector('meta[name="learning-unit"]').content; + const task = document.head.querySelector('meta[name="task-name"]').content; + dataLayer.push({ + event: "vl-bug-report", + "bug-type": e.detail.issues, + "learning-unit": learningUnit ? learningUnit : "", + "task-name": task ? task : "" + }) + Toast.fire({ + icon: 'success', + iconColor: "white", + background: "#a5dc86", + title: 'Bug Reported Successfully', + }) + } else { + Toast.fire({ + icon: 'error', + iconColor: "white", + color: "white", + background: "#f27474", + timer: 5000, + title: 'Bug Report Failed, Please Try Again', + }) + } +}) + +// Function to handle the rating submit logic +function handleRatingSubmit(e) { + const learningUnit = document.head.querySelector('meta[name="learning-unit"]').content; + const task = document.head.querySelector('meta[name="task-name"]').content; + dataLayer.push({ + event: "vl-rating-submit", + "rating": e.detail.rating, + "rating-value": e.detail.rating, + "learning-unit": learningUnit ? learningUnit : "", + "task-name": task ? task : "" + }); + Toast.fire({ + icon: 'success', + iconColor: "white", + background: "#a5dc86", + title: 'Rating Submitted Successfully', + }); +} + +const ratingSubmitElement = document.querySelector('rating-submit'); +if (ratingSubmitElement) { + // Wait for the 'vl-rating-submit' event before adding the event listener + ratingSubmitElement.addEventListener('vl-rating-submit', handleRatingSubmit); +} + diff --git a/assets/js/iframeResize.js b/assets/js/iframeResize.js new file mode 100644 index 0000000..fc116cb --- /dev/null +++ b/assets/js/iframeResize.js @@ -0,0 +1,29 @@ +const sendPostMessage = (mutationList, ob) => { + if (mutationList && mutationList.length > 0) { + let height = document.scrollingElement.scrollHeight; + window.parent.postMessage({ + frameHeight: height + }, '*'); + } +} + +window.onresize = () => sendPostMessage(); + +const config = { attributes: true, childList: true, subtree: true }; + +const observer = new MutationObserver(sendPostMessage); +observer.observe(document.body, config); + + + +/* This is only needed when there is a nested iframe, and +will work only if this script is manualy inserted in the embedded iframe page. +*/ +window.onmessage = (e) => { + if (e.data.hasOwnProperty("frameHeight")) { + var iframeDiv = document.querySelector("iframe"); + if (iframeDiv) { + iframeDiv.style["padding-top"] = `${e.data.frameHeight}px`; + } + } +}; diff --git a/assets/js/instruction-box.js b/assets/js/instruction-box.js new file mode 100644 index 0000000..f8152c8 --- /dev/null +++ b/assets/js/instruction-box.js @@ -0,0 +1,11 @@ +var collapsibleEl = document.getElementsByClassName("collapsible")[0]; +collapsibleEl.addEventListener("click", function() { + this.classList.toggle("active"); + var content = this.nextElementSibling; + if (content.style.maxHeight){ + content.style.maxHeight = null; + } else { + content.style.maxHeight = content.scrollHeight + "px"; + } +}); + diff --git a/assets/js/jquery-3.4.1.slim.min.js b/assets/js/jquery-3.4.1.slim.min.js new file mode 100644 index 0000000..af151cf --- /dev/null +++ b/assets/js/jquery-3.4.1.slim.min.js @@ -0,0 +1,2 @@ +/*! jQuery v3.4.1 -ajax,-ajax/jsonp,-ajax/load,-ajax/parseXML,-ajax/script,-ajax/var/location,-ajax/var/nonce,-ajax/var/rquery,-ajax/xhr,-manipulation/_evalUrl,-event/ajax,-effects,-effects/Tween,-effects/animatedSelector | (c) JS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(g,e){"use strict";var t=[],v=g.document,r=Object.getPrototypeOf,s=t.slice,y=t.concat,u=t.push,i=t.indexOf,n={},o=n.toString,m=n.hasOwnProperty,a=m.toString,l=a.call(Object),b={},x=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},w=function(e){return null!=e&&e===e.window},c={type:!0,src:!0,nonce:!0,noModule:!0};function C(e,t,n){var r,i,o=(n=n||v).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function T(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.4.1 -ajax,-ajax/jsonp,-ajax/load,-ajax/parseXML,-ajax/script,-ajax/var/location,-ajax/var/nonce,-ajax/var/rquery,-ajax/xhr,-manipulation/_evalUrl,-event/ajax,-effects,-effects/Tween,-effects/animatedSelector",E=function(e,t){return new E.fn.init(e,t)},d=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;function p(e){var t=!!e&&"length"in e&&e.length,n=T(e);return!x(e)&&!w(e)&&("array"===n||0===t||"number"==typeof t&&0<t&&t-1 in e)}E.fn=E.prototype={jquery:f,constructor:E,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=E.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return E.each(this,e)},map:function(n){return this.pushStack(E.map(this,function(e,t){return n.call(e,t,e)}))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:u,sort:t.sort,splice:t.splice},E.extend=E.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||x(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],"__proto__"!==t&&a!==r&&(l&&r&&(E.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||E.isPlainObject(n)?n:{},i=!1,a[t]=E.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},E.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==o.call(e))&&(!(t=r(e))||"function"==typeof(n=m.call(t,"constructor")&&t.constructor)&&a.call(n)===l)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t){C(e,{nonce:t&&t.nonce})},each:function(e,t){var n,r=0;if(p(e)){for(n=e.length;r<n;r++)if(!1===t.call(e[r],r,e[r]))break}else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},trim:function(e){return null==e?"":(e+"").replace(d,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(p(Object(e))?E.merge(n,"string"==typeof e?[e]:e):u.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:i.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,o=0,a=[];if(p(e))for(r=e.length;o<r;o++)null!=(i=t(e[o],o,n))&&a.push(i);else for(o in e)null!=(i=t(e[o],o,n))&&a.push(i);return y.apply([],a)},guid:1,support:b}),"function"==typeof Symbol&&(E.fn[Symbol.iterator]=t[Symbol.iterator]),E.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){n["[object "+t+"]"]=t.toLowerCase()});var h=function(n){var e,p,x,o,i,h,f,g,w,u,l,C,T,a,E,v,s,c,y,N="sizzle"+1*new Date,m=n.document,A=0,r=0,d=ue(),b=ue(),k=ue(),S=ue(),D=function(e,t){return e===t&&(l=!0),0},L={}.hasOwnProperty,t=[],j=t.pop,q=t.push,O=t.push,P=t.slice,H=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},I="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",R="[\\x20\\t\\r\\n\\f]",B="(?:\\\\.|[\\w-]|[^\0-\\xa0])+",M="\\["+R+"*("+B+")(?:"+R+"*([*^$|!~]?=)"+R+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+B+"))|)"+R+"*\\]",W=":("+B+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+M+")*)|.*)\\)|)",$=new RegExp(R+"+","g"),F=new RegExp("^"+R+"+|((?:^|[^\\\\])(?:\\\\.)*)"+R+"+$","g"),z=new RegExp("^"+R+"*,"+R+"*"),_=new RegExp("^"+R+"*([>+~]|"+R+")"+R+"*"),U=new RegExp(R+"|>"),V=new RegExp(W),X=new RegExp("^"+B+"$"),Q={ID:new RegExp("^#("+B+")"),CLASS:new RegExp("^\\.("+B+")"),TAG:new RegExp("^("+B+"|[*])"),ATTR:new RegExp("^"+M),PSEUDO:new RegExp("^"+W),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+R+"*(even|odd|(([+-]|)(\\d*)n|)"+R+"*(?:([+-]|)"+R+"*(\\d+)|))"+R+"*\\)|)","i"),bool:new RegExp("^(?:"+I+")$","i"),needsContext:new RegExp("^"+R+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+R+"*((?:-\\d)?\\d*)"+R+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,G=/^(?:input|select|textarea|button)$/i,K=/^h\d$/i,J=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\([\\da-f]{1,6}"+R+"?|("+R+")|.)","ig"),ne=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){C()},ae=xe(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{O.apply(t=P.call(m.childNodes),m.childNodes),t[m.childNodes.length].nodeType}catch(e){O={apply:t.length?function(e,t){q.apply(e,P.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,d=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==d&&9!==d&&11!==d)return n;if(!r&&((e?e.ownerDocument||e:m)!==T&&C(e),e=e||T,E)){if(11!==d&&(u=Z.exec(t)))if(i=u[1]){if(9===d){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return O.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&p.getElementsByClassName&&e.getElementsByClassName)return O.apply(n,e.getElementsByClassName(i)),n}if(p.qsa&&!S[t+" "]&&(!v||!v.test(t))&&(1!==d||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===d&&U.test(t)){(s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=N),o=(l=h(t)).length;while(o--)l[o]="#"+s+" "+be(l[o]);c=l.join(","),f=ee.test(t)&&ye(e.parentNode)||e}try{return O.apply(n,f.querySelectorAll(c)),n}catch(e){S(t,!0)}finally{s===N&&e.removeAttribute("id")}}}return g(t.replace(F,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>x.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[N]=!0,e}function ce(e){var t=T.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)x.attrHandle[n[r]]=t}function de(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function pe(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in p=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},C=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:m;return r!==T&&9===r.nodeType&&r.documentElement&&(a=(T=r).documentElement,E=!i(T),m!==T&&(n=T.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),p.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),p.getElementsByTagName=ce(function(e){return e.appendChild(T.createComment("")),!e.getElementsByTagName("*").length}),p.getElementsByClassName=J.test(T.getElementsByClassName),p.getById=ce(function(e){return a.appendChild(e).id=N,!T.getElementsByName||!T.getElementsByName(N).length}),p.getById?(x.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},x.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(x.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},x.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),x.find.TAG=p.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):p.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},x.find.CLASS=p.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(p.qsa=J.test(T.querySelectorAll))&&(ce(function(e){a.appendChild(e).innerHTML="<a id='"+N+"'></a><select id='"+N+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+R+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+R+"*(?:value|"+I+")"),e.querySelectorAll("[id~="+N+"-]").length||v.push("~="),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+N+"+*").length||v.push(".#.+[+~]")}),ce(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=T.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+R+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(p.matchesSelector=J.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){p.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",W)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=J.test(a.compareDocumentPosition),y=t||J.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!p.sortDetached&&t.compareDocumentPosition(e)===n?e===T||e.ownerDocument===m&&y(m,e)?-1:t===T||t.ownerDocument===m&&y(m,t)?1:u?H(u,e)-H(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===T?-1:t===T?1:i?-1:o?1:u?H(u,e)-H(u,t):0;if(i===o)return de(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?de(a[r],s[r]):a[r]===m?-1:s[r]===m?1:0}),T},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if((e.ownerDocument||e)!==T&&C(e),p.matchesSelector&&E&&!S[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||p.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){S(t,!0)}return 0<se(t,T,null,[e]).length},se.contains=function(e,t){return(e.ownerDocument||e)!==T&&C(e),y(e,t)},se.attr=function(e,t){(e.ownerDocument||e)!==T&&C(e);var n=x.attrHandle[t.toLowerCase()],r=n&&L.call(x.attrHandle,t.toLowerCase())?n(e,t,!E):void 0;return void 0!==r?r:p.attributes||!E?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},se.escape=function(e){return(e+"").replace(re,ie)},se.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},se.uniqueSort=function(e){var t,n=[],r=0,i=0;if(l=!p.detectDuplicates,u=!p.sortStable&&e.slice(0),e.sort(D),l){while(t=e[i++])t===e[i]&&(r=n.push(i));while(r--)e.splice(n[r],1)}return u=null,e},o=se.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=o(e)}else if(3===i||4===i)return e.nodeValue}else while(t=e[r++])n+=o(t);return n},(x=se.selectors={cacheLength:50,createPseudo:le,match:Q,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return Q.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&V.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=d[e+" "];return t||(t=new RegExp("(^|"+R+")"+e+"("+R+"|$)"))&&d(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1<t.indexOf(i):"$="===r?i&&t.slice(-i.length)===i:"~="===r?-1<(" "+t.replace($," ")+" ").indexOf(i):"|="===r&&(t===i||t.slice(0,i.length+1)===i+"-"))}},CHILD:function(h,e,t,g,v){var y="nth"!==h.slice(0,3),m="last"!==h.slice(-4),b="of-type"===e;return 1===g&&0===v?function(e){return!!e.parentNode}:function(e,t,n){var r,i,o,a,s,u,l=y!==m?"nextSibling":"previousSibling",c=e.parentNode,f=b&&e.nodeName.toLowerCase(),d=!n&&!b,p=!1;if(c){if(y){while(l){a=e;while(a=a[l])if(b?a.nodeName.toLowerCase()===f:1===a.nodeType)return!1;u=l="only"===h&&!u&&"nextSibling"}return!0}if(u=[m?c.firstChild:c.lastChild],m&&d){p=(s=(r=(i=(o=(a=c)[N]||(a[N]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===A&&r[1])&&r[2],a=s&&c.childNodes[s];while(a=++s&&a&&a[l]||(p=s=0)||u.pop())if(1===a.nodeType&&++p&&a===e){i[h]=[A,s,p];break}}else if(d&&(p=s=(r=(i=(o=(a=e)[N]||(a[N]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===A&&r[1]),!1===p)while(a=++s&&a&&a[l]||(p=s=0)||u.pop())if((b?a.nodeName.toLowerCase()===f:1===a.nodeType)&&++p&&(d&&((i=(o=a[N]||(a[N]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]=[A,p]),a===e))break;return(p-=v)===g||p%g==0&&0<=p/g}}},PSEUDO:function(e,o){var t,a=x.pseudos[e]||x.setFilters[e.toLowerCase()]||se.error("unsupported pseudo: "+e);return a[N]?a(o):1<a.length?(t=[e,e,"",o],x.setFilters.hasOwnProperty(e.toLowerCase())?le(function(e,t){var n,r=a(e,o),i=r.length;while(i--)e[n=H(e,r[i])]=!(t[n]=r[i])}):function(e){return a(e,0,t)}):a}},pseudos:{not:le(function(e){var r=[],i=[],s=f(e.replace(F,"$1"));return s[N]?le(function(e,t,n,r){var i,o=s(e,null,r,[]),a=e.length;while(a--)(i=o[a])&&(e[a]=!(t[a]=i))}):function(e,t,n){return r[0]=e,s(r,null,n,i),r[0]=null,!i.pop()}}),has:le(function(t){return function(e){return 0<se(t,e).length}}),contains:le(function(t){return t=t.replace(te,ne),function(e){return-1<(e.textContent||o(e)).indexOf(t)}}),lang:le(function(n){return X.test(n||"")||se.error("unsupported lang: "+n),n=n.replace(te,ne).toLowerCase(),function(e){var t;do{if(t=E?e.lang:e.getAttribute("xml:lang")||e.getAttribute("lang"))return(t=t.toLowerCase())===n||0===t.indexOf(n+"-")}while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var t=n.location&&n.location.hash;return t&&t.slice(1)===e.id},root:function(e){return e===a},focus:function(e){return e===T.activeElement&&(!T.hasFocus||T.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ge(!1),disabled:ge(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!x.pseudos.empty(e)},header:function(e){return K.test(e.nodeName)},input:function(e){return G.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:ve(function(){return[0]}),last:ve(function(e,t){return[t-1]}),eq:ve(function(e,t,n){return[n<0?n+t:n]}),even:ve(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:ve(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:ve(function(e,t,n){for(var r=n<0?n+t:t<n?t:n;0<=--r;)e.push(r);return e}),gt:ve(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}}).pseudos.nth=x.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})x.pseudos[e]=pe(e);for(e in{submit:!0,reset:!0})x.pseudos[e]=he(e);function me(){}function be(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function xe(s,e,t){var u=e.dir,l=e.next,c=l||u,f=t&&"parentNode"===c,d=r++;return e.first?function(e,t,n){while(e=e[u])if(1===e.nodeType||f)return s(e,t,n);return!1}:function(e,t,n){var r,i,o,a=[A,d];if(n){while(e=e[u])if((1===e.nodeType||f)&&s(e,t,n))return!0}else while(e=e[u])if(1===e.nodeType||f)if(i=(o=e[N]||(e[N]={}))[e.uniqueID]||(o[e.uniqueID]={}),l&&l===e.nodeName.toLowerCase())e=e[u]||e;else{if((r=i[c])&&r[0]===A&&r[1]===d)return a[2]=r[2];if((i[c]=a)[2]=s(e,t,n))return!0}return!1}}function we(i){return 1<i.length?function(e,t,n){var r=i.length;while(r--)if(!i[r](e,t,n))return!1;return!0}:i[0]}function Ce(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function Te(p,h,g,v,y,e){return v&&!v[N]&&(v=Te(v)),y&&!y[N]&&(y=Te(y,e)),le(function(e,t,n,r){var i,o,a,s=[],u=[],l=t.length,c=e||function(e,t,n){for(var r=0,i=t.length;r<i;r++)se(e,t[r],n);return n}(h||"*",n.nodeType?[n]:n,[]),f=!p||!e&&h?c:Ce(c,s,p,n,r),d=g?y||(e?p:l||v)?[]:t:f;if(g&&g(f,d,n,r),v){i=Ce(d,u),v(i,[],n,r),o=i.length;while(o--)(a=i[o])&&(d[u[o]]=!(f[u[o]]=a))}if(e){if(y||p){if(y){i=[],o=d.length;while(o--)(a=d[o])&&i.push(f[o]=a);y(null,d=[],i,r)}o=d.length;while(o--)(a=d[o])&&-1<(i=y?H(e,a):s[o])&&(e[i]=!(t[i]=a))}}else d=Ce(d===t?d.splice(l,d.length):d),y?y(null,t,d,r):O.apply(t,d)})}function Ee(e){for(var i,t,n,r=e.length,o=x.relative[e[0].type],a=o||x.relative[" "],s=o?1:0,u=xe(function(e){return e===i},a,!0),l=xe(function(e){return-1<H(i,e)},a,!0),c=[function(e,t,n){var r=!o&&(n||t!==w)||((i=t).nodeType?u(e,t,n):l(e,t,n));return i=null,r}];s<r;s++)if(t=x.relative[e[s].type])c=[xe(we(c),t)];else{if((t=x.filter[e[s].type].apply(null,e[s].matches))[N]){for(n=++s;n<r;n++)if(x.relative[e[n].type])break;return Te(1<s&&we(c),1<s&&be(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace(F,"$1"),t,s<n&&Ee(e.slice(s,n)),n<r&&Ee(e=e.slice(n)),n<r&&be(e))}c.push(t)}return we(c)}return me.prototype=x.filters=x.pseudos,x.setFilters=new me,h=se.tokenize=function(e,t){var n,r,i,o,a,s,u,l=b[e+" "];if(l)return t?0:l.slice(0);a=e,s=[],u=x.preFilter;while(a){for(o in n&&!(r=z.exec(a))||(r&&(a=a.slice(r[0].length)||a),s.push(i=[])),n=!1,(r=_.exec(a))&&(n=r.shift(),i.push({value:n,type:r[0].replace(F," ")}),a=a.slice(n.length)),x.filter)!(r=Q[o].exec(a))||u[o]&&!(r=u[o](r))||(n=r.shift(),i.push({value:n,type:o,matches:r}),a=a.slice(n.length));if(!n)break}return t?a.length:a?se.error(e):b(e,s).slice(0)},f=se.compile=function(e,t){var n,v,y,m,b,r,i=[],o=[],a=k[e+" "];if(!a){t||(t=h(e)),n=t.length;while(n--)(a=Ee(t[n]))[N]?i.push(a):o.push(a);(a=k(e,(v=o,m=0<(y=i).length,b=0<v.length,r=function(e,t,n,r,i){var o,a,s,u=0,l="0",c=e&&[],f=[],d=w,p=e||b&&x.find.TAG("*",i),h=A+=null==d?1:Math.random()||.1,g=p.length;for(i&&(w=t===T||t||i);l!==g&&null!=(o=p[l]);l++){if(b&&o){a=0,t||o.ownerDocument===T||(C(o),n=!E);while(s=v[a++])if(s(o,t||T,n)){r.push(o);break}i&&(A=h)}m&&((o=!s&&o)&&u--,e&&c.push(o))}if(u+=l,m&&l!==u){a=0;while(s=y[a++])s(c,f,t,n);if(e){if(0<u)while(l--)c[l]||f[l]||(f[l]=j.call(r));f=Ce(f)}O.apply(r,f),i&&!e&&0<f.length&&1<u+y.length&&se.uniqueSort(r)}return i&&(A=h,w=d),c},m?le(r):r))).selector=e}return a},g=se.select=function(e,t,n,r){var i,o,a,s,u,l="function"==typeof e&&e,c=!r&&h(e=l.selector||e);if(n=n||[],1===c.length){if(2<(o=c[0]=c[0].slice(0)).length&&"ID"===(a=o[0]).type&&9===t.nodeType&&E&&x.relative[o[1].type]){if(!(t=(x.find.ID(a.matches[0].replace(te,ne),t)||[])[0]))return n;l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}i=Q.needsContext.test(e)?0:o.length;while(i--){if(a=o[i],x.relative[s=a.type])break;if((u=x.find[s])&&(r=u(a.matches[0].replace(te,ne),ee.test(o[0].type)&&ye(t.parentNode)||t))){if(o.splice(i,1),!(e=r.length&&be(o)))return O.apply(n,r),n;break}}}return(l||f(e,c))(r,t,!E,n,!t||ee.test(e)&&ye(t.parentNode)||t),n},p.sortStable=N.split("").sort(D).join("")===N,p.detectDuplicates=!!l,C(),p.sortDetached=ce(function(e){return 1&e.compareDocumentPosition(T.createElement("fieldset"))}),ce(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||fe("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),p.attributes&&ce(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||fe("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),ce(function(e){return null==e.getAttribute("disabled")})||fe(I,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),se}(g);E.find=h,E.expr=h.selectors,E.expr[":"]=E.expr.pseudos,E.uniqueSort=E.unique=h.uniqueSort,E.text=h.getText,E.isXMLDoc=h.isXML,E.contains=h.contains,E.escapeSelector=h.escape;var N=function(e,t,n){var r=[],i=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&E(e).is(n))break;r.push(e)}return r},A=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},k=E.expr.match.needsContext;function S(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var D=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function L(e,n,r){return x(n)?E.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?E.grep(e,function(e){return e===n!==r}):"string"!=typeof n?E.grep(e,function(e){return-1<i.call(n,e)!==r}):E.filter(n,e,r)}E.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?E.find.matchesSelector(r,e)?[r]:[]:E.find.matches(e,E.grep(t,function(e){return 1===e.nodeType}))},E.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(E(e).filter(function(){for(t=0;t<r;t++)if(E.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;t<r;t++)E.find(e,i[t],n);return 1<r?E.uniqueSort(n):n},filter:function(e){return this.pushStack(L(this,e||[],!1))},not:function(e){return this.pushStack(L(this,e||[],!0))},is:function(e){return!!L(this,"string"==typeof e&&k.test(e)?E(e):e||[],!1).length}});var j,q=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(E.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||j,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof E?t[0]:t,E.merge(this,E.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:v,!0)),D.test(r[1])&&E.isPlainObject(t))for(r in t)x(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=v.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):x(e)?void 0!==n.ready?n.ready(e):e(E):E.makeArray(e,this)}).prototype=E.fn,j=E(v);var O=/^(?:parents|prev(?:Until|All))/,P={children:!0,contents:!0,next:!0,prev:!0};function H(e,t){while((e=e[t])&&1!==e.nodeType);return e}E.fn.extend({has:function(e){var t=E(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(E.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&E(e);if(!k.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?-1<a.index(n):1===n.nodeType&&E.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(1<o.length?E.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?i.call(E(e),this[0]):i.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(E.uniqueSort(E.merge(this.get(),E(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),E.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return N(e,"parentNode")},parentsUntil:function(e,t,n){return N(e,"parentNode",n)},next:function(e){return H(e,"nextSibling")},prev:function(e){return H(e,"previousSibling")},nextAll:function(e){return N(e,"nextSibling")},prevAll:function(e){return N(e,"previousSibling")},nextUntil:function(e,t,n){return N(e,"nextSibling",n)},prevUntil:function(e,t,n){return N(e,"previousSibling",n)},siblings:function(e){return A((e.parentNode||{}).firstChild,e)},children:function(e){return A(e.firstChild)},contents:function(e){return"undefined"!=typeof e.contentDocument?e.contentDocument:(S(e,"template")&&(e=e.content||e),E.merge([],e.childNodes))}},function(r,i){E.fn[r]=function(e,t){var n=E.map(this,i,e);return"Until"!==r.slice(-5)&&(t=e),t&&"string"==typeof t&&(n=E.filter(t,n)),1<this.length&&(P[r]||E.uniqueSort(n),O.test(r)&&n.reverse()),this.pushStack(n)}});var I=/[^\x20\t\r\n\f]+/g;function R(e){return e}function B(e){throw e}function M(e,t,n,r){var i;try{e&&x(i=e.promise)?i.call(e).done(t).fail(n):e&&x(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}E.Callbacks=function(r){var e,n;r="string"==typeof r?(e=r,n={},E.each(e.match(I)||[],function(e,t){n[t]=!0}),n):E.extend({},r);var i,t,o,a,s=[],u=[],l=-1,c=function(){for(a=a||r.once,o=i=!0;u.length;l=-1){t=u.shift();while(++l<s.length)!1===s[l].apply(t[0],t[1])&&r.stopOnFalse&&(l=s.length,t=!1)}r.memory||(t=!1),i=!1,a&&(s=t?[]:"")},f={add:function(){return s&&(t&&!i&&(l=s.length-1,u.push(t)),function n(e){E.each(e,function(e,t){x(t)?r.unique&&f.has(t)||s.push(t):t&&t.length&&"string"!==T(t)&&n(t)})}(arguments),t&&!i&&c()),this},remove:function(){return E.each(arguments,function(e,t){var n;while(-1<(n=E.inArray(t,s,n)))s.splice(n,1),n<=l&&l--}),this},has:function(e){return e?-1<E.inArray(e,s):0<s.length},empty:function(){return s&&(s=[]),this},disable:function(){return a=u=[],s=t="",this},disabled:function(){return!s},lock:function(){return a=u=[],t||i||(s=t=""),this},locked:function(){return!!a},fireWith:function(e,t){return a||(t=[e,(t=t||[]).slice?t.slice():t],u.push(t),i||c()),this},fire:function(){return f.fireWith(this,arguments),this},fired:function(){return!!o}};return f},E.extend({Deferred:function(e){var o=[["notify","progress",E.Callbacks("memory"),E.Callbacks("memory"),2],["resolve","done",E.Callbacks("once memory"),E.Callbacks("once memory"),0,"resolved"],["reject","fail",E.Callbacks("once memory"),E.Callbacks("once memory"),1,"rejected"]],i="pending",a={state:function(){return i},always:function(){return s.done(arguments).fail(arguments),this},"catch":function(e){return a.then(null,e)},pipe:function(){var i=arguments;return E.Deferred(function(r){E.each(o,function(e,t){var n=x(i[t[4]])&&i[t[4]];s[t[1]](function(){var e=n&&n.apply(this,arguments);e&&x(e.promise)?e.promise().progress(r.notify).done(r.resolve).fail(r.reject):r[t[0]+"With"](this,n?[e]:arguments)})}),i=null}).promise()},then:function(t,n,r){var u=0;function l(i,o,a,s){return function(){var n=this,r=arguments,e=function(){var e,t;if(!(i<u)){if((e=a.apply(n,r))===o.promise())throw new TypeError("Thenable self-resolution");t=e&&("object"==typeof e||"function"==typeof e)&&e.then,x(t)?s?t.call(e,l(u,o,R,s),l(u,o,B,s)):(u++,t.call(e,l(u,o,R,s),l(u,o,B,s),l(u,o,R,o.notifyWith))):(a!==R&&(n=void 0,r=[e]),(s||o.resolveWith)(n,r))}},t=s?e:function(){try{e()}catch(e){E.Deferred.exceptionHook&&E.Deferred.exceptionHook(e,t.stackTrace),u<=i+1&&(a!==B&&(n=void 0,r=[e]),o.rejectWith(n,r))}};i?t():(E.Deferred.getStackHook&&(t.stackTrace=E.Deferred.getStackHook()),g.setTimeout(t))}}return E.Deferred(function(e){o[0][3].add(l(0,e,x(r)?r:R,e.notifyWith)),o[1][3].add(l(0,e,x(t)?t:R)),o[2][3].add(l(0,e,x(n)?n:B))}).promise()},promise:function(e){return null!=e?E.extend(e,a):a}},s={};return E.each(o,function(e,t){var n=t[2],r=t[5];a[t[1]]=n.add,r&&n.add(function(){i=r},o[3-e][2].disable,o[3-e][3].disable,o[0][2].lock,o[0][3].lock),n.add(t[3].fire),s[t[0]]=function(){return s[t[0]+"With"](this===s?void 0:this,arguments),this},s[t[0]+"With"]=n.fireWith}),a.promise(s),e&&e.call(s,s),s},when:function(e){var n=arguments.length,t=n,r=Array(t),i=s.call(arguments),o=E.Deferred(),a=function(t){return function(e){r[t]=this,i[t]=1<arguments.length?s.call(arguments):e,--n||o.resolveWith(r,i)}};if(n<=1&&(M(e,o.done(a(t)).resolve,o.reject,!n),"pending"===o.state()||x(i[t]&&i[t].then)))return o.then();while(t--)M(i[t],a(t),o.reject);return o.promise()}});var W=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;E.Deferred.exceptionHook=function(e,t){g.console&&g.console.warn&&e&&W.test(e.name)&&g.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},E.readyException=function(e){g.setTimeout(function(){throw e})};var $=E.Deferred();function F(){v.removeEventListener("DOMContentLoaded",F),g.removeEventListener("load",F),E.ready()}E.fn.ready=function(e){return $.then(e)["catch"](function(e){E.readyException(e)}),this},E.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--E.readyWait:E.isReady)||(E.isReady=!0)!==e&&0<--E.readyWait||$.resolveWith(v,[E])}}),E.ready.then=$.then,"complete"===v.readyState||"loading"!==v.readyState&&!v.documentElement.doScroll?g.setTimeout(E.ready):(v.addEventListener("DOMContentLoaded",F),g.addEventListener("load",F));var z=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if("object"===T(n))for(s in i=!0,n)z(e,t,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,x(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(E(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},_=/^-ms-/,U=/-([a-z])/g;function V(e,t){return t.toUpperCase()}function X(e){return e.replace(_,"ms-").replace(U,V)}var Q=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function Y(){this.expando=E.expando+Y.uid++}Y.uid=1,Y.prototype={cache:function(e){var t=e[this.expando];return t||(t={},Q(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[X(t)]=n;else for(r in t)i[X(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][X(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(X):(t=X(t))in r?[t]:t.match(I)||[]).length;while(n--)delete r[t[n]]}(void 0===t||E.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!E.isEmptyObject(t)}};var G=new Y,K=new Y,J=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,Z=/[A-Z]/g;function ee(e,t,n){var r,i;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(Z,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n="true"===(i=n)||"false"!==i&&("null"===i?null:i===+i+""?+i:J.test(i)?JSON.parse(i):i)}catch(e){}K.set(e,t,n)}else n=void 0;return n}E.extend({hasData:function(e){return K.hasData(e)||G.hasData(e)},data:function(e,t,n){return K.access(e,t,n)},removeData:function(e,t){K.remove(e,t)},_data:function(e,t,n){return G.access(e,t,n)},_removeData:function(e,t){G.remove(e,t)}}),E.fn.extend({data:function(n,e){var t,r,i,o=this[0],a=o&&o.attributes;if(void 0===n){if(this.length&&(i=K.get(o),1===o.nodeType&&!G.get(o,"hasDataAttrs"))){t=a.length;while(t--)a[t]&&0===(r=a[t].name).indexOf("data-")&&(r=X(r.slice(5)),ee(o,r,i[r]));G.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof n?this.each(function(){K.set(this,n)}):z(this,function(e){var t;if(o&&void 0===e)return void 0!==(t=K.get(o,n))?t:void 0!==(t=ee(o,n))?t:void 0;this.each(function(){K.set(this,n,e)})},null,e,1<arguments.length,null,!0)},removeData:function(e){return this.each(function(){K.remove(this,e)})}}),E.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=G.get(e,t),n&&(!r||Array.isArray(n)?r=G.access(e,t,E.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=E.queue(e,t),r=n.length,i=n.shift(),o=E._queueHooks(e,t);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,function(){E.dequeue(e,t)},o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return G.get(e,n)||G.access(e,n,{empty:E.Callbacks("once memory").add(function(){G.remove(e,[t+"queue",n])})})}}),E.fn.extend({queue:function(t,n){var e=2;return"string"!=typeof t&&(n=t,t="fx",e--),arguments.length<e?E.queue(this[0],t):void 0===n?this:this.each(function(){var e=E.queue(this,t,n);E._queueHooks(this,t),"fx"===t&&"inprogress"!==e[0]&&E.dequeue(this,t)})},dequeue:function(e){return this.each(function(){E.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=E.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};"string"!=typeof e&&(t=e,e=void 0),e=e||"fx";while(a--)(n=G.get(o[a],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var te=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,ne=new RegExp("^(?:([+-])=|)("+te+")([a-z%]*)$","i"),re=["Top","Right","Bottom","Left"],ie=v.documentElement,oe=function(e){return E.contains(e.ownerDocument,e)},ae={composed:!0};ie.getRootNode&&(oe=function(e){return E.contains(e.ownerDocument,e)||e.getRootNode(ae)===e.ownerDocument});var se=function(e,t){return"none"===(e=t||e).style.display||""===e.style.display&&oe(e)&&"none"===E.css(e,"display")},ue=function(e,t,n,r){var i,o,a={};for(o in t)a[o]=e.style[o],e.style[o]=t[o];for(o in i=n.apply(e,r||[]),t)e.style[o]=a[o];return i};var le={};function ce(e,t){for(var n,r,i,o,a,s,u,l=[],c=0,f=e.length;c<f;c++)(r=e[c]).style&&(n=r.style.display,t?("none"===n&&(l[c]=G.get(r,"display")||null,l[c]||(r.style.display="")),""===r.style.display&&se(r)&&(l[c]=(u=a=o=void 0,a=(i=r).ownerDocument,s=i.nodeName,(u=le[s])||(o=a.body.appendChild(a.createElement(s)),u=E.css(o,"display"),o.parentNode.removeChild(o),"none"===u&&(u="block"),le[s]=u)))):"none"!==n&&(l[c]="none",G.set(r,"display",n)));for(c=0;c<f;c++)null!=l[c]&&(e[c].style.display=l[c]);return e}E.fn.extend({show:function(){return ce(this,!0)},hide:function(){return ce(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){se(this)?E(this).show():E(this).hide()})}});var fe=/^(?:checkbox|radio)$/i,de=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,pe=/^$|^module$|\/(?:java|ecma)script/i,he={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function ge(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&S(e,t)?E.merge([e],n):n}function ve(e,t){for(var n=0,r=e.length;n<r;n++)G.set(e[n],"globalEval",!t||G.get(t[n],"globalEval"))}he.optgroup=he.option,he.tbody=he.tfoot=he.colgroup=he.caption=he.thead,he.th=he.td;var ye,me,be=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),d=[],p=0,h=e.length;p<h;p++)if((o=e[p])||0===o)if("object"===T(o))E.merge(d,o.nodeType?[o]:o);else if(be.test(o)){a=a||f.appendChild(t.createElement("div")),s=(de.exec(o)||["",""])[1].toLowerCase(),u=he[s]||he._default,a.innerHTML=u[1]+E.htmlPrefilter(o)+u[2],c=u[0];while(c--)a=a.lastChild;E.merge(d,a.childNodes),(a=f.firstChild).textContent=""}else d.push(t.createTextNode(o));f.textContent="",p=0;while(o=d[p++])if(r&&-1<E.inArray(o,r))i&&i.push(o);else if(l=oe(o),a=ge(f.appendChild(o),"script"),l&&ve(a),n){c=0;while(o=a[c++])pe.test(o.type||"")&&n.push(o)}return f}ye=v.createDocumentFragment().appendChild(v.createElement("div")),(me=v.createElement("input")).setAttribute("type","radio"),me.setAttribute("checked","checked"),me.setAttribute("name","t"),ye.appendChild(me),b.checkClone=ye.cloneNode(!0).cloneNode(!0).lastChild.checked,ye.innerHTML="<textarea>x</textarea>",b.noCloneChecked=!!ye.cloneNode(!0).lastChild.defaultValue;var we=/^key/,Ce=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Te=/^([^.]*)(?:\.(.+)|)/;function Ee(){return!0}function Ne(){return!1}function Ae(e,t){return e===function(){try{return v.activeElement}catch(e){}}()==("focus"===t)}function ke(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)ke(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Ne;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return E().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=E.guid++)),e.each(function(){E.event.add(this,t,i,r,n)})}function Se(e,i,o){o?(G.set(e,i,!1),E.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=G.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(E.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),G.set(this,i,r),t=o(this,i),this[i](),r!==(n=G.get(this,i))||t?G.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n.value}else r.length&&(G.set(this,i,{value:E.event.trigger(E.extend(r[0],E.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===G.get(e,i)&&E.event.add(e,i,Ee)}E.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,d,p,h,g,v=G.get(t);if(v){n.handler&&(n=(o=n).handler,i=o.selector),i&&E.find.matchesSelector(ie,i),n.guid||(n.guid=E.guid++),(u=v.events)||(u=v.events={}),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof E&&E.event.triggered!==e.type?E.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(I)||[""]).length;while(l--)p=g=(s=Te.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),p&&(f=E.event.special[p]||{},p=(i?f.delegateType:f.bindType)||p,f=E.event.special[p]||{},c=E.extend({type:p,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&E.expr.match.needsContext.test(i),namespace:h.join(".")},o),(d=u[p])||((d=u[p]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(p,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?d.splice(d.delegateCount++,0,c):d.push(c),E.event.global[p]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,d,p,h,g,v=G.hasData(e)&&G.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(I)||[""]).length;while(l--)if(p=g=(s=Te.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),p){f=E.event.special[p]||{},d=u[p=(r?f.delegateType:f.bindType)||p]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=d.length;while(o--)c=d[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(d.splice(o,1),c.selector&&d.delegateCount--,f.remove&&f.remove.call(e,c));a&&!d.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||E.removeEvent(e,p,v.handle),delete u[p])}else for(p in u)E.event.remove(e,p+t[l],n,r,!0);E.isEmptyObject(u)&&G.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=E.event.fix(e),u=new Array(arguments.length),l=(G.get(this,"events")||{})[s.type]||[],c=E.event.special[s.type]||{};for(u[0]=s,t=1;t<arguments.length;t++)u[t]=arguments[t];if(s.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,s)){a=E.event.handlers.call(this,s,l),t=0;while((i=a[t++])&&!s.isPropagationStopped()){s.currentTarget=i.elem,n=0;while((o=i.handlers[n++])&&!s.isImmediatePropagationStopped())s.rnamespace&&!1!==o.namespace&&!s.rnamespace.test(o.namespace)||(s.handleObj=o,s.data=o.data,void 0!==(r=((E.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,u))&&!1===(s.result=r)&&(s.preventDefault(),s.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,s),s.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,l=e.target;if(u&&l.nodeType&&!("click"===e.type&&1<=e.button))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<u;n++)void 0===a[i=(r=t[n]).selector+" "]&&(a[i]=r.needsContext?-1<E(i,this).index(l):E.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u<t.length&&s.push({elem:l,handlers:t.slice(u)}),s},addProp:function(t,e){Object.defineProperty(E.Event.prototype,t,{enumerable:!0,configurable:!0,get:x(e)?function(){if(this.originalEvent)return e(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[t]},set:function(e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e})}})},fix:function(e){return e[E.expando]?e:new E.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return fe.test(t.type)&&t.click&&S(t,"input")&&Se(t,"click",Ee),!1},trigger:function(e){var t=this||e;return fe.test(t.type)&&t.click&&S(t,"input")&&Se(t,"click"),!0},_default:function(e){var t=e.target;return fe.test(t.type)&&t.click&&S(t,"input")&&G.get(t,"click")||S(t,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},E.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},E.Event=function(e,t){if(!(this instanceof E.Event))return new E.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?Ee:Ne,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&E.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[E.expando]=!0},E.Event.prototype={constructor:E.Event,isDefaultPrevented:Ne,isPropagationStopped:Ne,isImmediatePropagationStopped:Ne,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=Ee,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=Ee,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=Ee,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},E.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,"char":!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(e){var t=e.button;return null==e.which&&we.test(e.type)?null!=e.charCode?e.charCode:e.keyCode:!e.which&&void 0!==t&&Ce.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},E.event.addProp),E.each({focus:"focusin",blur:"focusout"},function(e,t){E.event.special[e]={setup:function(){return Se(this,e,Ae),!1},trigger:function(){return Se(this,e),!0},delegateType:t}}),E.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,i){E.event.special[e]={delegateType:i,bindType:i,handle:function(e){var t,n=e.relatedTarget,r=e.handleObj;return n&&(n===this||E.contains(this,n))||(e.type=r.origType,t=r.handler.apply(this,arguments),e.type=i),t}}}),E.fn.extend({on:function(e,t,n,r){return ke(this,e,t,n,r)},one:function(e,t,n,r){return ke(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,E(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=Ne),this.each(function(){E.event.remove(this,e,n,t)})}});var De=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,Le=/<script|<style|<link/i,je=/checked\s*(?:[^=]|=\s*.checked.)/i,qe=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function Oe(e,t){return S(e,"table")&&S(11!==t.nodeType?t:t.firstChild,"tr")&&E(e).children("tbody")[0]||e}function Pe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function He(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Ie(e,t){var n,r,i,o,a,s,u,l;if(1===t.nodeType){if(G.hasData(e)&&(o=G.access(e),a=G.set(t,o),l=o.events))for(i in delete a.handle,a.events={},l)for(n=0,r=l[i].length;n<r;n++)E.event.add(t,i,l[i][n]);K.hasData(e)&&(s=K.access(e),u=E.extend({},s),K.set(t,u))}}function Re(n,r,i,o){r=y.apply([],r);var e,t,a,s,u,l,c=0,f=n.length,d=f-1,p=r[0],h=x(p);if(h||1<f&&"string"==typeof p&&!b.checkClone&&je.test(p))return n.each(function(e){var t=n.eq(e);h&&(r[0]=p.call(this,e,t.html())),Re(t,r,i,o)});if(f&&(t=(e=xe(r,n[0].ownerDocument,!1,n,o)).firstChild,1===e.childNodes.length&&(e=t),t||o)){for(s=(a=E.map(ge(e,"script"),Pe)).length;c<f;c++)u=e,c!==d&&(u=E.clone(u,!0,!0),s&&E.merge(a,ge(u,"script"))),i.call(n[c],u,c);if(s)for(l=a[a.length-1].ownerDocument,E.map(a,He),c=0;c<s;c++)u=a[c],pe.test(u.type||"")&&!G.access(u,"globalEval")&&E.contains(l,u)&&(u.src&&"module"!==(u.type||"").toLowerCase()?E._evalUrl&&!u.noModule&&E._evalUrl(u.src,{nonce:u.nonce||u.getAttribute("nonce")}):C(u.textContent.replace(qe,""),u,l))}return n}function Be(e,t,n){for(var r,i=t?E.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||E.cleanData(ge(r)),r.parentNode&&(n&&oe(r)&&ve(ge(r,"script")),r.parentNode.removeChild(r));return e}E.extend({htmlPrefilter:function(e){return e.replace(De,"<$1></$2>")},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=oe(e);if(!(b.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||E.isXMLDoc(e)))for(a=ge(c),r=0,i=(o=ge(e)).length;r<i;r++)s=o[r],u=a[r],void 0,"input"===(l=u.nodeName.toLowerCase())&&fe.test(s.type)?u.checked=s.checked:"input"!==l&&"textarea"!==l||(u.defaultValue=s.defaultValue);if(t)if(n)for(o=o||ge(e),a=a||ge(c),r=0,i=o.length;r<i;r++)Ie(o[r],a[r]);else Ie(e,c);return 0<(a=ge(c,"script")).length&&ve(a,!f&&ge(e,"script")),c},cleanData:function(e){for(var t,n,r,i=E.event.special,o=0;void 0!==(n=e[o]);o++)if(Q(n)){if(t=n[G.expando]){if(t.events)for(r in t.events)i[r]?E.event.remove(n,r):E.removeEvent(n,r,t.handle);n[G.expando]=void 0}n[K.expando]&&(n[K.expando]=void 0)}}}),E.fn.extend({detach:function(e){return Be(this,e,!0)},remove:function(e){return Be(this,e)},text:function(e){return z(this,function(e){return void 0===e?E.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return Re(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||Oe(this,e).appendChild(e)})},prepend:function(){return Re(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Oe(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return Re(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return Re(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(E.cleanData(ge(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return E.clone(this,e,t)})},html:function(e){return z(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!Le.test(e)&&!he[(de.exec(e)||["",""])[1].toLowerCase()]){e=E.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(E.cleanData(ge(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var n=[];return Re(this,arguments,function(e){var t=this.parentNode;E.inArray(this,n)<0&&(E.cleanData(ge(this)),t&&t.replaceChild(e,this))},n)}}),E.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,a){E.fn[e]=function(e){for(var t,n=[],r=E(e),i=r.length-1,o=0;o<=i;o++)t=o===i?this:this.clone(!0),E(r[o])[a](t),u.apply(n,t.get());return this.pushStack(n)}});var Me=new RegExp("^("+te+")(?!px)[a-z%]+$","i"),We=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=g),t.getComputedStyle(e)},$e=new RegExp(re.join("|"),"i");function Fe(e,t,n){var r,i,o,a,s=e.style;return(n=n||We(e))&&(""!==(a=n.getPropertyValue(t)||n[t])||oe(e)||(a=E.style(e,t)),!b.pixelBoxStyles()&&Me.test(a)&&$e.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function ze(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function e(){if(u){s.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",u.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",ie.appendChild(s).appendChild(u);var e=g.getComputedStyle(u);n="1%"!==e.top,a=12===t(e.marginLeft),u.style.right="60%",o=36===t(e.right),r=36===t(e.width),u.style.position="absolute",i=12===t(u.offsetWidth/3),ie.removeChild(s),u=null}}function t(e){return Math.round(parseFloat(e))}var n,r,i,o,a,s=v.createElement("div"),u=v.createElement("div");u.style&&(u.style.backgroundClip="content-box",u.cloneNode(!0).style.backgroundClip="",b.clearCloneStyle="content-box"===u.style.backgroundClip,E.extend(b,{boxSizingReliable:function(){return e(),r},pixelBoxStyles:function(){return e(),o},pixelPosition:function(){return e(),n},reliableMarginLeft:function(){return e(),a},scrollboxSize:function(){return e(),i}}))}();var _e=["Webkit","Moz","ms"],Ue=v.createElement("div").style,Ve={};function Xe(e){var t=E.cssProps[e]||Ve[e];return t||(e in Ue?e:Ve[e]=function(e){var t=e[0].toUpperCase()+e.slice(1),n=_e.length;while(n--)if((e=_e[n]+t)in Ue)return e}(e)||e)}var Qe,Ye,Ge=/^(none|table(?!-c[ea]).+)/,Ke=/^--/,Je={position:"absolute",visibility:"hidden",display:"block"},Ze={letterSpacing:"0",fontWeight:"400"};function et(e,t,n){var r=ne.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function tt(e,t,n,r,i,o){var a="width"===t?1:0,s=0,u=0;if(n===(r?"border":"content"))return 0;for(;a<4;a+=2)"margin"===n&&(u+=E.css(e,n+re[a],!0,i)),r?("content"===n&&(u-=E.css(e,"padding"+re[a],!0,i)),"margin"!==n&&(u-=E.css(e,"border"+re[a]+"Width",!0,i))):(u+=E.css(e,"padding"+re[a],!0,i),"padding"!==n?u+=E.css(e,"border"+re[a]+"Width",!0,i):s+=E.css(e,"border"+re[a]+"Width",!0,i));return!r&&0<=o&&(u+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-u-s-.5))||0),u}function nt(e,t,n){var r=We(e),i=(!b.boxSizingReliable()||n)&&"border-box"===E.css(e,"boxSizing",!1,r),o=i,a=Fe(e,t,r),s="offset"+t[0].toUpperCase()+t.slice(1);if(Me.test(a)){if(!n)return a;a="auto"}return(!b.boxSizingReliable()&&i||"auto"===a||!parseFloat(a)&&"inline"===E.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===E.css(e,"boxSizing",!1,r),(o=s in e)&&(a=e[s])),(a=parseFloat(a)||0)+tt(e,t,n||(i?"border":"content"),o,r,a)+"px"}E.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Fe(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=X(t),u=Ke.test(t),l=e.style;if(u||(t=Xe(s)),a=E.cssHooks[t]||E.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"===(o=typeof n)&&(i=ne.exec(n))&&i[1]&&(n=function(e,t,n,r){var i,o,a=20,s=r?function(){return r.cur()}:function(){return E.css(e,t,"")},u=s(),l=n&&n[3]||(E.cssNumber[t]?"":"px"),c=e.nodeType&&(E.cssNumber[t]||"px"!==l&&+u)&&ne.exec(E.css(e,t));if(c&&c[3]!==l){u/=2,l=l||c[3],c=+u||1;while(a--)E.style(e,t,c+l),(1-o)*(1-(o=s()/u||.5))<=0&&(a=0),c/=o;c*=2,E.style(e,t,c+l),n=n||[]}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}(e,t,i),o="number"),null!=n&&n==n&&("number"!==o||u||(n+=i&&i[3]||(E.cssNumber[s]?"":"px")),b.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=X(t);return Ke.test(t)||(t=Xe(s)),(a=E.cssHooks[t]||E.cssHooks[s])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=Fe(e,t,r)),"normal"===i&&t in Ze&&(i=Ze[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),E.each(["height","width"],function(e,u){E.cssHooks[u]={get:function(e,t,n){if(t)return!Ge.test(E.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?nt(e,u,n):ue(e,Je,function(){return nt(e,u,n)})},set:function(e,t,n){var r,i=We(e),o=!b.scrollboxSize()&&"absolute"===i.position,a=(o||n)&&"border-box"===E.css(e,"boxSizing",!1,i),s=n?tt(e,u,n,a,i):0;return a&&o&&(s-=Math.ceil(e["offset"+u[0].toUpperCase()+u.slice(1)]-parseFloat(i[u])-tt(e,u,"border",!1,i)-.5)),s&&(r=ne.exec(t))&&"px"!==(r[3]||"px")&&(e.style[u]=t,t=E.css(e,u)),et(0,t,s)}}}),E.cssHooks.marginLeft=ze(b.reliableMarginLeft,function(e,t){if(t)return(parseFloat(Fe(e,"marginLeft"))||e.getBoundingClientRect().left-ue(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),E.each({margin:"",padding:"",border:"Width"},function(i,o){E.cssHooks[i+o]={expand:function(e){for(var t=0,n={},r="string"==typeof e?e.split(" "):[e];t<4;t++)n[i+re[t]+o]=r[t]||r[t-2]||r[0];return n}},"margin"!==i&&(E.cssHooks[i+o].set=et)}),E.fn.extend({css:function(e,t){return z(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=We(e),i=t.length;a<i;a++)o[t[a]]=E.css(e,t[a],!1,r);return o}return void 0!==n?E.style(e,t,n):E.css(e,t)},e,t,1<arguments.length)}}),E.fn.delay=function(r,e){return r=E.fx&&E.fx.speeds[r]||r,e=e||"fx",this.queue(e,function(e,t){var n=g.setTimeout(e,r);t.stop=function(){g.clearTimeout(n)}})},Qe=v.createElement("input"),Ye=v.createElement("select").appendChild(v.createElement("option")),Qe.type="checkbox",b.checkOn=""!==Qe.value,b.optSelected=Ye.selected,(Qe=v.createElement("input")).value="t",Qe.type="radio",b.radioValue="t"===Qe.value;var rt,it=E.expr.attrHandle;E.fn.extend({attr:function(e,t){return z(this,E.attr,e,t,1<arguments.length)},removeAttr:function(e){return this.each(function(){E.removeAttr(this,e)})}}),E.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?E.prop(e,t,n):(1===o&&E.isXMLDoc(e)||(i=E.attrHooks[t.toLowerCase()]||(E.expr.match.bool.test(t)?rt:void 0)),void 0!==n?null===n?void E.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=E.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!b.radioValue&&"radio"===t&&S(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(I);if(i&&1===e.nodeType)while(n=i[r++])e.removeAttribute(n)}}),rt={set:function(e,t,n){return!1===t?E.removeAttr(e,n):e.setAttribute(n,n),n}},E.each(E.expr.match.bool.source.match(/\w+/g),function(e,t){var a=it[t]||E.find.attr;it[t]=function(e,t,n){var r,i,o=t.toLowerCase();return n||(i=it[o],it[o]=r,r=null!=a(e,t,n)?o:null,it[o]=i),r}});var ot=/^(?:input|select|textarea|button)$/i,at=/^(?:a|area)$/i;function st(e){return(e.match(I)||[]).join(" ")}function ut(e){return e.getAttribute&&e.getAttribute("class")||""}function lt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(I)||[]}E.fn.extend({prop:function(e,t){return z(this,E.prop,e,t,1<arguments.length)},removeProp:function(e){return this.each(function(){delete this[E.propFix[e]||e]})}}),E.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&E.isXMLDoc(e)||(t=E.propFix[t]||t,i=E.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=E.find.attr(e,"tabindex");return t?parseInt(t,10):ot.test(e.nodeName)||at.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),b.optSelected||(E.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),E.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){E.propFix[this.toLowerCase()]=this}),E.fn.extend({addClass:function(t){var e,n,r,i,o,a,s,u=0;if(x(t))return this.each(function(e){E(this).addClass(t.call(this,e,ut(this)))});if((e=lt(t)).length)while(n=this[u++])if(i=ut(n),r=1===n.nodeType&&" "+st(i)+" "){a=0;while(o=e[a++])r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(s=st(r))&&n.setAttribute("class",s)}return this},removeClass:function(t){var e,n,r,i,o,a,s,u=0;if(x(t))return this.each(function(e){E(this).removeClass(t.call(this,e,ut(this)))});if(!arguments.length)return this.attr("class","");if((e=lt(t)).length)while(n=this[u++])if(i=ut(n),r=1===n.nodeType&&" "+st(i)+" "){a=0;while(o=e[a++])while(-1<r.indexOf(" "+o+" "))r=r.replace(" "+o+" "," ");i!==(s=st(r))&&n.setAttribute("class",s)}return this},toggleClass:function(i,t){var o=typeof i,a="string"===o||Array.isArray(i);return"boolean"==typeof t&&a?t?this.addClass(i):this.removeClass(i):x(i)?this.each(function(e){E(this).toggleClass(i.call(this,e,ut(this),t),t)}):this.each(function(){var e,t,n,r;if(a){t=0,n=E(this),r=lt(i);while(e=r[t++])n.hasClass(e)?n.removeClass(e):n.addClass(e)}else void 0!==i&&"boolean"!==o||((e=ut(this))&&G.set(this,"__className__",e),this.setAttribute&&this.setAttribute("class",e||!1===i?"":G.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&-1<(" "+st(ut(n))+" ").indexOf(t))return!0;return!1}});var ct=/\r/g;E.fn.extend({val:function(n){var r,e,i,t=this[0];return arguments.length?(i=x(n),this.each(function(e){var t;1===this.nodeType&&(null==(t=i?n.call(this,e,E(this).val()):n)?t="":"number"==typeof t?t+="":Array.isArray(t)&&(t=E.map(t,function(e){return null==e?"":e+""})),(r=E.valHooks[this.type]||E.valHooks[this.nodeName.toLowerCase()])&&"set"in r&&void 0!==r.set(this,t,"value")||(this.value=t))})):t?(r=E.valHooks[t.type]||E.valHooks[t.nodeName.toLowerCase()])&&"get"in r&&void 0!==(e=r.get(t,"value"))?e:"string"==typeof(e=t.value)?e.replace(ct,""):null==e?"":e:void 0}}),E.extend({valHooks:{option:{get:function(e){var t=E.find.attr(e,"value");return null!=t?t:st(E.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!S(n.parentNode,"optgroup"))){if(t=E(n).val(),a)return t;s.push(t)}return s},set:function(e,t){var n,r,i=e.options,o=E.makeArray(t),a=i.length;while(a--)((r=i[a]).selected=-1<E.inArray(E.valHooks.option.get(r),o))&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),E.each(["radio","checkbox"],function(){E.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=-1<E.inArray(E(e).val(),t)}},b.checkOn||(E.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),b.focusin="onfocusin"in g;var ft=/^(?:focusinfocus|focusoutblur)$/,dt=function(e){e.stopPropagation()};E.extend(E.event,{trigger:function(e,t,n,r){var i,o,a,s,u,l,c,f,d=[n||v],p=m.call(e,"type")?e.type:e,h=m.call(e,"namespace")?e.namespace.split("."):[];if(o=f=a=n=n||v,3!==n.nodeType&&8!==n.nodeType&&!ft.test(p+E.event.triggered)&&(-1<p.indexOf(".")&&(p=(h=p.split(".")).shift(),h.sort()),u=p.indexOf(":")<0&&"on"+p,(e=e[E.expando]?e:new E.Event(p,"object"==typeof e&&e)).isTrigger=r?2:3,e.namespace=h.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:E.makeArray(t,[e]),c=E.event.special[p]||{},r||!c.trigger||!1!==c.trigger.apply(n,t))){if(!r&&!c.noBubble&&!w(n)){for(s=c.delegateType||p,ft.test(s+p)||(o=o.parentNode);o;o=o.parentNode)d.push(o),a=o;a===(n.ownerDocument||v)&&d.push(a.defaultView||a.parentWindow||g)}i=0;while((o=d[i++])&&!e.isPropagationStopped())f=o,e.type=1<i?s:c.bindType||p,(l=(G.get(o,"events")||{})[e.type]&&G.get(o,"handle"))&&l.apply(o,t),(l=u&&o[u])&&l.apply&&Q(o)&&(e.result=l.apply(o,t),!1===e.result&&e.preventDefault());return e.type=p,r||e.isDefaultPrevented()||c._default&&!1!==c._default.apply(d.pop(),t)||!Q(n)||u&&x(n[p])&&!w(n)&&((a=n[u])&&(n[u]=null),E.event.triggered=p,e.isPropagationStopped()&&f.addEventListener(p,dt),n[p](),e.isPropagationStopped()&&f.removeEventListener(p,dt),E.event.triggered=void 0,a&&(n[u]=a)),e.result}},simulate:function(e,t,n){var r=E.extend(new E.Event,n,{type:e,isSimulated:!0});E.event.trigger(r,null,t)}}),E.fn.extend({trigger:function(e,t){return this.each(function(){E.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return E.event.trigger(e,t,n,!0)}}),b.focusin||E.each({focus:"focusin",blur:"focusout"},function(n,r){var i=function(e){E.event.simulate(r,e.target,E.event.fix(e))};E.event.special[r]={setup:function(){var e=this.ownerDocument||this,t=G.access(e,r);t||e.addEventListener(n,i,!0),G.access(e,r,(t||0)+1)},teardown:function(){var e=this.ownerDocument||this,t=G.access(e,r)-1;t?G.access(e,r,t):(e.removeEventListener(n,i,!0),G.remove(e,r))}}});var pt,ht=/\[\]$/,gt=/\r?\n/g,vt=/^(?:submit|button|image|reset|file)$/i,yt=/^(?:input|select|textarea|keygen)/i;function mt(n,e,r,i){var t;if(Array.isArray(e))E.each(e,function(e,t){r||ht.test(n)?i(n,t):mt(n+"["+("object"==typeof t&&null!=t?e:"")+"]",t,r,i)});else if(r||"object"!==T(e))i(n,e);else for(t in e)mt(n+"["+t+"]",e[t],r,i)}E.param=function(e,t){var n,r=[],i=function(e,t){var n=x(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!E.isPlainObject(e))E.each(e,function(){i(this.name,this.value)});else for(n in e)mt(n,e[n],t,i);return r.join("&")},E.fn.extend({serialize:function(){return E.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=E.prop(this,"elements");return e?E.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!E(this).is(":disabled")&&yt.test(this.nodeName)&&!vt.test(e)&&(this.checked||!fe.test(e))}).map(function(e,t){var n=E(this).val();return null==n?null:Array.isArray(n)?E.map(n,function(e){return{name:t.name,value:e.replace(gt,"\r\n")}}):{name:t.name,value:n.replace(gt,"\r\n")}}).get()}}),E.fn.extend({wrapAll:function(e){var t;return this[0]&&(x(e)&&(e=e.call(this[0])),t=E(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(n){return x(n)?this.each(function(e){E(this).wrapInner(n.call(this,e))}):this.each(function(){var e=E(this),t=e.contents();t.length?t.wrapAll(n):e.append(n)})},wrap:function(t){var n=x(t);return this.each(function(e){E(this).wrapAll(n?t.call(this,e):t)})},unwrap:function(e){return this.parent(e).not("body").each(function(){E(this).replaceWith(this.childNodes)}),this}}),E.expr.pseudos.hidden=function(e){return!E.expr.pseudos.visible(e)},E.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},b.createHTMLDocument=((pt=v.implementation.createHTMLDocument("").body).innerHTML="<form></form><form></form>",2===pt.childNodes.length),E.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(b.createHTMLDocument?((r=(t=v.implementation.createHTMLDocument("")).createElement("base")).href=v.location.href,t.head.appendChild(r)):t=v),o=!n&&[],(i=D.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&E(o).remove(),E.merge([],i.childNodes)));var r,i,o},E.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=E.css(e,"position"),c=E(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=E.css(e,"top"),u=E.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),x(t)&&(t=t.call(e,n,E.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},E.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){E.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===E.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===E.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=E(e).offset()).top+=E.css(e,"borderTopWidth",!0),i.left+=E.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-E.css(r,"marginTop",!0),left:t.left-i.left-E.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===E.css(e,"position"))e=e.offsetParent;return e||ie})}}),E.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;E.fn[t]=function(e){return z(this,function(e,t,n){var r;if(w(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),E.each(["top","left"],function(e,n){E.cssHooks[n]=ze(b.pixelPosition,function(e,t){if(t)return t=Fe(e,n),Me.test(t)?E(e).position()[n]+"px":t})}),E.each({Height:"height",Width:"width"},function(a,s){E.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){E.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return z(this,function(e,t,n){var r;return w(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?E.css(e,t,i):E.style(e,t,n,i)},s,n?e:void 0,n)}})}),E.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){E.fn[n]=function(e,t){return 0<arguments.length?this.on(n,null,e,t):this.trigger(n)}}),E.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),E.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}}),E.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),x(e))return r=s.call(arguments,2),(i=function(){return e.apply(t||this,r.concat(s.call(arguments)))}).guid=e.guid=e.guid||E.guid++,i},E.holdReady=function(e){e?E.readyWait++:E.ready(!0)},E.isArray=Array.isArray,E.parseJSON=JSON.parse,E.nodeName=S,E.isFunction=x,E.isWindow=w,E.camelCase=X,E.type=T,E.now=Date.now,E.isNumeric=function(e){var t=E.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},"function"==typeof define&&define.amd&&define("jquery",[],function(){return E});var bt=g.jQuery,xt=g.$;return E.noConflict=function(e){return g.$===E&&(g.$=xt),e&&g.jQuery===E&&(g.jQuery=bt),E},e||(g.jQuery=g.$=E),E}); diff --git a/assets/js/toggleSidebar.js b/assets/js/toggleSidebar.js new file mode 100644 index 0000000..4059d06 --- /dev/null +++ b/assets/js/toggleSidebar.js @@ -0,0 +1,37 @@ +const sidebar = document.querySelector(".sidebar"); +const myModal = new bootstrap.Modal(document.getElementById("popupMenu")); +const breakpointLg = 992; + +function toggle() { + const w = $(this).width(); + if (w < breakpointLg) { + myModal.toggle(); + } else { + if (sidebar.classList.contains("vlabs-hidden")) { + sidebar.classList.remove("vlabs-hidden"); + } else { + sidebar.classList.add("vlabs-hidden"); + } + } +} + +function simulationHeaderToggle() { + const dropdown = document.querySelector( + ".simulation-header .dropdown .backdrop" + ); + if (dropdown.classList.contains("vlabs-hidden")) { + dropdown.classList.remove("vlabs-hidden"); + } else { + dropdown.classList.add("vlabs-hidden"); + } +} + +if (document.querySelector(".simulation-header")) { + window.addEventListener("click", ({ target }) => { + if (!(target.closest(".navbar-toggler") || target.closest(".nav-menu"))) { + document + .querySelector(".simulation-header .dropdown .backdrop") + .classList.add("vlabs-hidden"); + } + }); +} diff --git a/assets/js/webcomponents-loader.min.js b/assets/js/webcomponents-loader.min.js new file mode 100644 index 0000000..5a27c30 --- /dev/null +++ b/assets/js/webcomponents-loader.min.js @@ -0,0 +1 @@ +!function(){"use strict";var e,n=!1,t=[],o=!1;function d(){window.WebComponents.ready=!0,document.dispatchEvent(new CustomEvent("WebComponentsReady",{bubbles:!0}))}function i(){window.customElements&&customElements.polyfillWrapFlushCallback&&customElements.polyfillWrapFlushCallback(function(n){e=n,o&&e()})}function r(){window.HTMLTemplateElement&&HTMLTemplateElement.bootstrap&&HTMLTemplateElement.bootstrap(window.document),n=!0,c().then(d)}function c(){o=!1;var n=t.map(function(e){return e instanceof Function?e():e});return t=[],Promise.all(n).then(function(){o=!0,e&&e()}).catch(function(e){console.error(e)})}window.WebComponents=window.WebComponents||{},window.WebComponents.ready=window.WebComponents.ready||!1,window.WebComponents.waitFor=window.WebComponents.waitFor||function(e){e&&(t.push(e),n&&c())},window.WebComponents._batchCustomElements=i;var a="webcomponents-loader.js",l=[];(!("attachShadow"in Element.prototype&&"getRootNode"in Element.prototype)||window.ShadyDOM&&window.ShadyDOM.force)&&l.push("sd"),window.customElements&&!window.customElements.forcePolyfill||l.push("ce");var s=function(){var e=document.createElement("template");if(!("content"in e))return!0;if(!(e.content.cloneNode()instanceof DocumentFragment))return!0;var n=document.createElement("template");n.content.appendChild(document.createElement("div")),e.content.appendChild(n);var t=e.cloneNode(!0);return 0===t.content.childNodes.length||0===t.content.firstChild.content.childNodes.length}();if(window.Promise&&Array.from&&window.URL&&window.Symbol&&!s||(l=["sd-ce-pf"]),l.length){var m,w="bundles/webcomponents-"+l.join("-")+".js";if(window.WebComponents.root)m=window.WebComponents.root+w;else{var u=document.querySelector('script[src*="'+a+'"]');m=u.src.replace(a,w)}var p=document.createElement("script");p.src=m,"loading"===document.readyState?(p.setAttribute("onload","window.WebComponents._batchCustomElements()"),document.write(p.outerHTML),document.addEventListener("DOMContentLoaded",r)):(p.addEventListener("load",function(){i(),r()}),p.addEventListener("error",function(){throw new Error("Could not load polyfill bundle"+m)}),document.head.appendChild(p))}else"complete"===document.readyState?(n=!0,d()):(window.addEventListener("load",r),window.addEventListener("DOMContentLoaded",function(){window.removeEventListener("load",r),r()}))}(); \ No newline at end of file diff --git a/assets/js/zero-md.min.js b/assets/js/zero-md.min.js new file mode 100644 index 0000000..d66175b --- /dev/null +++ b/assets/js/zero-md.min.js @@ -0,0 +1 @@ +window,document,window.customElements.define("zero-md",class extends HTMLElement{get version(){return"v1.3.2"}get src(){return this.getAttribute("src")}get manualRender(){return this.hasAttribute("manual-render")}get noShadow(){return this.hasAttribute("no-shadow")}get markedUrl(){return this.getAttribute("marked-url")||window.ZeroMd.config.markedUrl}get prismUrl(){return this.getAttribute("prism-url")||window.ZeroMd.config.prismUrl}get cssUrls(){let e=this.getAttribute("css-urls");return e?JSON.parse(e):window.ZeroMd.config.cssUrls}constructor(){super(),window.ZeroMd=window.ZeroMd||{},window.ZeroMd.config=window.ZeroMd.config||{},window.ZeroMd.config.markedUrl=window.ZeroMd.config.markedUrl||"https://cdn.jsdelivr.net/npm/marked@0/marked.min.js",window.ZeroMd.config.prismUrl=window.ZeroMd.config.prismUrl||"https://cdn.jsdelivr.net/npm/prismjs@1/prism.min.js",window.ZeroMd.config.cssUrls=window.ZeroMd.config.cssUrls||["https://cdn.jsdelivr.net/npm/github-markdown-css@2/github-markdown.min.css","https://cdn.jsdelivr.net/npm/prismjs@1/themes/prism.min.css"],window.ZeroMd.cache=window.ZeroMd.cache||{}}connectedCallback(){this.addEventListener("click",this._hijackLinks.bind(this)),this.addEventListener("zero-md-rendered",function e(){this.removeEventListener("zero-md-rendered",e),window.setTimeout(()=>{this._scrollTo(window.location.hash)})}.bind(this)),this.manualRender||this.render(),this._fire("zero-md-ready")}_fire(e){this.dispatchEvent(new CustomEvent(e,{bubbles:!0,composed:!0}))}_ajaxGet(e){return new Promise((t,r)=>{if(!e)return void r(e);let i=new XMLHttpRequest,n=t=>{console.warn("[zero-md] Error getting file",e),r(t)};i.open("GET",e,!0),i.onload=(()=>{i.status>=200&&i.status<400?t(i.responseText):n(i)}),i.onerror=(e=>n(e)),i.send()})}_loadScript(e,t,r,...i){return new Promise((n,s)=>{if("undefined"===t)if(window.ZeroMd.cache.hasOwnProperty(r))window.addEventListener(r,function e(){window.removeEventListener(r,e),n()});else{window.ZeroMd.cache[r]=!0;let t=document.createElement("script");for(let e of i)t.setAttribute(e,"");t.onload=(()=>{this._fire(r),n()}),t.onerror=(t=>{console.warn("[zero-md] Error loading script",e),s(t)}),t.src=e,document.head.appendChild(t)}else n()})}_getStylesheet(e){return new Promise((t,r)=>{window.ZeroMd.cache[e]?window.ZeroMd.cache[e].loaded?t(window.ZeroMd.cache[e].data):window.addEventListener(e,function r(){window.removeEventListener(e,r),t(window.ZeroMd.cache[e].data)}):(window.ZeroMd.cache[e]={loaded:!1,data:""},this._ajaxGet(e).then(r=>{window.ZeroMd.cache[e].data=r,window.ZeroMd.cache[e].loaded=!0,this._fire(e),t(r)},e=>r(e)))})}_getInputs(){return new Promise((e,t)=>{let r=this.querySelector("template")&&this.querySelector("template").content.querySelector("xmp")||!1;r?e(r.textContent):this._ajaxGet(this.src).then(t=>e(t)).catch(e=>t(e))})}_prismHighlight(e,t){return window.Prism.highlight(e,this._detectLang(e,t))}_detectLang(e,t){return t?window.Prism.languages.hasOwnProperty(t)?window.Prism.languages[t]:"es"===t.substr(0,2)?window.Prism.languages.javascript:"c"===t?window.Prism.langauges.clike:window.Prism.languages.markup:e.match(/^\s*</)?window.Prism.languages.markup:window.Prism.languages.javascript}_stampDom(e){let t=this.querySelectorAll("[class^=markdown]");t&&t.forEach(e=>this.removeChild(e)),this.shadowRoot&&(this.shadowRoot.innerHTML=""),this.noShadow?this.insertAdjacentHTML("afterbegin",e):(this.shadowRoot||this.attachShadow({mode:"open"})).innerHTML=e}_buildMd(){return new Promise((e,t)=>{Promise.all([this._getInputs(),this._loadScript(this.markedUrl,typeof window.marked,"zero-md-marked-ready","async"),this._loadScript(this.prismUrl,typeof window.Prism,"zero-md-prism-ready","async","data-manual")]).then(t=>{e('<div class="markdown-body">'+window.marked(t[0],{highlight:this._prismHighlight.bind(this)})+"</div>")},e=>{t(e)})})}_buildStyles(){return new Promise(e=>{let t='<style class="markdown-style">:host{display:block;position:relative;contain:content;}',r="</style>",i=this.querySelector("template")&&this.querySelector("template").content.querySelector("style")||!1;i?e(t+i.textContent+r):Array.isArray(this.cssUrls)&&this.cssUrls.length?Promise.all(this.cssUrls.map(e=>this._getStylesheet(e))).then(i=>e(t+i.join("")+r)).catch(()=>e(t+r)):(console.warn("[zero-md] No styles are defined"),e(t+r))})}_scrollTo(e){if(!e||!this.shadowRoot)return;let t=this.shadowRoot.getElementById(e.substr(1));t&&t.scrollIntoView()}_hijackLinks(e){let t=e.path||e.composedPath();if("A"!==t[0].tagName)return;const r=t[0];r.hash&&r.origin+r.pathname===window.location.origin+window.location.pathname&&(e.metaKey?window.open(r.href,"_blank"):(this._scrollTo(r.hash),window.location=r.href),e.preventDefault())}render(){Promise.all([this._buildStyles(),this._buildMd()]).then(e=>{this._stampDom(e[0]+e[1]),this._fire("zero-md-rendered")})}}); diff --git a/assets/katex_assets/fonts/KaTeX_AMS-Regular.ttf b/assets/katex_assets/fonts/KaTeX_AMS-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..c6f9a5e7c03f9e64e9c7b4773a8e37ade8eaf406 GIT binary patch literal 63632 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 Rr6XQ~=0w<rz!|so{{kP0^UDAL literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_AMS-Regular.woff b/assets/katex_assets/fonts/KaTeX_AMS-Regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..b804d7b33a3fa5b2587d2d1d55006aed678e3eb2 GIT binary patch literal 33516 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_AMS-Regular.woff2 b/assets/katex_assets/fonts/KaTeX_AMS-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..0acaaff03d4bb7606de02a827aeee338e5a86910 GIT binary patch literal 28076 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 L=iyOmB@LKNp8<1V literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Caligraphic-Bold.ttf b/assets/katex_assets/fonts/KaTeX_Caligraphic-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..9ff4a5e04421e5107f74c28e27354e0b2a4e7ef8 GIT binary patch literal 12368 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 SI)A#mdsjEif#E%%`~LuLuweQC literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Caligraphic-Bold.woff b/assets/katex_assets/fonts/KaTeX_Caligraphic-Bold.woff new file mode 100644 index 0000000000000000000000000000000000000000..9759710d1d3e16eb10012d56babb73f2479ba9f0 GIT binary patch literal 7716 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 T)f2#Y9^(|*uYwQ=0PlYQ=R`P_ literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Caligraphic-Bold.woff2 b/assets/katex_assets/fonts/KaTeX_Caligraphic-Bold.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..f390922eceffe1f6dfb81a3dc086a92d98171b02 GIT binary patch literal 6912 zcmV+b8~@~YPew8T0RR9102=@R4gdfE05EI-02-|T0RR9100000000000000000000 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 G2<`xUL{2yW literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Caligraphic-Regular.ttf b/assets/katex_assets/fonts/KaTeX_Caligraphic-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..f522294ff0f3f8c52dfdaef7ebfaa06ebfcfaabf GIT binary patch literal 12344 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 J;k}^#e*sv&Q4RnA literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Caligraphic-Regular.woff b/assets/katex_assets/fonts/KaTeX_Caligraphic-Regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..9bdd534fd2beb9b878f0219da9d63ffba56677e2 GIT binary patch literal 7656 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 Mepdy)y#Y}F4=Hd9=l}o! literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Caligraphic-Regular.woff2 b/assets/katex_assets/fonts/KaTeX_Caligraphic-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..75344a1f98e37e2c631e178065854c3a81fb842f GIT binary patch literal 6908 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 CFgb+) literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Fraktur-Bold.ttf b/assets/katex_assets/fonts/KaTeX_Fraktur-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..4e98259c3b54076d684bf3459baeaeae8dbce97a GIT binary patch literal 19584 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 F{|oFozGeUb literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Fraktur-Bold.woff b/assets/katex_assets/fonts/KaTeX_Fraktur-Bold.woff new file mode 100644 index 0000000000000000000000000000000000000000..e7730f66275c87c28f26530d89264cffecf90be0 GIT binary patch literal 13296 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Fraktur-Bold.woff2 b/assets/katex_assets/fonts/KaTeX_Fraktur-Bold.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..395f28beac23c7b0f7f3a1e714bd8dac253dd3bc GIT binary patch literal 11348 zcmV-aEUVLZPew8T0RR9104!7h4gdfE08HQj04x0f0RR9100000000000000000000 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 Wg04?dcHtp;<B|99v$cK}<F^66KJX*} literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Fraktur-Regular.ttf b/assets/katex_assets/fonts/KaTeX_Fraktur-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..b8461b275fae76efd0d21fd0f1aaa696a5b10f9a GIT binary patch literal 19572 zcmb_^37jKWd1t*UsY<s>N9jIFDoLeVYTd2ArB>hF(|5OeuI}k$?!$BY92?(bj12}8 zybuUCS-|QU50}}EAz?`zuCN5MSpp>3gb<P}ci7<3ey^k+W{kbr-QV_DdatTpz4sme z?|6qyAc7!t#JvPXtnQjiWoqA<cn3igUV^);>&MqlefYEcKSdD5LAbta{rp*8`$5zo zh@rD^-Mw|{;PC^=f4dW&zW|+R4z8U!1@~Ekm^cQd;^48{w;oAwa;X29AhM-Hn`;~E zp~{~TL|y^+3WwkZQ=>MZ`T|@B4jn&x@sGZ!O~CVhf<X5kJGs6#|IZ^8g2>_VKYx7f z;whxneHg9-aLu1sJHC0Kc<+yZ9-v9~<f)Tq&R)@e<c9<?j^B@-I=y-7(AbObB#7FV zp#6sklE^^$rz8j5GC+|bYY?*rA@lS`CPQ+s{9^`fLz|W6FNiOZR|q9xAr#kG6+@Dl zSRq%)W-Mk}@E562K98?BGefQTZC0PpYEw8VyFDlmSd)H#(*MWkQkr6duB4d0{y6lg z1eyH_`AI@0^{7|N2<XuyhVnV+ljE4|PSwmXezV-K;kXTpTvVBm2{nE%><g(>xj*`x zps=Zwy#Dh9P~Xw~1^FHFGen6PASMabCx<J2T@EFci3Kg$Owp>N1ivT(vAE+x5r5&4 z%nVI47Hc7&6GMWZDdM(FNWc$5BF&lMnkv9kcu2z~`iI`+JkK%KP>)#ak&jQED)!du zj+IfdFJ+!H4&NOLunBL7EIoOThl(6gKJ{R=zHel5qc<9}xxDn5-bduYzHXsQ)?Msf z9GENgb&nj$g$HBCobp}wmUhJgtUN|hX(nW!f8wq0=~^E>jovDDbvO$F(Om`w5`*YD z;vtZmnxL=B3DlMuumS`#%SMvZdt?su+~;gso!+N&d<MUBTeF4|<lhlSct?fc9XS^Y zVKEd7MUFO@Jrqg|&#^{x<kBM)>&(B;MnAB0@Ub^+e8uAQUq9Zr=bkwL93mE*Rb(c= zM{qm+nDQ2bStn!ig<=5!ASTJh|148G!j;&R!*5cVa^x4B;`OE6?8*6EDcWY9+WM;h z(E}ZQqqsL0dV%;C@;Sl{z3C-RghG*KM9_^`v{-XumSze?E7lIE!t$=L0wuj%s6$LT zLmow#k%c_=c)aLyIKw1*A>9`U2qwSF<_cK*d_uQ}_j2Aa>-Kp2V60^G6XX}jF-dA_ zIY<Ec7@vVL_=-M55xo(0%CCPZeEmfRrNYP@zWx^sDuhv*hBvFtB=Jq+GFULk4pV6r zF;*lHN%)~pm@3*KMl=ig^w)JuX$L!}G??6%LV-EVWs>+Y`CpJ3@JU}K@%up-lYHTo z6Abz0ABS;^$>vXp|4Li{>!YvIB(wm#!e-^46icF5vf(cg+KJ76^i}d}1ijM^S&=BB zB6?AN{Z5`jZ%~teuKvxv3LSNkB*4NV&7Yw^MgIgmbJ%7za%^G90>}m<!0@-W;0@SD z@~Lyr)Ms|z<C>TmyzLPBC+h=K2cEq&zxy4w<ej5;zI)g0n3HA`eF^;~;f3+lm=lCM zfd5(+<7e{Nb|gara0y}t#Z(%^4UeGP7mpoCud3xVBacTJ3Y|iKso3*IMOJ@`N-<0V z(Xy{@xjDTYIk7yt2!vine@(bx937TN(8~Bk+%Yy#5uo0-T0C?C{dbl9`fcRK(;a@# ztm@!+wC6v`6_kv9Wt6V4`yQY1b)=2;p2)%rG$WHC1vptmgqmaM<1j)PMi6Kip=iZ@ zf>;1}*^I;jn7fegrEVGYm(=8;w;vcDVJjWGRzkr;a!&3km;8m8H^a^jXNJDcERL_< z8*vJU#s)(H<R|scls8fgs;4?T)<GjG(BR*pZ-X7$KqD5DM$!nDqP0+D1hW;m%lq<( z%H~9%>n^#B>h~*_$SDnT{jZSk+uvt2r_r~m4=(K9O;X8Aevfkaq!oSa`qnR}-h}x| zHAm2=(Tju!OHR@d<MVTzwIwq8CjKNz8qf!9*IzLx`zlk1mhT$PmNmJ=)MmA}Gh;+A zPHP%+&;F^&BQd+(ygAW3UsR(>;2{C1`WE?F&`t<=5IhbRqly8SNi#IFGnC*@lGw|_ z$Ot6ba-Zl+O2+M-o7_t>_0`J!n^!WEF>bJO{(|ZHUl{MWxLgh<$*Y}m4H{W`7LBY| zmmW=yFC<nQmAkGl{rWB4i)PGYusM!?ioQW;fk%xDqcF=6j35?Fe$iL7pva$H|M|I5 z>e3I9{Q7hJB6^X%{=m<)+vt>hQH7&KxcN);W%Bb7-$O(iqC`RzAR0rIFk$yD(VCQj z`?+Bzy`&T?iWqcKAiz=K+sW)?@uFTIHFS?1u!(QlnA~y{(!sMU<JW%AE7am6XxX+q zS3d9*7q$!9P+`a(>#Cn$nGE)3eB9*T%Ctv&_j(sM63JFrdwmq->I6)F1AP;sp#XCA zxeO|hYY^g9sO6_6iWtBoHZg1qVw+xckY4Ut+?@@bA96l=X5-pJqurievx(GDckh;L zgg!mJCmSl#s`OVrbY{af+Wi(!$KpdOZhxWgD2$qE{+xI}`Xa=26O3xmFt^5aQi_q- zFf#3+?r)bCDX63Sr2>1KbhAQSMSli8xu7Sml_3~!yl=YUH8CczaOrfrD@LEv`ju*( z(U$T%(Ct!>ul%F7FT+~0I*miEUiP_aemq8jc!2ymx=qSd6xV1ODcKMBQwICgFTHYv zA>T$z-)J=aPhof?(fkG4BCi2eNi0?MtN4RR4?(bP<=71Ib&EbmN5S<G$YU_esbth) ztj2_%pf|%;T^9yAM?CtTeAwAaZob1i5?0>U9~%-Q<6%Bv58LDAso~C0*3liyalC|F zOY>!jL7yge0dgHGj9eyT1;aPwL>%R44#op5<6H&e9T*fiyJ9chc6>mchXk=<7l8vU z&<W<%q7^-PB_2y_@0VX<1%{QAl;5aL(NFq3f8IME?PE_dQDcyEa*Ei2(P+&hcxq|3 zU#(18O=hG0On&qr>U)1Ijpk9!v$m@CXe__CXJ*5ytlQaBxdTrh3ac07yxwK9Th*n* zV@C@Sy~rm_;UTL!5ZCCn*{IVLvKsB32S(PVEbL_}MP4O(fX}^PU-h}sULUqExxd8` zP8FnV3akxGN|bC$!Z_dp`wy#!%tBtGqZp>`>8V~h<OCu7K7IvmOHLYJ)1;&G^MQdW z&0UWvn9a^au70Q97LLZUi))b?%hpDWQ|s(5&Z-EST<ZGFe#^oAcWU}fDMy%dshA+Y zB&dSt%3l_8-N#2_0opm9=0;~G$Hz~cjmPw->|@<(ZNjR~4Z2g=#cKQrr=F`&3JaxE z=oNj-!->*TAG%#;WlTDoPCJr`pN!6O|8Zq{AwRN@t>9SJ{2{qXew^qAo#!a5b5J;D zFawDfXjum;m0XRK_h7*Q9$Pn|32sBT64qh?srlMvmrSNnTAibDXWnd+Yt4nxlqTY1 zJygelZF=#sq+>C?8c4o%Wmjy8tg{`t870Fgtpd$1&^)K~2K(KaVV+@CJ~nT<=+f)a z;6nOs(@WZvIozwLPc`;0R)K0KAoWL(?PIDVyhOF+Y(Vw^&`d8?EU*yaLHdjcIV9E@ zPAgipV%Qdntsn~Api``~yz<uk%=wVl;AGfnZRLaS9PgEL3+cy4j*QNqD89STT7SH! zlx0J;@)oa&k}0*Z&u+TiKG&yq$5aYlZR<xwZDpeOsQUi-RK{$3s(#_gj|-(~cD$TP z27|h8^$JkE2(rEpWIX^>7h{-eOf*OrygA40(A$FF%~HNu$VIFk3&2ZK4|?A0R$8}w z@oJZXF&i!KVEsu0FYBn-rk5V;Su3o>#JA1QM|Y3$Lzi8&T5q$B#~tJuCS<X@YlFQ> zw=xu!>o=?{?KKtndpw36d3T%RWySnlW8YGZ$6C^=6c&Nj<M^g-Zj#4=iv{4Ks>NIY z`I0mEZAb!~BuPOMbjz1wHd`hU5|a!LyjVM6TJRV%gWU_@2+ISVx+9{E*<F^7CGJD( zU7ZZAQ81*#C!fyR9Xhwq+cP3K+>}{iP-<v-z59-V6`oaYEQb%S@s6^x!gB^blI%pm zbJ0*&EPTpS-uuW>H(N2<yc){L6>>gq!P?^%_VrmuLs6Ma<Ivj-W<_dmVC)(7${qQ9 zpRR6W?Yd4e2L8Fy{Co0?Fb4<|L*Sn~GlE*mCV+0tErY2B!<Qy1R^S5oECO$Met_9R zE$4BwGF!fd0W6a5Y1p`0qO|v!v@mc<oR2S!^QTmKN475>?4}0|1&`HoeHSa{Jyd$Y zK388`EYyzm+Z@3Jx$hY&n5>=MeaMg$=bv5K+ZSNR)ro}Xs52VZX5IZl#&Ug?RaWA{ z9WFgf_0Of=IaiN&p6OknmxFQ8V)I{{cajg1|ADB276(G0MR^ejhCq|gfnp?E0rTI{ z5r9rIeB49^Y+_Xbt6)Wv6yO@2N*lvgzd=b}9-DEg>`U5`&mGj*D(-lKqc*?LJxHq* zdbLBPJ?YJCb>v2mofvk;E`?%8`-4JiGB29{a;=sRY5j-Qxv(zQS8&84U&$Z1+)Ytx zrCFgrmh0#ZAD`&WuTH;v^&F11F7N>y;Lr?FS8**H)k&HGASGot$Od|m2>Fo|wR#~W zwKWCA@3;d}r5>AM%bu`DvoCLmO%23P_)XF4d*r%el=AA_VQ<o=Hj*QQngM;+=Ba3b zd^cN*(H6CqezW?_p*;J_!>qYCMpbq0K)KhKev3<EnT|4D#pGlDQ(c>Bf^7bC^Bk!H zN{uk{S6oX5sn$xu4e(<}3!<i}_SB(eC@oC2-5QoSSPm)pYkF5b?-{DOg8dgF?ju5^ zbWFaO5pAovVv#J(vVuSQ$n22ULCX{tQvm%B)$s9rp67bC^mO^UOFNv3zjMCS`OU1_ zI8{*zU5V89Z3~a_j;>(Pg{8`ZRIiX9Ax6Ny71w4)lUfPy90WZ|vQr>L5-<Q5!b35O zA+aOa0=8ys747hegQZ21eNhf>?M8?s@A$CWpf+iJ_9#y+b@b>cg^u%CVk!CbY9ZLE za)&K0t*na{-@oA<C>Yp7Bf|&G_sm-SI*lo)R$c#CCEppd7+^{}JfKE<CJ?J0supa9 zrBiNEwCXG={tmA!U+FapK1==!KBMNqJ-V<fQIHP~?;7aoebDXUGxCQ#DvL#1vbm2t z!K?AW_k*CLL9hoO&f0@k9Y|Yp%3`mgn3b{stP|j=HL2tnX_C5=D}YzV*$>F0SRl`_ zhK^Fl+NT39p+kc-a;-wAH5gT1Z+fpO`o#QQvg$>Ri|I}lXH>G`b;Eo1PY2y!Q1992 zoMz|slt=B-S~WU`RHYrB_otkJv6(ZvD&sYJ+y+^{Et{>B>>l0I0n4UlFz5#AAs))? z;HB;Z>fH?X$(T$l{@MxU*j`(4gAs8|#7+vMu9dK0_<=iycR-o>TuxH4q)OaGdVm#( z*HCcN-==!t&cq~4LW{kSGC+2OKHyzW4tYXHI@~_B%VxIsr+5|ZH5kKBb|RKfYYkc* zXB*4v`tM9y%~n=B>a}#*95NY309OjCM*cAC5Ay21g0J81v>OfeS}NxfT-B1^5z@kv zh(2qG&xz?djv_n5*}23}Bok5UeW|{Oj`HRZXF7h*NAu$yQRE4Q-LoU1cfI}T7;DlU z3fZ<61}$!Hr!QtRjD(|KzWBC$ls!^5JM6o5twfd{4m+G#UyO_OxzxIZMP*P$Z6Q-C zYw!!Zvani#2zT@QR4*W8Kgif2&FerOAThwV1$2&sG!_fgAS(uW$N=uxU|Y_#6)3=5 za9bP$B;iYL2n+s(7;%T_gI><E5Y5FjDwD}>j--NeojV$RvLDfu%B*oxMxEU3cg_y$ zV><GIlr5z%X_NtnTZ{@eOP_CJ&rQNwT+1(zoDc{k1u<Yz>)au4!`)qrSuBSi{Lm_= zG+VVUN@ijz=}Rl!Z=Sc2=l!+;Ye<Z~dHH=lZ)Dhe%>8PSEG|n~0M5Yv8!->kuq!a) zTGmh~W--zLbsm_WV6Fik5`;ilkQLApTJWk_i+38P7}&F5ACe?dW6_<lh7_#oenz2{ z53OY_yWf6henK8Hd9~dEHWd$aP^5xVlUk(mXw_3CZfI2qcnlWHY-ZG7*cCPV`X<PE z%4#*beJY*C1*?gOPL9pzzdrdGPqGY?XM5wCf<Wt3EMt_Jkv?j)Ds%h&>TH64m*3SD zv?~}7tIsU0mv<d2S+P%~n?Wi7)@3ISgHO!6EDZLEhO9@n<Ede$gB1!3u*?mcv)<&o zMKi=Dm=}TV=om)q1%|DXCA|&+o<YKxSKu`M)B)b($Wx?qs1gvu4_86~l5=Qn^5pFJ z#Syjnyjr=$IZHOB!JuVTdd5JiSVtu5HMti@w)WiugX}VT<@((afK^mP@ICJ5(oTzJ zDiVq%<lTF+-B|@|8+N(Ri!)Eq(ai;>PhI)4fl@Mh2)-7I<D(h7;(x9@GVD9#{T)2i zB|JP&=>ZSB0S_w!*nj?es>g~4pMjkUP8KEj6eaY4MFA!-dYG2?VnQSu$<0pvZ(*>d zx0}vRM@uVK4`3h*KvI`k)xeNRCBevVG}~iFfB4*%D)@f@gyBgg9W|A+mGc+{fG18} zhUlZC+i?2wtVd_DJDtuxFCYZ`FI5KLz!HZ5Au*Fun)erq*aZOkAu4cYFmlj3%%LS0 z0C<4h$trmcn4@6(2XFw#03lpyVMOu^Qf}}%KxuRr@3ZO{1?{p&yM1y)_CRk<Ew@{A zHs<zvIj&GR9Zc@Qe#$MRUHyiv_p~+dituWk!6z8Qh0$1;>+{F+^;?jVSwMTd%5hT1 zWHXWOl08uSVE@>Dm7X;jW!l7W@ME?Gj@>*b8#HXV1=FP|`=%LOsl^sHmoraaxVy_6 ziN#F^J--8!dF(|?5NCf*ZcB3@2aElN<Ou)=;P^OmE9SPcG!KlACk8wGV_AWmKso>| zXi`9P+O*(yJr^ubS5Mwwdw4usI=1{Vb()KCyv3#}+f25*1J9@DZyS4R|6SQsrPKdT zF<h#k-)Qv(mp3-r4K@@U&ptZ()Ug$TcBna(mX?pJ*HYB!ckSKt?#*m!t~A9*gRucj zxeX|PKlw)z<#9Yy4z_6n!!BagVr7M(jtK;HwU%n|6HGWKxkBs`q(u@bPayZJ_e}&Y zi>V1!zNRw!ES|(U+Ojz{+r1KW^=H%m+Of>%;$5klBQ{iaC4;eGEbLngmmg%02IWIt zY^j83L(buTgx`0-ndx*T)&1eJxab`S7Az~Q&N3J<6_dRVdtcBA+jFS-1K{8pSl=mu zjhdx(YfKc73js?qLoC!C&)i<bz!HbmA06o?fpUov^u^OoZ}Ja9R<CN>9uICF>{Kl* z=r@HYY=ISxTy=?cI%RT=&+7I*dGQ{uKW11Vlc7HUbJ6g5AKN<+XmrHAr^>SeTYK@z z6_s<Mlww}grba;hN3pkcw{6Kutbi?bcuaD<&d9X#NNFVuGF?nH4YMz%ZB~+qcN{LB zmF=W%Fh$8@0KJa=+_Bf0DeTR-!e$MrR*!j)__RJ1gnotZR6bgW2X&f6$sxGU89a2) z^3hbSpza%Z3%M}-su){b{N5;O_m?f+T-f8dG$<_8j7nv=_#ghbbSTKvthb&O-)W7^ zTNbqW{(g2i^6TXXhJA;B*GBf?6=1IUlFSR<#7e}7J79%sG9@^56s%AoiSKqoA;Ahm z4wf+5X(z@Xhy>@Mv<Xydfo!e?KX5CO1fawkrx|QRt>hLWHjch+A>nslosUqLx=cre zu5Ot-@9_Kq-(fduUioEaaA|a5sGKi%a*R@NX>yBwaUn74@*i^>O>{?6uhhSz9Ql25 zEKaJa{=P1!*sm*9sr*F5h~<||-r{pQ7SPLmwWUh%z5^r9TGTx!JmRlj|3xG`IMn&M zsW;lQZWN_mbN8bjZRbE>cQBr;D7e6QZ}6#L+><)j>-Qir*u@Uy((`+Z%MaE(T}8+5 zIG|auV!U$n1@J#O&lm9;rwOEFv4YGBMQMh^fxi(!T3MLg>>wV?OvJt!WLCsbE97A# z7WP1}(3q*WPQ*P{)Oo**)7tfFe#_adDC8T#<X#;=)Di1DDQE|#_0g_$pD*k0a^!QV zk#k+a$K*_Rc%YxuznhACmXHixC@4}k3u`KCik85m6H%IsE$%JHEGz1xW6>@?R;cAu zBOg>mhXe5m%!#8JBwudlqoN&qQtTRE8|PMx1yF5E{dm>}T!6`A<Hl=z04cDhR$$U8 zev1rnYG`e7WOMH=%F5M^M_2f9cA#)|CN`m~suaE9c-dEtIddU}zhsojDrb#HJh7+} znQ61qsAY9bV7NP+oK_1<IrdTXc>U24FEn^nuD!Usd^8%)Oh5a>yJv3~gyB%p#SeV* zEf36;S;`o<ne2bCu}7Xuv!sKuD@_WuEaETggA?R9NJ9;CY!32|3g|V2SET^|*f^wM zk#D6Hm}e=<NV`BgD;J{F3NSA{f;Ko6#d^IK>se2_ou?JG8msWSY^o_^w&$aA-g-L8 zPM>%<7uVVhf@Z4QYjFEI#>1xNVVHL0`(%fEonBRR6%tIAl!wFT4wH1PP`>BFZgnW) zbLjis*`PZ+x15}x;BZ{I*t{QE$(LaVfWFG$y*|Vktel@QShC1^;lk0Jc#-^5?Qebx zSs!%(j%A=`vw1)9`|UU6cqU>JVbjGB67t3K7cPpqqZi2Mq4jTmUvAUl5eW1r=wHb1 z5^@+phIideRz_sRfBU)kwZFBJ-~F}on}4Iho_C=6ZS)iLt(_enhXP5SHzciZ0f3~? zU<E9}>v_@NUK@rbmeFUU3DW$LSf;AbqkzrA+?hc6y2(UQ1+97ar9{cobAI;`x7tr{ zZtYGcU@m-Obo7@_(?l*VMk+A!V)Jj&X93G@@OX-AQJ%vin~GLQh$O%DTl|7mwjz>= zYpV(XOh0_lfZSmRV(Qs}9A&<LZQh|{42JA3m(8cAWtvf*Tw2mP{98lXtcD!tgSK?~ z_Wkqmap&m!{^pIc$?L!Vi<w|=$ukmRJs=@sr1^bx5PcmyFnv{l&m#n3T%47F6d0V4 z09D{M3Pp7AqnU2G<^!pooYGNsa*Sy}tn9fxHZ<N<FCCPHcTrZaa9d~8)1|>X<l5$U z(8tLQX<yfWbH6z3;`t+V3T#P17ef%I7H|iAGJ5m#t5J$xNSTr*Eu;7Jn3Qxz^Tth% zN@_F9o6l0J<4+7^65-<M8Lupp@^uOGCQCxK>%L0mDP&|_5#1Ao(WzCC^$^JV82YcE zWe>>OWi_;9Z2<!C3V{{;f|PY(eu2Y~2n&Mq?@f+8J|ZV;Ze*gy<n`%kzkF)8(32t^ z=)`6@`*5dLt1fCuB(k-Rv1qJ&ai+UVOkn5{o~98Ek{=@cAWIWI*<fNI#Nd<zoR0ur z6w5V(#frU`6(o>lz9O^uGbV=t)%By!%>^-~;*(h}BbS}lp#5Jta$ol{v(ovErzQl& z8PoJ|cn_+jOyT_sV-TVz+f1P^!ak*o2uk~>u@LXJ;ZruiOnara4P}t46^kAG9TSv7 zs06JX@GPl<&CZR;^ws^b;St)3<nBGgHqGvX0_s{_pC0swA3vo$UpC6k_X{KSL1A+} zS#q;sI{Aos!D6!9bEc-4H~pl#Fr5!NyJjC)Wu1xoG#rxviA*%h=qkh@5hNm7K_XUI zJ;A3_B$b14wGdv&;wdC^!*w$+^}D=sRfp*7kr!r*YFcAECo`1%NIV`LW1Qt9pDLP< z?H&{y4+lEFH95Zfg^xeAMouiNb9?e9Jd+{o#_(r$FU$f0bj^Q68uERBZZ9CfV`nLB zZ4%V*9v?se13;oeq>I?%fCi^FQxxn9oz*BX#lZq4<Lpm#+I@6f6+yRYBe|flb}AYx zS)Ha_ZX&<9Z<kH^qi$=64r|ijTbjRW7T`41AHcZ+j5@c&g!gf!Q84fAND82UP|VO2 zj9IjNxVn!mxXosnN@k(ulv{Vi3PDj`)`feV@!1Ju#A80OHGjdQu~R1Pena4=&!ow_ zyEPr10`O>S{s0{Xk0JsF6xR}A6Xp?T?7&tYqfRVBB96_D#uCPhmRUyNaK<ENu>3*v zXrI>q&{29w*~=JYO8H8dEe7QBJG!ll`*rX3btvMV_s2$3G5ZO<XZL=$`<n1?<1)4A zMnhIrcBCkqE5{wy-NJJ|L1s4mv^T<sxk>@+f35jrgjcRjpnpyKoXU<vxuJa|XDe<} z<1t!P_huEe!9ado+qrgc{W+smZZsU7c=8h;JuRDp-k9bO$X}rUPV_@>A?#CdMgyFI zL36+l_SP+*nWQ1_!|H8cLrNoQyRB&~eD1@S`Z{OQi-ODo`>C3H6j?Qe6s*>!cA%ik z$S-OmI=N$4k0v<R!N?pj&B+Y9xE?Zz#c)#9dHQx<uVM{H_5G8NMx3-tNh>JEWcq8J zFEZ*(^gLdUSh?sIluj-+G+pXDH1Du!_GYBDHDmK1NG0$P10Fm(JkXpKudskOYEcOE zf`{6n9s*b)Yq2(-%=9T_NJ%S|a#G>dTq-K$(XIg*6JD}7)iRr)-6HiOI(f`*Tb#Ow zWbvMng*`Q&nwwa%$m3r%DGTGGr*Ertz-rd4ux=a&E6tbCyU^dl2@WS<$D*V0Y~Biv zuz153Mexx8q_(5@z@XPSbzpK>Zn*=|tcxw}4bf#+IrN@K5+gZXU*^pIDUZp&zGqMt z8Mr$a7=|%4%_u|y2jDXUV|2vK*b7UH!fdQi%qMB^iqd`(9O?jFN(hCF)C4Q>7@jcl zN2b-vkVD<8qjd@;937g|8IxpocVbj-eW){wQYRcV-|zavIP-kfs_Rt!N?}%M7)C}0 zrj-`6kW|_HBLUZF*BkndCY5K<M}AW1xGyqm;M71}SCdEYMc;$H6&|Q_axA7!j@1AL zg#9%pNg@wu-SL-Z^z@usQ9BH)Z@1-gks*cYnt4Xvy%IoI6RJNsS*q-d#qL<`jq=Jg zbL@NHx=Y>tmJOM+|Dil(!&adOuk;w4dGY}Uyrve8LHms4pD}P@z!q`^C?r?$iQ}SE z?L=K_3!il>M(gBTBE7T%Da|3xChtf0EDh_mMO6o<{V$<H)O3jN?>c!qQs`LKUfu<H z)Jx63LvKglC2}xgPzfUz+k)O%f&uhdaXgmx#9&Z}|5A9ybb!IalNau^@f3Tcu&YDN zC}n<=&u0t@Gl+8JjD{`FLjT^3M(0S<dk&?|dV}WYC51-}O?0JvlX0a?G&(ev0y?s) zDmx;}g{>s*VW;S%soU3s<>3H%>?QA$auBwiwc#8A+*F$gpa(oz{w1B0AvMPgE2!6K zO;L}op%r$Nyiey~G(-0YFBN&q`rHd^!bhP`1^5aQWSjtwc_VO)S6`&_ao95gQ#8XQ zVH*k(;I@dReKOe71jwNeFxs#-Ob_K0A+2Z9YNcXMQ5z)<hLHXwZ$^&IWf_IOK_7gG zdDyJ)>>&F^bID{R-3E(n^a*but23*XLwa>g{qDW#uIlU*jzw9pwNJv?UON#1q=miG z+G;T;N?Cz~f3BqzpbRgrFf^QmgFL=%1FN#gw2n<aQSPM8ns3FrnOzhTV872Ls1=@~ z=kIMRs-!`fmf1OL&VNv}R1Uj0-KP^BlVARv;Ea#VL<&7lHJs8R;?0-HYd}XHcD@wX zDutM|@6{R_&X3};vDLwJ0@5Vxtff2n7B+_#q1Y&_emE8)Idcg&VhFwWO}+h$j8e;t z==s5lLOy0z+5<9_8t0uV3WYKGvytNHE;#0@<4BSsXA`}eG&*%K;1Lg4BaVnVBio4b z`(}qavN|WFeLRpWj~DFyyOTX$ZES}*zB4TNOte<XqA^~K21magN_s%!s^%a%js6>v z1&w!j+R=dl?P4ea8x}apBH0zjGn_&IZXnuAXJs+7aBK~jdf~XaqiTpCA1jv^IWyTu zy^YWHjCS<jCU{*8<yFcAQX8ra%hAO;FLWuQ$ZWOwJOfi@8S)zs2ST06a9FMkJNs;X zqPJtdFe3PjO0lz#0tyq&Ai73sh!jw0#d}wfe%&P0mI@dUJCM>&lSDu0U`Gjc61AlG zrm=|H11VXkm-qSQ>ZIRNB~b#ztZt4m+NjCjf&qUduHU!kEr<ErV+OC6zhh-WS=n^c zSxc!mo$4Gf+NwBT`E@gb$}kt=!Bzm5K1<63!a4v*2Pn*Alfd~J77)%JBo{5>Gg%m( zuqNYwv~WP7o`^2=CrAAmt7$+zI=ZEw84Ky^e7N8o4Y}OwXY<L(a>s&OuCDSnS0b+& z&E`5d{gT64+%<C973?b5J=x;}l0QhGr-=`dUmy%1C#{r6<DfvdmO^nN!<jGeY(Qhl z1zjFp2WjqbD7EebLF-U3q?`A{P6i_4=rQ7ba5mcveMp%H&icTEi`c0bqzSN&9Ail; zLTUwFKx59DxiET6P01$&y{*%#QhN^gEFF9SEM`=i%X}1KWDL5-q+ly)1qXckOQOg_ zGNPm@5Kn7fgZ?9>GD&lpQEx!>?b3KU_pbyW6b+2YQPC^t4EkhnY-%;pp3T&(I&;`L zJEjt1fi8g?OJ~a^Vcu#?s;2JG0!IS)@NM!C0lzIUwe8N@@(nH3v?3=s^fqNb>M|+F z;aHVA@qo*#C=T|&Ge?QFi=zcn6PrhWTukgP^|K}W<mZ#g+oEcd%cNT>#p3ThR+=bw zx;s}_BVAaIp6g9C2fO4vT!77hp@1oYV}|`D@Dm2`$}M@qS)?MG8+QAgf&O#agT{4Z z#~%GI#dyLk$`lm&4t7rPI`W5w>v#K~XP&-{I{hoj!V$L&+l8m8gL%_OU=~A|D4Kyq z8aT;-4^|eW{56yZ;6b9!_(d?>Eb}!vso`Q)(n6awG`W|ZbPB!6G{;oMu7d0=Oq;I1 zI1-A?C1j*|vW!aJ@(;^?!y8<s0iTH(*9vbEaMqlKtmLyWcM{+<A|aO|FT}(apdsW! zRJbYjbD(p)(<#M5s|7uKw=cCdDymg0`Bbm<+8l`t8$BJBA%%ncixZ07yR39P|CnWX zKS~!99l>+=t!k1%_UuH>=hcVh1Ah~G$YhwC*tl2e&g}2$Er0~<kSBMM&%(@+FmXFE zuf@Gsv|`9JI0cj@j#=iz-H_W1q04*dK0}IOtp_b^UA`%I=mQZhbIO4B|3imdu&yp% z{DAPOP5IP>RyDCX7Z!`17X=v04bgTFS%GLvz+7LrF^Uv#v6}=%?s;?{f<tSg<eXY} z&bW^Hb#%}C;aTzDgpG7uHh)O?nz`hMzILK4wu|45ui$&J>v+xhs*gf^jZP|T4$qX` zW}dd+6kXR>V6EpH^!W=oy81_{azK|enb?ft)v>iB*}IuJ0dx?=D)9!G5#v8dvtjP_ zIDETwu-GI08R0|<{?|op5Z@wxf;iL-vEm8zEP4S>`u><SlOyEq5EWmhtke>9f%;?W zx=fHQ$WF+flZ*0?(@J`S{vy-M{GmdvSXF#NnNhx3RaL#H?pJ?ZGo$%|wyJ%<_E)-# z`jGxH*2tb@A7S6aKF9vV&}rB-e8})!qt$rG_+jJUnH;7=rYB54F_+9o%%3*@jEi%3 zav$LS*^;sRzU5!6W$XR$?*rC9x9M!7wmWUtY`?K*?8|oeg^<J}@Y&=0%eU{>cmIOW zQ}8>YTmPCbU2no_`pa-vAxQy0{-4rsiU>F_j_U*p!(PL;2qpXirGxke{DS2{;x_m! zA`9Une@-N!thUQZ^h-j7PXs<m_;kT11RoWAQt(N@CkUS~e4NBz!8m_Kq~Tr2^N0lb z6~aQDB|6AWqKoP$oaEbyMRJ``QwE|!ey#bhWE92=H~*P@C&7}>5WLJmIH8@J>Vh_K z*0EhWsUD(4zKgJt4>f;4^$~8Fh2Y4qLfZktL9P&Lp!XuOz^@^G4!r%G7$D*7A@DPT zenx1~n~5PbM0n7@!Wc?o0$B+ivNwMP&uz#?tdUKEA@zh2{R2^fcQsIU!81L29x}B_ z=wD7K08CkmhG_C2@clF3`QhfTu^d5$3HZd(Pl!?UQ$m3D9yAJ{UlCcT+tC!^M!x_( zfX>L5uQ!PmnFF%$AIZFuCb4FA{#FSRJ%gTvHA{lL45#@C;*G5mW+fd6qxr_)y#(<u zEb-%i+PN{kRofu?3I6*G#WzdD3i&cZJV89M4=e%wJ**KE1TT$;d%@O$fBOOyK`Dd% zTLM<bShz!j-|2!=!hNu(y$|+b-ox9!&orCxoQIS7`2GN#A6|p|w(k?LCj0&7_nO~r zey902&2KmVx_Rw;y>5I?;x+#oM4WFB3(K`S&yRnK(9MiD=(&~UM$Xv?*H^dr%L~g5 zGPw3>1&C^WT{z(M`5HvMK~#moE6`_kwUTI{c!OWvN;Js0;1hg_1{LQwu2N=>s8k!K zD!;l~*(S}^%65>dHpuGyMZTdCpi*7iXvn57ULi>mx@q_}T|RvGijG4S7Y|jTas__D z2G4{BF}=K5zXF+$G@vZrpkfWKx{SwbSgO@_11G=1H(r=-$U-Yu!bn@Kt=AfKZQ0kL zg7w+m%h1?)d6{oaPs6SLx|45|aII9Y^V_Y~Kv5WOwXgU_8b43tmM=^%^B|4OYkWgB zy}Sx{c>GL-YXw{@tU6cg^|}+J)zDPe8^r8#gBZt+eQ@m@Z+LLcGrsmImRQFvJ|!m( z)ax5-^#+R7>unC|{08tNRO*R_JkHnnhAg-SJTcYj<pv{E8VaET8h}?;6AfAtH%Nlt z*k%q?c>EBv>uiyazoA`iy&;eK;9-@&%wLAFw$t(;NN8qxb=tW$TVEFHzB=FNpIe4! zPAr!;DTxLXZz!v=E8wamsVm@8s0aWTp|aK>4{SBiIt<WYqKSqw&SPqIz?O_S08N12 z{?$5evN|YHtBPMy>WFHs67}5xjyirTkTk7cPz*?@0_&@Aid$I2N|l67II%(+yc3Ar zp%PRptPQq?(7w*=jR3p_FW+G8=9hFB|3c-eRzpxVP?1yc)uRAneSDiFYmJSy!9;_N z0}DLg&{xMWXHWqRHCTK#3s<b9F9USMN<!g52J1k0!%$u2FR$_q1BflrFviE{m$zjb zgY`f|yD3~uG)(dFndR}h)=j4m?wh3h=J+;YtS&5X8;zjCwMxSf!zKsNs%-1=7Yknv zWC2}J!Rh5~Y=<DO%4N_n49iA+0=%|U2Rz{C_!Y2Z{Im|73<LecaQ9Yay^adEA?*=B z$khhXdj*a$NqFGm1pM5!Hox333KhQA&;k6kFz{-HU;U)bhG2SNA}W;%mVg<ap|x$Z zBGz~;=JW%+Ex;oeOEj$UZG=l3$QzgT_%?-0M|@j`OJ{srj!Rd3o5rO(zRlp$6W><g z(i`7a;xZNoX|&|upjScC0-tQ4z1Uh3jrdIuEjJ$C)_Rz@>0#)`!_%#Ye4J?LW3S66 zFm<iPD(3TM{(Qh64|Mr~KU@mHA1(vHA1;HyA1*_{A1+1U50_!!50??(50_Ek50}X} z-z^zZD$cJqY^yvtJ+z83u?A%$i7}gwH&U@i3hc21Oko%h`<ezRtd#`p*#EaJ0FH@9 zW=F-_I=Y4t*XW3D%Mn*w2B(O%n7v6nuh%9Q=kpTfdFZXxPwjWz1bCm<q!!;NEYC^7 zYp_=+ZRZe&c`blEfPvS1XBCWPt(0gK<4J3GqEY(yngX!bp?N2$h_D3tBtMK@0*H3> z^5tP+7+laY1U~S(5Rpm<ab}Qk8GM(eVTEQgaHm13*|vtLG}P7D=H;Zo^WB%B&#qgW z@yS+y4O*z|wB{SD*r)W*EMJxJa^87W7Lq&a73^tM;Iv_Upg<T}ZP1|YTg??L3&mPd zNmgCm5E^m_s^IKo)io#7SL@&(Uj5D*kOux=7+Nbi1sGun_=G|l1^Ro9L4XkKl4)=v zpbR+x4kE~_D1jc=aJ0fiQ1IRMq`w^tz|y@V3mzzthuX3bx<O1mHy$-q;7oXaNEpV0 zVlDRWJd>DdNxDJIFDLnK2<Vu4vUL+Wy`hQ*9fYe<cyuFoX({n{k+&+ewFRC((dgS5 zO_F|FU8^|3c{R&BD((mWk;GCQYFMkw(@uz~e0M#$oknJ`+kso2&N`=Wc?v&^c#U^& zzW3@ks_{lSc5{PQ4>%Zabj2<M{4mBYgQdS7ZJ^L(BMl_hB$hFZLoLa#L4sCkv5w&^ zfTbnD@>&cH#kW-uYcTpH<p1A6dib>f_Wy!nEN|?`x`mR{cN1QG^){Wu;DF1q9W{)= zRaeZ1b%y2A=H`Y7MnMEz%j_XL0Sh-J8wIfPvDdjj4&5QMsZoSB6Y)kT6q8trH4r!a zzzJ~MreZ3N0o|AcG4G0Bf&bG4RHmVVaAhWb1xa^ip(5Rx!)=D)(L8R0D+{;{t}Nm< zxUv+#3f`~^wPmP5Y=>GseiagYTw8%!>)vkM4&i%ya675C7q^pY`*1s{wjYmKgJ!FE zOk7#RW8%sIJSMKJ<2EBu*}!dZWfQl-l`Y%`R}M;a4MOdZL>I0dmgvH@BNAP>c2uGZ z*N#ba;o5PDE?hey(S>U#LB`!T6nILyYV^Z{+gjBDsGi0`$ITiQxH<!|7OJ?-*;W;| zIVZKj4{)3F@N&<MUN1;j(i<0BRs6>7ttxJQ2lUg^>hjK36*su6RmBbNhPJ&o`nyNE zlKQ*Us^aGNwyL=Keeh;)tG_q2s<^@ZttxKt0JQD9(cgp8mDJxuttxK*aI1=&KLT&| zwfcLsRmBZ1x2m|oWAQ6$DYI?R&MPvKs==fQVp+WsYbZ7wRABnzPC!o(FaiA2Sx6_* zn;_P;rhKQi38r$zj)*9(T-7L$s#UYlQcY3$4Al=HRKs0m<ugR9{%Jg!9o!C}M`mCi z@W?X0-Wc2t<Lgf;h}I2au<qOz@vYA&?j?|{|B>~1sU<wXe^+%1q>FwEH6Luq9*4+0 zcvZeZ6N7_ND)2jB)5J8sNB&XsW90kLH=BuO0`^c^*V}L%X<b7TC2<<aK{6%O-wU5s z9d^0ks#S+`3B+gHb&41xUToK81Z*d?>vC9==xx{Oo9=7LBk11teI1dbegwa3J4u`( zZii7169-{de->u#VPYM2nRr-}NyEQRSgXLb4*2kJ9&nR5BegvNS98$vFx)u-<t7n_ zJEKxP3I8{kf3N2b*iYQ)xdd;H!{}@9Hct#dZ)>pDwn-cZ%EqBS5A|jEMadA*xkelX zD$hY}7VaK|+A+9y8lIhmx6exDX}G@$J!N2h7E@i8`hUHC60hp%^+$Yl%S9OFv?LEa zHV-mN!lw&rXW`!#&~*;Vlfc<wi8d_T^HQr4w9JB(|2-+)Dt|2D|5FX%vAW^^MuPt( zL6U1g$sythlo#RpB+z}3=miS?|7q&h5s$X@xps>-Zyq@gV_yKtV7hoo2WKRCo`>%Z zxU-{Co|povk4qYTecfQpsQ@Wh)@N>cdk(nWf>AC&FQ=tmS}l%2ON`qS(7rX|IjCdY zord=@RTx8afawV+cY&SYwl~u?aZ3+aJFkrhOxtfMyLDV1s5%dy!xD}Uz&9TCw{lsN zMjRk!pu{>XLtofV&jLMV*bPhp_3J?KVYogE^(1_7Uptac0p&x$!T-xUBzPeBgL9Ob zR_#^at8k5A35J3dK{@y?75qPHG;kh7N9bW~&;V=ZCRi=xV5QIstLk>}Voo@3=7zIP zJggc9V9zE5Cp*G`!YJ&H#lasWfgkK^GGHA!*kvvdML37w37mETntK4T{oo%4i5l=U z413U{-~q>hyGg*vF7UE5fTKB(^#W*O34BH!R;+gudx*WT7WxU|lZb*7#BxL<2Eq9U rq+-sUIGj!oq;XlxrgzGY_I0LRX4_@1UFO?mp<NawIlzfiLjS)2NgHpi literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Fraktur-Regular.woff b/assets/katex_assets/fonts/KaTeX_Fraktur-Regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..acab069f90b6fe6301a004e6f8beaf6a0db48bce GIT binary patch literal 13208 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 L0O<Q0fbf3+nYBJ! literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Fraktur-Regular.woff2 b/assets/katex_assets/fonts/KaTeX_Fraktur-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..735f6948d63c8cc7f8233735bb9c8d843c83d804 GIT binary patch literal 11316 zcmV-4EX&h(Pew8T0RR9104y{B4gdfE08GpP04v@A0RR9100000000000000000000 z00006U;umwJPDi(5eN$B5Yl!5HUcCAg8&PGLI4CH1&I&`f+`GwCmZ}gRY!B!IKa$? zb_&J+9~Rh>A))8;;A&?XTgw>?+~w4ijH#pv#Ou(S+JuTfhf>O^sW6;Fx#b2@rkj)P z-d}ew<OUyoUM>Us&r@x;?8bxf$`O*x4$w9`>Zp>GY6YYWOpppm0Tacj>9iMat?P7M zeq?N4er^2~ix2%ro%X&YLuBF*x<RK%PI|~&X_^nWrR#0s`C<)yfA1zT5f;!$mMFt6 zG81FiDWH~>1rn;Z`+whNU)8Qx?Rs|;h>c+(BThy{Z&%F@&w1yt=VV>r?H~L?6BF>5 zfJa7O#Hzbje%F80X)XY&@YP=+`+y2QQsM%pInqCr8y^i@=8oQ`C%0^%Ub%S)hpm7f zP~X1guWio2E3?dm>`7kJJ;Y@9;7<=tN!J0-=kELQvE7zHBF{AQTJX<v@BXk(*!GaK zBJJtD9M0)+S-k#lX-emhq$}%MP<rL1(ge^DvO9Y^@64>u*2qOWdrif8+I3s)9ni^D z#kH^$TnqQgMRvcEbW|EmSS<imL=8v)45J;83Sa=C4F;O!wJZyw#vB)mDCp$hb(yI2 zI#X3SDIvyy0Tbx4{iY28fM$0#LI9w5^$Y-5+qi$oH_JeQ`qGO5zmV|bPhOg;vm^^D z2!3iXK^IEZ%|HZz4JR-Ffc&k`0T3uI6b3XaaY!`=uHB*|>4OD{6f0G(M!k6sOlQ}% z*;c`2gC|<lNsmsi<MUGg>~H&<{<>%StNx;=zm+u-fT(FzM8F}SU;Atw&ec}8x^On? zguk%zd*;cMfG;)?qQg7bdxubOzFO?ABY$##DF5;Z=IOnjbPqK?S6Tx<fRf7vNa;)n z0@~$I2nN=yLvT=b$rnZfQ$j#;&Um&^GJeo5!T7OGFb#~QG=sRT7p%ofXV7V;^iY0b zFE(6HQ6-N}5lG;u#lU;}TZ&lNyh!BnKtxOGB#NWsyoxfyrb6}d*CH3IOlk?#J*#IN zm+Ci5`6~aecz@ZTmnd-9oPYQv<f~MgArH|m)rAXIh@*{%{!sq6R*<AlXKeu{n|L4X zC!NT^e!v_iYrsbfyxLQ(8Y<wXzj>10xv3_0h&v_Si)5*QLc|Uv&m&^8kq`<fAqY=1 zg2sx4W(K+$rL}-c2-WE-p>Vx6HZ+D9Z7L(kv*uQ>6qJ#+Jatmu{(X}0MRx#^&#bGc zv?`WG3*qv{5>w<vHQH4O4XALf0P{A|y%jS|z<!|=Z2SlGnS?efvI4^FwOP9p>Ap~q zyeu*@;mYg1NfecNl!;l@@q>)gcrr~@76o^UA>2`t_o{DomkZSVqAFeMxO7_*+<j(w zrVX(siK9OYsJKBkG0Ssl&4O=Q>TAVXR&@vmp0(C^bf-eNC<cLacrcCj>zWa`UGR~+ zK|`J@b=TCTJCPppUWG?T`K=1ohPbYe!;jXBud>X;YPhbWAbVyHKOEyqmr!uV5FUQ% zli~9sP&M#E40D+q@0`Fb04*_r`_8-*{Sa>QzdC!$9cdnJ?J$)PVj9ygIf297MMbSw z#%I-d@_-%)xC|n2UXalFIg1c@Z1baqZ-x@sW?&hp7;?AiN&~!LC@{v*fWo5&RUb}H z@GsWqBt#64Xe~q{FrgGPlwpplSfCnKP#vqNfi={`I%?rc=L8&tK&a*Lqh*RfZ%am9 z)|`%MjKklToiz@_KMz|Q0j9#*ET~=|NmXJcbf67gQ0Rd|9~1_lFa(7WDCD591qx%( z%p4TQEn4^-(n2LoSjn>_71^A*xdK?k%NXq^E<v<gIizV$H#omnFUAxFXuIW*_I7X0 zyINR|ydqIzAB(N#j+3ev%<O_*;P2Q&P_1VVSb_pk<-s)KE7V1+H@x9@C9?Qo*$2h6 zYef<$^T#N}0iv-u#Ni7m5Nkt)NAN7g3lt>@^p;F+KmU7RkDHP`SEaWfW{N|hXm~Zm zF@PA!5*Pl`N7wgex`x5E-}&5#;{5RM3QlHHr1U1JW@IGcwy+dlUfD~bEp5f!+)@=& zZs$o--jjQfyyKuUX_+f|EuW^H2)c}+FwIuA7Ecv1SMJJ6S}D_vC-Y9ap^B8;`D`U5 zp|<O2!?>c{XU-><;wdXTRzhT5uv5;X<#Yu=L(aBSLMZiSDY;5=ykTfOOF#-4J3!_p zp=>)B&`oNgTh%Y{*+vwzR@07M1jQp3RM*zp|AA@oWkt?ML&hxf*Sx^fMz1mVom1BE zR!_T^V2Y?zS^b2zqN-vkmdF<pu6Zthb^WTUtp8d;)pB>c1dd}~?+Q4HyuA^o?O=ZR zg6c{!LNSNd3B)WlGyU^Zm}VS6;?&^5xfJmRi2nv&b_S+e)sg*;*yS>@j1;rm$Go95 zYi4Odi=K7jc#RtRTvNAMnzzKJ5=X!bGfI9@V3`|3-KPD~Re70v1rMslaX_ipz|jwS zvnRv}Q$#y?uTm!7BCg|jQ^|XW0=P-=9&-`W6aXEE8G`T(o1{XP0$}6hJGdl38Nm$^ z@`eHUp|C(06Am#1M;L-*3}Fc{tZ@o<oPizZU}uFOJjW%ta0M=0gNrxlU=?b?7V2OX z8h|Y{1Y2kXw$K=Cp$XU)P2tI@ANi~+4zYyiAlbt8`U;e>Y{wvoRuP2O5g^KD4xy@H z8>X-eQ*++}3LRn?hmH}TQv~QdhcKmZ2{X8c8Qj7Q?$HW8B0zlv^a+g|USSUJFo#c= z!#7%?Uj*nML1r!g@NfLyK7Od{g=q1$Wv#S`S%cny?^NpV?0_(6K;0a*avL;l?BXZ5 z7eMqTs4rmxTL}tf@rF5ClQn>KajYU;CBm&krE+9l9zYjvRa;J8Usn=eH&7w^`5lF{ z4D+bNG=tHZZm(I_Oxd1Z8ES1!ciK+cne<30gJvNIl{bUEXRpoYm6`I$+|c5F&-&u_ zZnE-yz#6kT^>%#tG;yU)sU|(m-gITGy*J%q<m2sGYu*vQU+=Z^uBf~FVmzAce>wF0 zvF`ClrurB3;(S+ce7#FC#Mdq^zw*scomvf62>j&$E<<@L()7Z|25_iJl%Xv-68Lx0 z&bYmAYH6MDOcC!h?c$hxMs3&GK`vy(AzfX?xuli;o@#wfbv7-KIRXX~h)#XEm5mh& z80$lPtOqAOZ$BE~Q)C#-z~LrG;ww}AKFh~g|H@Rn#!g|Ao45?Ikr~5B1`k%+kCY#m z&UvctPz&wbSN6CI-i_0)+_~YvcbmTRl~Z5+PV0BSdRBFqI11Bn%2XW@zx-b7_svk< z=zwsi{3nO<S4%+e?@cgpOgByk#|X%k7j6il@+N}-c%EvB<Jfu@&S+#1@yqZXg_}6L z1h6^4foN2U4rc#cjwp6mqfWKfx>O@1NSS`SR+npjpdej`dRFS&vrQz}42p@HIPijo z7!d*ZP8g-vup0vHdyVha83yh8iQ}uC`=k{4fB<<zj9|u|a@G9&{CEh307d@?qL{w0 z@*S@G3N|h~&{Iooa@}1uKQp^mKR=19Baokso|%~8S3K}@pVzr=AMPVa8R2{Qdc@e2 z)7N5X`hS~^|J&t<$|{cSnucSE>+2i)?e|*0522Vgb~N{vvYxzIH*$$}#0@zd`<!E4 z+v`jE(+xo6;>9@sYKU>UAa$WoyJekvUWOG0hGRWEUQU<ucfzu&42hwQ7snCdRkm;x zZDj&yGVjSNmp>01{_El<hbDIVlyn_u#d0#59)2Id9n*DsbfV~7A|ZihULjt_*V5&) z$eCgzH3D#4Gqn1t;FRdJn_P|E9;y?GQ(k`}(}grod(=6lEMAT;DoD#K!2zmUdvjEQ zIl>aicFLJ;OvY<VaU`A2#~WAw#kAhlHaJ4OZc<g<E1X`bm>mA=bwpdi=}e3vRvoQs z2ZBc$;gA4j@q8XurOT`{j(OT<ZvkFyzA{00pk^0`3jQ8VBaN_^@5Goa;;tH<nmD56 z9;1gexA|BrLZG2j?zt>niTVZ3&21xpgtWN0;Vz?a%rY*`KSVCCBkKLF%L}_UKE6Zs ze6B2-IycOjkDdD*9SUBke0qJHTAwsWaTy|jj!0ud+9h02CQa(qeCyHSJJk3s^A?$? z)Hb40OeHS(kFo&m%hW=O01m`W>U`l(mEOI&MVGS`yFNRr$Gk?9%fcV@$?Tj*KI_<h zXSoJp`$aONaY9F{T%xkH)xgu1J1{Vi6T!a)6tTy2eVOX9qM|)bV*wB54K@gPbB)t! zYJPCgbRB5H269YdGCjUp#cr$fXe^(Yx7W_6PV|%r(EUqUh<8b_1=<tw-bXr}w$M1% zh#j3y_ty!ufN+kF<{wQJ)|i(5Lpt?xzSDI~<&~@skF&s9zcA&a-Adqj1dN6F>}4(2 zVhaNb85A?tV7q*nH?wjwG%{dmD<wjDm(X50PxGEU&(ZV})750;ckYf&tK|lY$k+G2 z<MGbPqmx?5=Kkz<bm2n59@fXJL-0^zyf+`uTT(X7sNIuYl8D7M8>ih>>SdGNBe_k2 z>&pU>UF}W?e~FW?TWAzX%sF2@g}SwcRH~fein4lnagS=Z(G%MhZGzFJJqC)FDz1n< zslQHgX6^%bjlfsvyq=s-Qc>vH<?+2?0~29UIkjq1mxrgRPPriXP|v}FY7`tMeiIUj z=pEP<%}BQ1$<;NgovP}L*fhV?mcfo}!Y4T~Us#@R=IUxv-pnf;%4Ulpu4@F=Zu69) zjf_kXwy$(Y!S*=eBBVQOMGpayi@KHd0$3ra(N-he5s(osf2Vr$^>QJ^uxp;!p!Mxi z0eKE7Qa@NsSZ40#fn=<hd^93I7VQESB3~~cyiSfbU~Hy#^Oy3N6F}MHabeGA`gWVi zrDWCqWGp)mqLx0_5hMt=GHtnBT@E7ko@qa1NajcFJk1^Az_4sK6mZ!Z$Df!~Mhv0I z`xk9K0zV|*KQzg5el$^KsFhFVFGy15SdfK$#=|0ww4kgD5+pn0Cp(INK2H4g`MXHx zBy(wE9?jO)uhyZ~%=g@T+pb_gaZC6tdwfH!*DdXEHmn;U`h;;ye7xZ(;n60v9<NdO z?JqBHYk$o3i&-@oL!ZaSy}lm=sa@N;Kou{rpzaCr7`-Vx2D`BBT^IYi#;2*5P0WqU zG}JPn{{{#6n>}vw@v=*B=2|%I-|309^PCB0yJw<>byqjK0Lfxx%hAk3r8I$Udb>}Z zM`Y7?{p}1daY5iwJZt|K!X>oP8{{-q9ZqNCj28_sZwAU{kt_+2=gHd%-%wHb#y98b zgyG29Z@eKT|5)`haQLBitp|tm;>~Oy)O<1Rl!0LuW;}>%KJq^1_OPpBDH=v?-q-K; z&nm%avn1tIe}asG_0dtB7L6tRu=z<H;6XnB5Tu+zZb)-hUF3c+t_?8WJ#SxX@B4ab za&IupMB3_;yviEatvL$e<IAdmpd8cfk+g-&VjM1cRP*`frO?&a2SITK9DEjR(n{ZU znaD+uJhAj)HD;wv>K1>m&nv229t)4Osv;@U%<C7i#a1Id72?J{Pj>&f`n;4A;@u~p z0>idTi)zy0wm?(nRX^4TpR)D5>J})5-I4RwZ99w>wk7zJ+@*Nkk{kiHEzgG}5{w)S zRB|aidoc)oA3f2oJs<bW1z^3n)c%<<XRN;){qyp+*cazJhzn>FLDh%xa-MxL_bdps zWg+OApY~XRQ9dXi-?)p+%lhddlq08|R?wb-YPXS!0p#IA!STb;b15h?#~x&}*hPI^ zufliGG(w;^ftI_qcw`F<?xu7LAShpjiMAK~CY^Pt#t~<ldYlE=B8`(KF5fT_9Ve)u znAoT6S+LfF;S3rMmowRm!G<lz6(57mTR|U+s6I>Q?j=5b(f$BqgZ=pZ>9|X>G}nsX zuq8we`gm$TPtubp;aNsPL6uvf^lTJ|v^2*lg=afBPrCb&ed56nZ!TWXmlp?RhZ_5- zFD4v<+>y{h-rC>uG8mUK$T0O|*%g%ps&%67w1cd`LY%Zx9FPM_UU(YfiL%m?5iXZj z%9RuoXJE$RRrt6)$atahoxzI;)htC_?p4G$?xuZE1Js_G9QryU8%d{<b0Bvs5wM{C z;=ZoF=#&Ho>-89fL_r$UK5${CZ4`TM1(mLOc|%n{j3ObqnD_sYQnRJx<JpIhswstr z-~HkpdbB*Y!o;JW<Kmm>fq}C+=~4I@TP6qv(y4P@=7uu8&Gpm2486pIb8DV5*L#=F zgdsRIgy+EKrw}$;2Kg%g@(ku>oZ_SZ9dr;0^p0VKWh&cK$k%<ZkB@gFg<oPZc{GT7 z@F{VN*&4E4>-ifqJ(XDs<m|Tg#J4>QC0uCCyQAyCmZoA>&ARm>Abd|!(TeFE%I;bW z7CvNK<FECnxrRN<QEr`gA}~~&c4-s&qWxPUU6WR-O~0rev53X@LNtwuG0D+uj^b_8 z#3f>XFJ6s!WC-61>dmz2(_e4NxW&y&ZQ(Frp#e@}HIs+rhh{dFTlS%+v5WH*v>Qih zZXn+U2Q=xu`N|3b)w&-HvIMkSxXiS8&>Gix%&;?6K$$s`xS5pU*um&80w-im_8&hn zeF8ZECFvS6lL65{7)<0#>~Sp&DP6;oYUDw2KT3F>y2B}yiEwU=G3&Vu?FB1}DaR<$ z0s`el)SdnrO_V=j%gm{HNp63u(o-DhYn_Q(Y~h4ye~ByE;g(-l*zW1V2Bu^0f<@KA z9K)=dA7%G%9REnWvU3G1x_SNbE!L@ox!GMe*X3{Ca&@;Z`zVuhJ<c^_sxOmYVBiS> zB2P#tVm%4w9%4EW;bp`)xpmD_YO~_qaa#6-a7#I~hPaR&Hd?^gE7{M=P8wk$%p6uk z9<XSRGW}GRU)b`#XcZ;BQDbm{d!JV<B7A(^8isUTI~}=N-lu3PuKQ;FmFL=sd(V#Z zz%|q&r%^kcpWmj<8v=ViR9oVC?Dy^Ab~3d)OKcpMNwi_``5!j7Z32Ca!q&$hc;K6F zd6<#K_ti}C=s^(vqn|#wEYP&;Tr!jzkJc>Q`M6g--(5A&Hg_u6Hi}YxvIASQ76m2t z(VR{wVHAvar$P0vjaYl+{nl>Vb6Xo>m_G0e*EXhQ1HZX$+uD#25H&;EO|1#9>K$e5 zndj}pVgm$4`WFfQ^`Xq)7V|c4U)1DuDjr!xx?r-+V~bU`BPtN05BJaG@s;r$e%7Oq z->J73>YBm%Us_>DV>Qs!Z<K}Ai^zWN6QHA4!4RDJa@Y00K|gNpI@FOj89^8scVYQY z)<9c*z+c@lU*$IJe8Qj(WHP=oYox4*&h~?EUz*Ik%?|@UXKfsEt})?kv__gLt2a)j z^ggx9lND7rR-U(5hUSk@H7Cdq=8bMHsg9YYAEOj+zDdH)AN<{&JAUDIFU02K$6{#k z%j#?Tl+o-<7mRM9-M+IKH|;j1?W3K=$#p{+e@oIY-52`RHsGtXCW9XC72Lw+9p)P% zr_x}vJnv*C-I&&vNVT&xhDgn=sujhC^6iL|liK%=_xCq9PjgnfTu*PF(ZvHRLg-gC z_4(!Y&XO_|E&AsOm$r1Fw4>Xn2xk5Gv!3)SWgU)v>I(`}Q!V5OZJSVUySBG&L;U!b zs1CX?Bg_3(shRm^mzpufu$G?^+2zU-kCe|4NFG?_Pvn}1{gxu9qe%AA-M2jhG{Iri zhO&!?b5G5_@I}PVgEx*hJW_Z4wX-$^Z>B4R2@3vB!-ifMH~rSO(zdAT_M_ftW{T&v zo^Z@N-r-4ix>Yull6Y176;)xg|NZEXT->>}-*;qFrTOH^{z8+xHSKB!S?r=0Jravw zdu6_BbrsSFdc1Qo14ZiM9AcuE<(XG}Z@~fvc8jW#s};p!X=RnQrllj3V>^WpGc6oz z8@=Bzf9`mqEL30ZR9Cmg>&xbiUcM#!e&2}y8MHI)6;zAn><ZH)rv{VecY<PLan$7M zu5;y-BP<w9Vs^J!Wyr27%zq5cIKgm<rq3IrrbRY1|CMsC-sEucZ#};Xm^D$kBOIaz zsHkK_^R@+pvG^Lz-k2uqenV-2W@|DL@Ly<9#o|`5SM%uLeik)3%8G0$^Hgz$RI<Cs z^PTsn0GlnDJhs>4oq>0HmPI4~uhqFaUDODpXLE8Sf5ZN><&1=AZ9!?FJ~-<hTamd% zr;+~o>>g|ie5ybHRXS@e-DYbk#Xp0#N>2_Vvv{=To%C7S*U)?ce<6=t23Ryi@j;h1 z7H8EYi;l~;MIw>#g?eQ?Wpndq?e=<WPZF6UbPxRx^8H}1WNdKNtEX0T=*W1l-&}WW zqPe&*UP1yb6lVR?{YWSqVhfrKtSv$sKFTP42g)yX)|E3vu5E9Mi|3=)KVDUd(k5yz zkGU-={;o%;Wb;@;(Q0fo3fTMCSrYeyWWnUjq&x?lsyn}{pJsn$p?$D6wX5w{v1MG{ z8i|}w<<!Q@JmT5jm%Dvx9;;Jz_i5jy+RAchh{uRsn3`?hwd9JqV;rLP_lk06Si3hI zP9)Ot8e8E&Sy!}zxh-LP8`ax6yP#lD2q<5cJnPfdo~p)dn@P5JNxc270U_7<>^w^u zH}_SyN||}r)bz@#r)}Wo{(C33?09cZ7hm6E0LpShx69jAI>%vTH&jij8pa1@IUsuf zdAF@f_1Cs97JQ1UH*UnJ`u%N|+#VyJsyaLx{J3Ygh-aO7N5TJi?5r@4yorOOIfIqT z$12PP8p3K(->FQdPt}03{c<<kk?1z@>_(fBBb}uUm#%%aBPdpmbzS$x9D4b9?%qaY zex$G{|5F2&T;LB`9*Wp%t@3+jY+`lT@yo81aj=FeL5<ZM_d>YDQxrSSieRbk3*vEI zDZV#%_^Ja>&$+1$2FDtB5nG`J^R9w^@ufVv$^43tQX@+rUYOxm;Hx=m#Gke{hs&7` zSV~J5E)UZ=GtUd9*sb9e7Os26(OP6%cb2oF`xI*Ml}DtSyt;Y1^b^5yjyNy!9Q0Yw z+Y7F~ji+zo-<@UiY7c9(#Y*@3s_23N0?dl!S5ii}xM#@lUZ&xarl87F$l6!x*e0Pj zWw29~4OO;xz$1mXtMwWOH(c9c*Ktt?pI~N95`X>q|CL=+k(*@7Aaz4`;X>fFiRk(D z;S2azulblBeF*QA?JM6tZ`&7)tlr<>b+z&7D@Ir?u&9mB<rnsS;RI-h66X%pyUvl5 zTO}gt!}Dbw`ND_GPEL{oq(Dkpomgqt7O=A~37(?mSj*<$+gD4+ywHJ0-lS?pz{Rjg zo)->Sh2YVw?<*rwwaR$tu`N<6%S>2%GjM_H#oOLeZKH2!FJBHEYm6$k<Uey-ME%G? zweYjUj&VY=WRog#jl66~%lz(kK?QE5iOp@@wJ9Mw)K`B;m~rxJy13B)QH;gXrf4;I zJ`#g+=?qGD)fj0Xj<Xcq*!Kd$j%ZZt-L#15qm*y^>Vc@2Z)uR-!j~9le<~Lv#GsnB zNOq9=GBEJ@i^tGLfBjsKU9T22>=kiT#?Q#r@er5qB8c(>I%S;NWDW|tZhPtAu78(7 zRBqN?r4=W-BNnFDifFT6#Jo^H^Qgn3Dv``zS!0#yv#o6WNbp+7!Qpy_<e`!EF05%t z*@B6#jF)-XmUsJ@XejEn|94(*Lr}KP?uvp>ef?1?HsNY@3hUbVmroKybpi#Tof2c% zZ_N;#Ek5F;bU+!Ts0x!sO<c?Hfg4<A(N686^HVGEc7$N#G3&dj5SMG3JVg=B%N{Ii z;eqFCo@-z1Nzb(Qhn`@mo<_PPcG6L8+FfSH)MJPw>k>L)pnEho;V@r8o*7|B*+?U4 zd8T|24y`0--Vx<-ekYCV{deYOnr$5A!}Fgakz$G>>C&mTjVzoOxFgE-<Wdu@Jj0Ji ztdB-e;eX!wKcA!FaxSZ+=Af&@YaN;6Tq?0ocs!zlN%xknuIl6&(b0#V<?erDgBUZz zqhd5J(CD9<n-}fdTUYDezd6&eK=gB@(Bdx=?cvK6W6~T;1z5lQd|jtkVq9gHYrW<v zr>$UPmN53g%WUr8L<6lZllHU2B}rWo$N$u<+$`6|c(#ge{R@)Z;+u3^aw^BMZ(3a` zp*qg`*{pMen8sX%8GLPI?!qH{&4F?m<KD(#a>=vya#7~8O3^yBcq&?Ikwnkya(~YB ziq{u0CCSjGp#3fMhVkUXQ*3X67Wo!FfOSF`+?%uwo#5CvwXTEAP;HT(GgNk&!DC~_ zZHL@ZeuqtnhwR+BV|WkpC1h`#NfmuwN|+|SSCBBsS$h~tQRLOZD2@k~RvSCZwf2Vd zWsVBP=7*5#=rU)<DXeKH`(MR^SRJb1x0~mv9X4@saU5omF5#q&&fUBNHi2#xCnCm9 zh$_(-W~Dq{>5kd$J6{YK*X&&CgLHr#R9Lh$yX2X|SjF|6l;mxfnj`A6a4GUAOzkO? z5;jY7*ZsV6(5&27Dt8N?g&u%a+&YpifAmd3h1CEvd9{iNxwZgO9bN9s*m+-EWurW1 z)<r`YKVi#$FZAgddK?0S6b>&n6$D;iLB!4mEk&mv8;TeweHYxH)<SadF@CMRNSAYu zJ}0TdTY{Yg_pVd3_x2lTX4_Vi@n@&=*wAtJ8fRr!u~%U!4}pzqld(xxi;G{|;iB($ zV<N@s>`W@}dvwI$`8yR0OrcAop&YO1BdY^5bXAeNhiI)(eY$x$yQ-+6pFE$TXTc6w zng?pKIt;v=sSS{#c;O`F^+z8gB@V?!g(g^ZP7?PTf1C7xSB&RgZfY;f{+gRT7mc#3 zYz?G^7}75nnHWEuVt8FKbh_R07o%To`^!8Y9PUX?7@v|UUtp4z&-u$s_&9^~9ih&n zmxn3UnrOAxsoM(DUmwO1hH=a;V^d}n9D1ta8O<~qyO`-uGr&h*|M8&n{ZGIBsta_b z&W-PVom)CgO`YgC!?p^C2$|Lze91^%_q?85mmB!YlwgY}UU9BmVY1+}P%GmjaUA5$ zxvUlk9*RpRJlYCLfi`c9TE8^Xm=p2r#=8#BfNNkRpC0@$P{m=wf2!uW3ZHjz|3J0Y zoE~Kt+u@$#<l{$LufJ{xEZuJ9Wn1SKb*L-MT^1R*vHPj@4HcVm6$Oa7(W;-tA8KAG z7K4%RKYfRaPU-?ntXRvM%`G&+hwo=sD>C?V>!t1hx&e&z9L#*~)URFXEX4cRw)}S> zLV;TrOxS{XK{v}&68Beyic_!s2!XOu@7BZK?W8Tv)>X?`Nz^A>0B`bpH;Ua)t;#rJ zZJL^me4ECgr8;%>PF?>MkhoM7b~+QVN^uLJ$*Qg|IO8BX<*}a0EFem!+Bpkr`W?0r zTup04Wd60m+7t~2ZK6SG_F8jqXgR83h`5`Rta9dKu0Q_wWnLFNWfQZ}D`9fs3-GHZ zU&xc6!aRR&3!?EN!#h|F#|#K-Oh8Xhw{M%94mLZVVyB9t9U+k2_YSjJvIJ@CQ{`N1 zrKp;kD-9;EBwh~-I49TNU9%DqdwkCZ)bSi^sLuOa;#~u^2i6iD*;kwZ5u%sA>Zotr z@;hP|AHHDEmwj&>Le=%W$6b-?tgq!xJC>IH1A1WQl|D$)KK!sr>~vI)g`do2x5iQp zA5C2WpaYjbIQ(0Vvs5X#eS~SrN5RkjYboS3E>1!&U%Z+X+PJ7w??rBS><nTqjN}K8 zkBm3nTq>{1zaLX83;V|!etuGWVPWUE7UNr`R3XM5ygG7dJH&eF3j*mu%=OmVuhyAe z+XGo|zKYJi5(wM#f^FsPu*k0CPtU0(L&5WNHgu71BVz&BLdb^1niUA>;LYd9d-EgX z5g$Ch?MOuq>^*AxP}~zgd#<$*mL3+r-I9d<(hVNTt}MEFfIQ*PO*?%C2R@)5pw*B0 z@!;<liA}Y(fm(&MVxcio<UpM`8O%9`da6>k{p@F-->?37Y)yVX3@Ql+Kci)dXD|$5 z%K5S@8}2GzI%h@aI>i8R;x}!NY2y+lBJ}H@PocJ53g@0gzT9goXtzY_R5|nL4Sl6W z<&$>pFs19;Yggu*tBN<nn=dEX<tt54CTe<NcU<Pk#-76+J4qJ^URm&(%w<X_DVy3h ze3R-OLje<|4NqojXV<~!|Cm=W@}ErRd(@$+3ix#L>`4P%h{jT+(kc@GV|O+hDd?6W zcOntn(Nd+JCa`B3YW!`8|MVroAIUiI`r?_Bt=U-ncsDc!T>nuRzep#W8pAIDpQL_w zp8=12+=6ReiJVa22kPyGd2<_H``A~|lop;j(DJg<wSiBC;v;wGRR2|m#bBpcwHa-- z8D<R!pdql~7891ltRstq!H*x%7$1w)w{Bm7uyk;#nP;xfJ#zu{1>S+a098S|=p2y~ zQ>Dyb@I~i`sDr)hT0j1;wTV%vJYgooo@%aCTKLGiu%p7Q&qA*=>+!%^iSe$-^Vf-~ z8cnGNHxK5WAqW*tG`R!;3WzBAEJ%X51#)Fp$fYj(O7`r3sOLwz6Xj5=8Mz98{p}R; zEO37Z%|QB2xV8Nc(;FIvOAbfh?_-xUHMgE?jOM#U-=g6{=o@iMp`*+SCjN)GLEIQs z1o)R|U57hoJ*KX9Gq-)i(CF@}um2|s$KXjH+KS11MWb8wbOt_8`-aE!_i>CB6gEu` z<fn}bPk5_0Mx+0Jf^}K>Ob&-ZtuUT;xm@}dgO2udRou;rUk$nvtNs~G9cA%cdKrh) zZ7D?!Q-6Jk#+TsehP0F+v0wRgCNCmlfbP|gC=!L2LVR6u6@x9sW$DvGdR}k{JoT8w z6F@iQ=E~zAxoo#en~~Y!fcwdhawMzkMae9Qd%3m=T_^@4vP~8>5tY>Wml=S&&tthY zg^T!(f)iHXOB!`g-!diVUVm35<-a}g0#)uIS(mL~#OumWaEcnS4JRUIAiR_02)`uE zE@PX@+lO9iTSjhrik`P^by4kiL1a>s@99u;yA3E2@ctNXf;gvLs&F?o6ruQ@gjDm* zklW_E-~43u5{|sI;)6VEtJNbvBQ~wm4_*S!85gWZXj@$lS^a^jWWGuJl}<_@ys|jl zfaAhRgCuXW?FE8`V3!ZFDrRI^E2!iT!ad#$a#0Eu;G`Q$>!yL@^>;61;842=T-8t$ zLyR0PhiabyGk?<kt=`&)2`@a82_tsg%Acg^NBf{aO=PmYE(D?fll<MC;fHe$<0I`u zl;#g$_X*&OK;q*T!q5nELWLiw-{f=kk8PRp8<zH$2Xzw*;(avbCDr~GJ*)?)cYaO6 zAfZrw&NLAV2SmZ+PHTBF8x6~;%Lo9nUk3wGh=77cC>S6F9R)&t(<B@MfQn*3AwY!~ z93Drf;sgP>P8IXmq-Gqv&*N&jn1%pgI7P@IW7?<5ICL=@%F!SkN`yGJQ(k6cq)$jj z++{)ygb@ZOl!9laAV*Z<FH?*3Vyv*px<(sR1WioUNMS%a<ksLtgb*$#xX5SD?r3JA z+-Vbsjua9p%XMlF6%7bB>B@6qd6w;I9gm8j@GO3<IGX@d<QPTHQe=1q2`UIUf)k4* z8wJ5KRVAQ76cj{=AObdrK^|zPB6>caBNK3$Xyw3gr+F+AOy1_QsT5_@3M!0J4uE1v zf(M~qA%K}_T}~F@xNI6p;Zuba{j87xA)rW2Rq*LZ+nS$4kD}ut1`$XI=?WA)LI+I8 zAOHe*dR#9JO#DA3mi*I+usZ+%3l{n}jf2kK_}?SHZUTS;1<0wY+Uu4Y*`B7pN4iUE zx6vcpRWoD@J?a-^S;{q_Qr}zp1XyK-xmVwK=s5MKxrkIc{`_qOumy8Cfgwm(zzhbE zpIGx5uuY2(UcLQvQrCOpVUVs`6b}`$YlnC>!wzKD`k)__3a1qPbL~Z{-2@|Bw%g(k z#m@E;U_<NluT){}!>pBkYbeJZ>1g$Sw?7u_O2LM1H1wX$pTJ(dtAYUWtl-KYtZd?l z11}G_g$8_KAcWQTvjQ_r>6(QsB0$Mq*B_i{=B|_e5%YB4h#$KU0IC4MFn~ZV7Gv^< zStj}+nNxskz)Xew-@M50dQ%oJZf4vEO{v9705^ZpK|(QhDOfWAwV2jHmNSV1Y74F3 zV?jnVPB;WO6@u;1sZa#ZoC@Rd)~Rr+WSxp&P1%~@;HmiP%;Kj?U>xo#_3AUGUxzmB z1_>xMQwmEj@3D)huT+<N3fQz5kf3uCif9New3*Xfox4}JP6MNUl8zAysn^NVs=;EV zWwO&_j8}nZenJC>{@`>OG=wy~(>6)Ff%ZFS?-y*ap&_&pFs{K)&8$jg>rn4kl{k%S zyq}a%ucf15v{=%?owhpZ5L&(3_t+d7_^>D~WVfY(G6<V0cTberB}N{OMvpXF?K(xr zC=F5Hk}}G0m4l6SiLRC2mBQ29Y>((b#|8BA0aEEO@5&H_^^5`mX+714k}%K4h!Vc` zfC?Is&`L*k=#L4+Xt&_a1i}DhV2EdsZ~->nqQY|Xp$zJiC{@3<PYvW&!3$G^uQIqJ zkTwjwgITgk_rQwe@HDKn2z6*dnqdN^W!e|0_K^dc1E{HVFmMfq>D_cc`n7@_e3A*M z`bKAadTovWQ{#074gn1V3kQ#Yh=h!SDhmxA0}~5dHV!Tx0TBr)894<dl^nU$G_-7c zqv;tKndB=_sEApy5~a#iu&}XnaB^|;@bd8s2&xhi77-N_S1lnarADo~K!L|R9vB1; zK|nwV5`u!DAsFP)`TxhqEJb5t^6Xed7tu!y5o5#@$v;>D;C+WT!U<21_4^m--^~Ip zJdkUT83C&E{3jCy!EA@cYG2ga2VMaJn-MyU{k{hbV0-A(<X!@olixd02Iull2exEf qdS6YC_MQiQG05ni{SfUZb-ha)1tF;3(d^~@xbC4&|C5rL0Bjq;IP)F= literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Main-Bold.ttf b/assets/katex_assets/fonts/KaTeX_Main-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..4060e627dc341c1854260cbc3f7386e222a4d297 GIT binary patch literal 51336 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 Y{My=5Zj3WbM|mX<0#Lulu=APmKiR?A3IG5A literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Main-Bold.woff b/assets/katex_assets/fonts/KaTeX_Main-Bold.woff new file mode 100644 index 0000000000000000000000000000000000000000..f38136ac1cc2dcdc9d9b10b8521487468b1f768c GIT binary patch literal 29912 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 bnfbLfgSm6Day;iB;wah|00962|Nj6Fv8wea literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Main-Bold.woff2 b/assets/katex_assets/fonts/KaTeX_Main-Bold.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..ab2ad21da6fbe6c171bb869240954d0ead8f68fd GIT binary patch literal 25324 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 PaX<W`)*!_C5C8xGh1v`w literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Main-BoldItalic.ttf b/assets/katex_assets/fonts/KaTeX_Main-BoldItalic.ttf new file mode 100644 index 0000000000000000000000000000000000000000..dc007977ee709a236d9e82719cf7d4e5577a81b9 GIT binary patch literal 32968 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Main-BoldItalic.woff b/assets/katex_assets/fonts/KaTeX_Main-BoldItalic.woff new file mode 100644 index 0000000000000000000000000000000000000000..67807b0bd4f867853271f5917fb3adf377f93f53 GIT binary patch literal 19412 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Main-BoldItalic.woff2 b/assets/katex_assets/fonts/KaTeX_Main-BoldItalic.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..5931794de4a2a485fa70099bf2659b145976d043 GIT binary patch literal 16780 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Main-Italic.ttf b/assets/katex_assets/fonts/KaTeX_Main-Italic.ttf new file mode 100644 index 0000000000000000000000000000000000000000..0e9b0f354ad460202bba554359f5adcc8da666b7 GIT binary patch literal 33580 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Main-Italic.woff b/assets/katex_assets/fonts/KaTeX_Main-Italic.woff new file mode 100644 index 0000000000000000000000000000000000000000..6f43b594b6c1d863a0e3f93b001f8dd503316464 GIT binary patch literal 19676 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Main-Italic.woff2 b/assets/katex_assets/fonts/KaTeX_Main-Italic.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..b50920e138807f385d0b0359f4f0f09891f18406 GIT binary patch literal 16988 zcmV(>K-j-`Pew8T0RR91076^<4gdfE0E4su073x(0RR9100000000000000000000 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Main-Regular.ttf b/assets/katex_assets/fonts/KaTeX_Main-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..dd45e1ed2e18b32c516d9b481ebed3cb8bffa711 GIT binary patch literal 53580 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Main-Regular.woff b/assets/katex_assets/fonts/KaTeX_Main-Regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..21f5812968c42392a3eaea9b0c6320870b6b8b38 GIT binary patch literal 30772 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�q{iqW@P3>Beq0%EJjvF(<Oy+|ZOV_T% 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Main-Regular.woff2 b/assets/katex_assets/fonts/KaTeX_Main-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..eb24a7ba282b03d830fa6c63ee897d92a5188736 GIT binary patch literal 26272 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�Eo53fd-;B(R!B1iIIdcW8p~aM%r;bv`+4KtJV;&Y# z0SPPvW_k-m&oGsML|2aBiewEPO{VbG13B|^8Ze5&LXa(Lw)-xC00aPpzpf4P*{R;% zAN=w-AcC9p3~>J{^|LXM%bvsFI4%+39{$|b8B_I-kr=~j(P~4C9r)0n#KGqA)8z{} zq>xeY%v<@N=qhob**`fWa%>CO#>Gyt*t?l;(Mq_6dSepq_uvA_Y9-dnC#NgMb@D|d zt!O1VeSEO_XR#M`0G9vUn?^l~F-kTpmuNHC17J|=r^b!t6f(kOjLmtqV|bU7^$Wn3 zo5QZ#RNKg0JBzF$+tN&xZPKxE9pBOoS__Qv)@_O;smM)USWkDHZ9eCoLgi}Tp{bLy z5yLadGXp4U(V!lJAlR#GwNRINZCA7dXI{Do9x3nalkr^cPkqB?{<%F+M0t5wD4Avp zY=0wqlS_d*E-#%5MZxGX8OQRUNuH&=N=}F(1-2nTGH>x;l~hWUkAUn7*+@ZsZ(MJE z!6)$(nO>!Eud%-?Z7kKu8@H9SB?5%CHqh2Yr*5Ul?|}Sc8Fz5bdnJp!6FFWsK2@+6 z0I>R-=DPmHjdeB6b43yCmKiHYhyQB~c+{S#+WD+9G#%x2Yv<tf*+=ps>gO{2SPp~L zwsc87=PrccxW$4KShWsLXJ9&pKzCClCc4{5?KH_R?!U;x8!O5FAyy-ntH*LNR{QXh zCQhv^thR|W3^W2i7I{<0hBpRraPC}9ZEcNmtzn?1hS0R8Oz`+mIjd_NTqM^#!0rN? zm*Wc^#@Vy7t;f|hYnI!s;!)R8gX<@h>vI!nqpLbQKf0w{`yPAR{=L%-x{*7sGDvsE z!HN0>X3x1rU@yupXw4otJE7dgeJ^WgwiHow$lNkV&R3MYas_mlhAdF34ycU2aiH3@ zC01|YY#o>S;Zxbu4}seqOyZ1X7hAj6Zvjs?jM*Z-=_=6(?nO#g`;F*LTw}Y_G{t`a z3U-_k>LCc)=+*ne9pIO5=QJ4Z-=|_?sI`EhVUF#~FEtj6;54p(cgEFK)znnc`GBDh z&mF7ft`v?q57B75Ga@cRXCvtllS6-Lu+Ql>lqFOiL08uSw@dtBcZ0gsC{poG52HMR z0uYA@fn?mc3@*I_mt4jNW^&*FzN7kT_c?HS+?~l73<xOTec%m11c0$SlQ&g9d3>pJ zR}CJ3IWuqm#D2G_Wz-vJ8HATy215~uPDi|M`-n>cf2T~NpBJ1zT|Lvg<MUGBo%<Qb z#*Q`YlI$|n)*f+%2{=Ez`VWhe%Hv%2apm}NYofu2e;muW>KOl#d)&HiEco+9R^Yl| z?^sZ_bsfg#p@-kehqr*dDcDVvxiQY>G0&~vN!L%Mb!WGZ%C6bSL~mluBlFI1xbw~& z0p=!b1Cz6PRN>un)}8WEg=e=CBppg$)X)@K93E@6Ntc8-g&G#6L*V6%ws43&p(jUU zOU(0Wm~4X0Q36GICf*qVmd0@85VL0vjpi%v{;gi1Vsg7nGsx};@bYiKg+abn5-+2( zF&fP8tIF!;GF5`ogoLtLN_tZa=!6;5C2{*-jI*k;>oEj|U=|I6X)rTili=03ojt&G zPQV@c`VE_=iEdp_3aLiJ2cZ)|ALMO-avLBZ{m$DnxG|}jU|_~ISGq&tw6kCOd?Yd+ zGr#+Kgo~aCoeU|BJfq<q+xx-kmh0TrP;LX9+W<aehE#Fr`owG9#<`-o_N7nlp))4t zM9BSbAQ<zWO_&)xJ}q|F9ejx}EKi)P>Ds+@LfDU~@$Z%J*47)nwp!kFR&;^Lt!i7j zu5az0+b`CVeX&VHJrTQ32&UO%(+-R4X05BxxFZTgzw9L1=lW`R{S>%&qs7|mOm=DO z#59@_%M<0<=*-;)yJ0trZWZO_VMdyKzRk|Uh1{@mc#Jxi;|PuO+5&lo*`s?|>^+9r zfxJ>*S%M99(82v1X~E1sGAgFP@~xhen&-7FL1CELF>Y$F$7L$ZtZyiyvG-+`nLMuE zaZ{NcFpL)H$6R?NZ6<g6Vx5H@<5n|<5w+muIL7Ki-zryC<%hG(dnXTC`0Sy?K5O3R zekoH=1D)4sS5bOHTgpth>*2wzUy)zEx3~AVR9Wi8=Q}r^x;bAk{~9%SQSGV!hHqN6 zy!%tNVBD?MD{#F0qc+IOGP@I#%%5oa#gT+Nqv?T2Y#;~|4!o7Cz%<e(lYCfEa@CK= zJqpB-O)|ZVlRMtIYB#`51d%MCF-KoxO|H!ISxkC+d=7)QUkV`a1$&}--qci+)3%K+ zkzvAhH<$d$<%U4-G{}7TK#f`Yy3fO$v%~AvR%`&dHApC)Aa}f;64nyitVN)CU;fRb zyKlg^io(VoaRX@2ZfJBgoCzG&aAQzOzWUbbOxba{-T+M2;>gWIN@&L=s|`=ihHQav zCo@!G_WJ%yBONMwbIaXmte}2Qt)TfPABSz?!g>gara>Z5E_F`}u7`WXnJHNFNBN72 z=L`eMERTNwK5NR1j%rXK5J@nKrw@MIYn8JI!|F7RKc`zix)Qb3lDXOy0a|*VKd^j} zfGsqPa3r#$Q_n)v|9y<<DU8!yHVW^G0)ulBxGmVp4dURL<k{JI7kTm2%EcB`fXQ5? z{pJHZxi!lULeQC-RTBq)Ip0l=OB1odOYfGa!ecMS-V3m-<-hVD1{Xx%6#xht1+rf8 zxg(FKRBzAY5kMRa-07m5vyY1*<>cj#Cd1`{w43n1*n)nrRNC9!F3z15D5pmtj30uf zGI%InC=rr8vKTKe!iytxRVtesg<_HLMIwaTYNVw=z_sw?HVEYkwL;$F4+K3N6k`TC zco5iw0Otgm;CP`}!0wIws&Y#|iG8RYd=rYb)I>GkU&sr$jsHsYZ%gS@y)|jPmdIYV zKwLz5zd(F%`2``>FrP(_K;{{Y42r<a*TRlfg9l*+ohU#?QL~YH`+epM_`uso;Z^W0 zV0p`dn&9tw3HbT(<06~|!^ZgIu`)j3wG|;FW6z1Y(G>;RGDJRPWwmVjo3p*8QJLcV zb|3GLcP9M!Um8xNG7Tdebpe$CAxtclUH4DPQ6b8VSLbE;%nO8ux^l?^-lUM%#hqfZ zG==y5w>6n+1R}T8PWoYH;UAldfTPEhI;tH|B~)SR#AuL|MJ8Tvj@NnZc$$Ju|7|Qr zjf@G#Qe4-_SiD(AW2QG)PnlX7E#Su`=I|_J8IJ*o!AhXpaUu#+yowDs=ZEXf1meM) z<32cU<}r`6QI?cfEV;pevye1mjAP6|b@f||Rnc!)24gc@H>hi9x*g_ilF4UnHzzw? zIA|b9S)q{R{$EvJnZylC8C$F_=V*9vc|HePH*BR$Q@_O--*+J$4)Q4gOjTu^xR}9M zLda8?cFkG%=hNFd0iQTKXmC7mbssWuAutF+Y8)|U3QBJ9;hLiN0%T&`=F-d{jlHs6 zUH|p<>L{dK5|{NXCZo3H$#~%Se-Y@~54RrK{@>x&{8ZPkPtt7E4MLcN4560y3ZP3G z5;$5cVxAw=H6hyKhEw%GN1hFlEmliOk03R=|IxwTKyHe=J*}iOrbPihGUm4FkSp0H z2Bmy-6VW_&m0AasKi7hu3r`VZrG+9r0uPtJC7)?K>WXRMo|&2cxarHk`kVgy^HvGB z0KmY2gv@1eOvTnwEqVJNsyXnm0lMH%jI0!THeCL5O6L^hm1=BKgU8Y^EaK{od8$3N z0JWAzrB>%-%YZnI0b1;3qa4>gyewNh@sLAi4U1wJ;8s3kDNms<DSAnG@1;}!JFNRi zyO?x{rc`O#2n*+wRhBz9StSC?#`g*1(j!+Bu=Jj&CdD^W3k_0GF}T^CvqZ!s%!-gj zv;$;7Rbz2M&SbKxF+4_Of=1+23Mk#D@qev20&8rf^<XB*DI%uKU?|U!F%Mair3Te| z=_WXAfK>RlEg~j!pbKcPM?zUmcExMDfl9u@6u_E##`GDW$Z?$_ngzW_Q|94VjNjck zi@@hKNA3bRdPC55pjEu)!oCddBR-YBxQ$MY^L>hL5J#7Bj~O5jq;i@d&IOR4IEjKi z&r&gNl7FkuvBrYj2lO#Z9$r?Krc5CR{++_%=zCA5Zo}x3BV}3>_4zJ7C=u39UE9JU za`H@AWNBvY>v<|8IZ)O;l6zDKX#xN~A&$f;m|fouf*xW}3sR|OvNd3de>n$3W8B1V zbnaLW%d^O~_*H^O)G?FwYo~gORjfp9uf-hTyk*(SGM_;{D+Ahqsj7GbwgAfqHZm)+ zGSJ^<g_)P3Lp~_tKKjbC5eX$VdS#4JS@4VkoY_oa;pwmVfQ`%JLEiIDc#|uV&4OD; zSx$|oZtdK*^rdi<EX5X$Li>QO*pH6KstSq4O+dcm@Q`5Yf~@6BE^jC0-5~<ocZc!3 zzdOR|((W`-!FH#!C!sr9zdN^!j9*-y<hjS;Dyf=p@GNIRkPHPQojl^D*ey+ICv<63 zlqyQzAR*I~JZZGRN7+S-BfwjxvT~75I2;F+TLw<)gzQh!^6kz?bVhke*ZIz@Ej1c_ zwZtt>jWVYd@Hk#t_BjE1i7h8ygzkYG#*b2sRNT`_Lal`|9BK<x<D4`xmpekV=r7Jp zi0sJ~T>?zJ>OMBcWn37X5URa6Ek7sqkYBPX42VKK@I^<(MigOk9v25<xk)E=&RPn* zxKEhla&E6cY(Y8!$vsUux=Cb)yWRqMB0#0UNzwwQDry6#lykttX=!6L73M+{?Fig+ z3Lr=Ghy^W<EVo)4aK{83O`{2^I}pNgh4I#^Y+Gf-JBp;5pot@Hl3t^lLXyXoYs*U% z-~B{5D&*#q@nPGZUA?^-MbH)3V*>E;uY+M?VdLQ9;lmL~6agU-F$pP|FySJ|MN&{w zQH!DxErwRCIPnrB(n*?Z|2vILlBF=SNR=jChEXzQ$!29^=j7t%kt3H^9-n*#3i$;T zDHaq`qEwl36)II3ty+y*b%B{@z9n{=V}(HvSmtMjEwI%Gw)vF9jwH)xJeFo`!k2u- zeLm-*3^Q{JODk&|TRRexQVJ9*Qmlldj(Oh+?>VmD1rFp^Wri7UgmNQQs8preC^beK zqt;mCjE^3oV&W2#QqnTAa`Fm_N_h|!RW<eec}+M1iON@ylMsu;6NsdIL=-A5KN*9W zOMWGr!{zY>LXlV^mB|%Km0F{vt)r`_Z(wL-Y+`C=ZeeL<ZDVU^@8Ia<tk!6CdV|qq zwpeX;htuWuczvU~Z4ru8oCr|~+&m~->*^f8f$Yn6r^hj=Rv#Vm8fi_<E)DnD?{0J7 zu(q3*v5sMw9?@I60)P$%4jFKzhtzg|hWf0^z47aE<9V;!J&MDfEnW9hoW5^i_&!SW zla4C$f9*d2qv4jp_fUJq#i%u6W7Ha<HCh=ih+F1ix<J6iQ_vGm&Ty2<rzimp$`tPT zS-G6D$vtPU>XD2@kED$rI-AjHJIiEVZ%#<h(^4a#CKvDYh}LqUx^FG#iOdKvNy3;^ zDM+#quzqj&PKcJogXy~JMt9Sp23@&C^IPWdNN2yBNx~Esw5WUx8<`K;k>jjrfQvnu zrjtA^1L9IA3zPK{nV9P>keOI!?U8kA=Th|S8CKbbLPN7n<#u7Q8GA{4o4U61Ajh-O zSFU-^`hD6dL0V6!I(d-l5|L&ABbdTu*6KSDt)=T$X67XpiDi4;ZK}r8gv|)1Ba^uR z`0m+Fbb%w8(Kw-}Cqjo=c&c!@xI5-HRGRdukOnqx7e*sD3A>&dDpTwxNaIfH@ZRcj z)4MzB8V6z6Y&K|~kp{f!+N@Ir7jsuyT&a)-F76iY6flDYQXvg&%u!)8xxuFE^bIb( zQ4jJy09T93jzG|o^1~1q+G8C@0K<Mv3t$ju*?K$-<I`Z)p<aUu;q^@WX$GKyrZk&U z?5rMGf%Vgq00F>xBnlb~lpVGXmK_Qj9qqse7}!yWiSn=`F^4s$us#6Mcu_;pho0{r bkH82T%!~T~dOL3iZSfI!+IWoKhyte*`46Vs literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Math-BoldItalic.ttf b/assets/katex_assets/fonts/KaTeX_Math-BoldItalic.ttf new file mode 100644 index 0000000000000000000000000000000000000000..728ce7a1e2cb689df32c3a6c26e1bd072dcf2acb GIT binary patch literal 31196 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 T)YS6}E-Q5R&CfXgJ?`xQe`ny2 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Math-BoldItalic.woff b/assets/katex_assets/fonts/KaTeX_Math-BoldItalic.woff new file mode 100644 index 0000000000000000000000000000000000000000..0ae390d74c9f665cf8b1e5ea5483395da7513444 GIT binary patch literal 18668 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�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 J00IC101u*7EU^Fp literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Math-BoldItalic.woff2 b/assets/katex_assets/fonts/KaTeX_Math-BoldItalic.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..29657023adc09956249f6295746c8ce4469b50d3 GIT binary patch literal 16400 zcmV+rK<~eIPew8T0RR9106-7`4gdfE0D43K06(+<0RR9100000000000000000000 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Math-Italic.ttf b/assets/katex_assets/fonts/KaTeX_Math-Italic.ttf new file mode 100644 index 0000000000000000000000000000000000000000..70d559b4e937ca1b805eb39f544cbebe3c58ca6f GIT binary patch literal 31308 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 G#ECDig^RoZ literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Math-Italic.woff b/assets/katex_assets/fonts/KaTeX_Math-Italic.woff new file mode 100644 index 0000000000000000000000000000000000000000..eb5159d4c1ca83fb92b3190223698427df0e010c GIT binary patch literal 18748 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Math-Italic.woff2 b/assets/katex_assets/fonts/KaTeX_Math-Italic.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..215c143fd7805a5c2b222bd7892a1a2b09610020 GIT binary patch literal 16440 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 U-*4>v&?)=hdHw#v3!DrL0I>S<od5s; literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_SansSerif-Bold.ttf b/assets/katex_assets/fonts/KaTeX_SansSerif-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..2f65a8a3a6d3628d11ea9c26c9077cef672fe427 GIT binary patch literal 24504 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≺+t?Nf`n5qwz%jcm`8_u4N8ib7Ypto#Q^B#WkY(z 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_SansSerif-Bold.woff b/assets/katex_assets/fonts/KaTeX_SansSerif-Bold.woff new file mode 100644 index 0000000000000000000000000000000000000000..8d47c02d9408d34b2a9d566c0fe0d42bf82fb735 GIT binary patch literal 14408 zcmY*<1yEg2%<sh=F7EDD+}+*X-Q8Ua6u7t*io3hJODSI5-5rX{<Ntkc-ptF+Z+DYP za`t3q=j80hOG#1^00#IXZfOAWf1^>`|MLIM|9?_aV`2pW81BEMnqM%M+)C^+b1-oR z02t-J_%;9l4AF0pG{Vf&odf{j(EgI~enA%k0e9Kb*~$R`_y!38Kz9KE$cU!j-u<mi z+`eqNg}-!Q|1W@6_CA(he#8L)T0{Uqe4YF5_|e+J#2f&ixBk-M{10Z-qAS*4!mqW= zfAPd$pny?=$g_5E_x{q$`?6>M!YNulfxf+y*_R&O*K+_*|A8iuH^jlj`-`Vj{^Cjg z1K2m@UyddY7GG;l`LfFf03hSc<N|*<JGr?709^n1g8PEg2E@yov#Z6IEqmXWUHTUq zEC#?MyjLf?ptA6nnuP?9b`!iMb^B#?Z73PP&lujX;@4hqtVIzj5{!!Q9W!^8I2x9v zq_m^_!8kO13K*a8QI=IZ)c)Aws{?kve?C1{+FQ7D<oI1a5<TU()l`raSI~^BjcL{m zU>0MQOVBk-*T0l>FVHohd{)5|V?PooV<^uA$cod_o_1%ml;qh4G2{qm)r+>18OHin z>I_cWlI29|Ww~f#6k@VGQAf*1f6x4m<0g4C0m~CIL?g-|3-jUt9a-?oZMVb?mA6l= zB*hqm9E3oMXThfvL!xZ<{?1SWODlT~d`nI!5W~e(O<|=<Q)RcC)Md=6%a%ciqp0?+ zSG9R>W*SfLn?R)61-Ed;kub{#zCPDO&r0C}-^Lf=g%M5I*&~Aqd3~kFIepCGuh1H@ zEA^?&JD=V{#c5QWoo&W_HlFSNmhBj|{1P3qUB_}}nW|o$g@E&!1et<8B-v@|-)dU{ z@P@&yCMueBg<?E0=4mMPTHK3QewS)L3}b^pLO*4-l_Zj(h{)aFU;K%Ybao|)(77Co zPu^%twXxom_4R`Sem-X7VS3dh=jL@d3J6=g^Pc@JhwUZf!GtGeZph}1Xg;g+`xl*Q zE$Z)6XGVo1`g3#G41u_AGXpLXAFNYr^XH}6K1>+%HXpDG6OY?>pZ1BxS4F4NUdxmA z<-OC>-hj*0wEmApyLpsS^_NG7aw|AcC!Zc|3J6m#ri~=37p+jXkVd2NGLNpea)HbP zF2y10%(iN!Oe>H*$d_>~6UjuEprjF9Wkwy7&CME;CG56ef7HbZp%jvYWk|^oJ%YwK z^>k7P9e6EFfkjbQsUP8g+%Rdy;R<HJq@_M13tddEp}}MWa9Yse?y<Zo%+~%>0c^g% z4i*{XiL@CsfxOCs7r$N6u6t+Fv};pSDVr%Qy+#KIGx$wIJ|5E`0awk+Rh8kG!iP?Z zY28d*Wh!E<f(b&Sj|HVR?aPi2gPVCyXdqdLBw|d-UQVLnYx$X4pg<lO4fL)DZ1Jh2 zZ@%)^JH%qc>o+>E5?mO=9;D;OQh2yN`PlZ+UWL)<2-I;BOCwixT=}?hl%~{j(w+vs zWWWqu%QF}qQ|$azLP)kJ4SJd~ADV%E0p~)WRSqVsQTb=%qII+#+xcT}N0C{ogRIh$ z%z%7$7PbCvP%1DQOn}-mu+_C?`I${=lXa;wG8@K=Fbly4J<9UW#)S8P4v5*w>K!iA z=a(|-Ak;K*bBVH?A;&NhlvTf{eoQn62;aG#EMh%qD>Qj2mw3W}kkJ#x_7xge)uadw zgY1$6&``g=9BjgB*0qUh$R#z{skq^462>9A!C!@%#%C9xeQ_Sex;=Q4PH1|fQCvl+ z*=#x~KAqi6nqkyTDGc)idSSyUx*=FGWA)!JH+kkViDm>GWb*FNc|m?IT)9aNF_#K9 zjOC7#CpnI$N<*8LfnXgit#7%wsxEwOmSloCge5eQn93~!V&ivlLgrqXI3E#A>knI} z8$)WX1Ut^c*2cR09Faq6<-^5nOmgBIaQYGrgHhZB+h@&Q80yW}$VhpeW3hktPXCR7 z!tTVF;x>6+{$z4nr$eIzTHeMy9BpE$3tMx4SL-^0=}YZ6437ogK7K<>`!x983HsOr zWkXAb*wrHCVJDpOzYU8K07)YyH^I&7b}vvThVPby;c~F2w`g*<zVF|i#jz}7HD=D) z@xp5u>*GPvr-e^x-|Au4Yj&>~XUR~y#!P7B{ZeidFJ>@*^(Ea@k<lS6j!dNW=qq;i zk)kydmxU;Az$+8S;a&6!=0?sNHO<Ba4IBVL*x<@j``{bO@cXP5uo%9>%zvPiIrH9A z@!M8$anuOj97k#0b5wz6a<26~n%xVO<{k>`m$%^Iy?GHaT*(GAvGe+i!ZVCrZ`odC zg>03Dd{^f$Zgg)QOO5tv-5(w`K@UP9v>fMSnJGu9eApaS|F()vT8Zg3Lrv*W`f0>d zBIf}|<#G2lkCszrlNjx9^9=Fg-bdv>|IP<ta)X<e%u#_2VbW$4a3_Tiv!#>el7`*R zkD}hLr33lZ;*B9yoA}@a!&riiN!Sqe2{O>_On2da`HSx2^tc(ZgTZ=|;_`>I2uV)} zm69Q{`D3Hr#O+?o{Y)r}`FxiOgb$LOrjscq-3@YDRZqA#&|z4Z@>29z!sS38(BZ?P zz+k#;ud}SYY;#dA_2lC9AQ@h)Zf%N&<n2J~WNMA>P7?v<<zdQs4prr~6&<h4?QaI0 z4HVv=uG~%McK?ctV0wDBee5gF$RE-VG&0o`Fd2y+uF624Um02n-#e(_q62JU1h&v< zW~VKxG<a+2Sj#kO*v*3!*WD4j55gy<i?Dt;m8_wJaS-w0T9oXnq~zT+R*=SCgGG3j zyt+Z7j1;2&Tk7R3xcLSFhKmGFq4QdKQ5!Lw1!202J)C7`I<-@lj(&;;AjZ6LEp-+4 zaxT~CPH<py{T)G$c5eM}W=|#Kfu|)ygzE9aK`zFYDV4+)uwNjSvA{6O@B92z$bvb> zXUT^9bQ!I~tQcv|u1m`AZNTl}9O%i~T9A28Ns?j7d8Djh>2<geq|2qBDvcCH`2Ib? zw>W_pQ<tt;-7mMo$FQg_#ai7W40i-6KjIcep0d+{(~x<>9X>_@`)aLswCgS657RpC z4<Jxh)Xs~Gp73BtP!cvq#0sw1@7DMMYMfH?p8|EZ`y$0f`$N)qdQnJXr8dLS*zzbB zOfbFa;2RCmS65M}j7UgwSvhMXho(I8_Qoojjo|o3cPOa%N-3x`@O|5baGfWl`d_kz z1Kdg^mR_a6*hJZQ^HUfURk-6;#1eG-2(uTwR2T4a$5(vjdKT`_6Vs{{G-tk)?uC@A zV%G2=7H;rp4#8Wd-1y;-e*#zD2Jny-lp&`e(K$@;1p<iQ=X9uG`hhO3#WNh(axA+% zxLP8%XsgkkNUwY1v9NsvCqrwSjX+T2{z+{8px>hUtxHM$^=W=RI9CTA4<jP<ESE z&sT-NxHl1TnUpwqW-vi~YVf<3r0RIT*1Onp^l*2;6`ejm6=><{p-Kt`I-0C?aYVnN zDyUPQ&~SHw*8X6mn@EZNwBj`IgpOMITZ#4O6Q-W}Z<aEnmOjrPACtk7{7ZM~tK(JG z{1%%cRa<8U;wD&7>r}VxpViG?aiDDOK(HiNmX$R<^dD-+3}PDh2dtgkVCa^ZnoC2d zouT$hNoa%Y_w0n{z+$5j=+V;W_E4Y>?CE9Dh8(*;Iy#wIKD`l}-(25gHct3jLnHsR zzW(pXp3*D0`f^yi_)5>;uwD`|dLK<o;G?c3`%@5T(MgKX|BRY?wWH{k2QPIfD-mfc zAv5ieAF&w1y0y=pnzA-FOr^w8jpRZz+Q-_Pus{HYKDX_rM)TXOM(Ehb+9+tCgg42` zJMpKF;2`sSuzN)kvTpyrvY3^f6d#bf_+B;}LRHLWXo?&EJpQ8Q7!oK<!Pm6&eB^X4 z0xNoU=;s#MFgK%ZB&cmiEX3YD6*ug6;c?<FNb=y<4}%!3QTAAav)DJuUCGi8iK4ir zCL5(!9m;o}uG6?;t*Yhy+fbmuu*ZJ)ycBJ}U`5SJN>oJ>1WlFVg(82*5D{`eg@lFR zVE{D)CWS_?Km?27(1<)H?quI=WUI*ETe)Zh+19bz$1jv_ur@e4koXT`<4%`M+!Hr( zXX@e=U1nlVYk0C`24P=P&RY_WMyDQ`zKpaTnaVr+tXW)qlnInOZRQ%;euIYI!=FCD zPG(<%Iug14aAbs~lW2~#X>Y-zN9S6#@_`qx&3SPaFF}{4@G)=ndnEO*GyEn)x}>Z$ z5CJG5OM=;3Ne>!YRN+GNYPUaWs$mFMsQWz=`?k|<FdO{VqynT&=b&aEQWrS}|FrOo z*j=8q+Tg+P#tV?Ga*>}<x%eHHfK9%R>0|f@#TF~MegR}UN|z$MaJtG#piC?BeE&jt zL{R1gA~WunjsG3Ic2@WrUz3ICMUAHt>S@NIov~J5Z)Mx9LU$ajt;Er6=2!K8YPP6C z75|3ZjUS+jtGNjKn_3b=UlIWo;%!&7ZNDQTtn?t~Qz50e6~x`LGGNHulr^!sV1JKQ zGj(xt{`mw^$Em_Gb#}!pmf(Mmf3Qk_D<6+J|Ag{r)ELO>-803@i$)+^30d%LtI;b= zu5LiM_ZWcKvI^8SsH)*-wiLWBWYe?<OJPxYU8?P1l-Q9p_n7}T`LbG8Az9nSzH{!8 z>-`!QNwXoVQDs>)4QNOC);B9bU#;FzRH!G7A^{om8x+kpVy8iqw3HAQ*NZp&4>}f~ zg23@JKlq*opW#RP1Ewi|li_ycJi`^s!@0;Ki8!O{)55QVCmBK3=qXW^2!IOF%xv+H zZSC7)35nWd&fndo1I((dg5W-bLp#diZ(XL%>lv1;qYmvX%9f3Be1?%>q5}nt@6qNM zZJOBwj60+U+o`+I2))k+;ni05S+G6LPS-JSQr`~GEbSV9_e);Lt}eB*qDxI;`rq*< zKz6WHfGe9lj{JTGOcAeg&mp2U;clx;oV_1hdScnsU%I;$BVQvy5g<ML<&%n$#VO-T zm6c*DE>MQ)%Uc{Lk8e|~R+o@>BL-d9KCZ)LUM$=-W8hGgq}!5<5q7^SZMhknPLfzc zl9~dnfd=)nZI63(<hJ7MQ`B0hRS&ptzl;p+yhuaANM)}DMgQr`iy-@Mp&skVik!Q# z=F^QyO<A#0m_C<D*eWnB{FIiFXDdD~#4^9~R(LYts<^W|YO$(`PJ(h)?sz}u+rkEi zlU)N(<DO@8Un!0TH#LO15cZ-^1_#B}nNMigEH13F`gUXuVrYvjtF$Y-w>aT8gJphj zR^VY2Ot2hW1u>OGXNRGvEVYFE!o%NcBF)(SVR+z{sYTcU4FPKCnpT_jP+2fx&DO#D z`lJ1%5u)T9!tYp0?)X+jl)z6<S`<+z@q9KwUaTOnDP^`R3$I(-9@=B3qRbv5)WLnB zz(uIXt(1F-*5j&f36Pfli`c2YVmk4c$|yruLqzRI;x)HoaAcdH&27KmHy(1>bW?P6 z*@5Er)Yr$X<{*k#SxRVFYA=IGILZ4^`pZC}^KL8YV&FINFwyXiyQOaLY~5Nge7q41 zSjSH^6ZX@qbF*VXsXuIv??bWsibNN4{6}iq@H;BUH4@8;CRi0(lmrRM@;149Iq#qc zlz{n}H3R--kKG_aH9>z+kjGke>*gUTbupUFuUkJ-4fRE%G&#%%E5SgM!@@)0w1I!x zJ`*v<^l8#FpEToj4hCwxYwR**<6N}GtVCEoD{i&yv&dSf!*mJBF)!!D+b?_KMARc9 zsr?7ywcb5Du7AuGoTK%q4wMY=1T>(RHbFW|2N|r>gY+r=vc6~6>bn_5X_Q@6h?@YQ z8?wv2wfg~l37(P2Ai3hiS@O$|msbkx@Fi@{hhS7PbTbjiNrk%%b{uZhLs%PSA|l=c za}=nhHXH5k=fx$gMJ?fB;CyiY;ah}zM*z&fgIEL~3kkXc9xNgy0=X$^@$EY``XZUi zr};e=4-@>PA2suXte_%LvTT;2{U>+=7fg@n1PlG)v2IUglANZ2!`%-o%x`Erh-_Dd z_@nTi-ciuI?Xe-SOAj?tZlymKoQ?nLp4#kKN)Z-vd4=L(z5j&e@~U0{qev6LR5HVf z4_oVfbtl+cE?qS+NoCYh05X{wyuRa$_)}iSexB#!@y>lT)|!Gi)zQyR^?Pcp$y8#) ze&Valo?s!7)<=&uXjH9E?uuOeP&dFZ2;~=A$PZT!JQ&U^um~l$hgy9OhJs!GBOmRo z#`lJA-i*QoUqNDVI;J$+3iUIdHh?T}|AHhji<zPOS@fb@E?O(8W~}(U#-Ob@gBC}a zFlOW5G--jx8WVx96CGqwTvx!Pq8iEyM0f0F^DI0VH`r9u_GIf3o|{-uoBL;Uya1=r zM$mZ9i$0aXv3`4Q+C)bv!Mq`<vRvDHlQ|+e3eOfC)6JCfr4#~%u<5@NFRaTzW}j8X zt%sfY_3@9W8+6r;m2?Q?nK!XVFSNE}vMqSoovlh=Gk5bLiCu+bK1C#JL)H>ibJQq* zam6z<V68c&-6@pjeWFW<O9$;igxFf82ADC299opO9T@d;&+PcM4?(tpSbP321`%%w z4`IK2_rVMZ9os4S2vKXwIBQ+2ya^7Z%H<&!%av~t7kYx;uB?)es91-v>@$qb_zA)H z#d4ks>+D*(tqXnB;3lNVIO=Ex+1BR6{RsT-MtkaFROX9|6ROw-xl~U$cMK15aWxi< zU<NndX+@~uZX*}!q_;ayLK>k*BZWmy9=x*k<78s=?s2V-f*Otz4(j&97aN22dmZhu z{$m<{uc3;^Ee7enKYt(eF({)d1f(Y~^<Jjwbx(#oX0h~v<$yWUWfqDm$sO~Is>MhW zI#IMY`~T(=s@6u#k)ZbW?cCKW%<@%t!)tGWAwLq$Q_8JEb|-S`8;`;tZCN5im}S@I zu5r1<XwRC;cHijF*{xAvd8Ds6MZX&kpca>QN`a15c0YH=Th}6PP0I4y;aJYju3bqG zxv^U`aK}YJ#0lJ9&>Uf}|3xH$%CcvMjB?^!`EKw$JW;@4&iKt2oPd_KSDy54h6Bep zZ<m|BIr#M=c4Z=T&Z+_bBG4Y6PPA`EDqtWHGLf+<=)ep=f*Cv(mm$-`ELr$bK$Pnx zjKBEju>Z}H!Y<SR=zGgWX_;Zy&mEZgn{v5A$gDnfHChY6%)&=NxK9Xo)yKY;x&8jo z5K~Z91Z|Qazok>h!|00^(Mgx`SfVB%Kz2+eWqojXID6*ARVM!p94Bd0xGx0nAK09A zQdkrhaV@(0Ar>>byERZMS4#3WmKH+bO8kiX{h=0S64Kote`StI_wCw&rlf);tY$lH zC{IkK&Kw8-ZJZ0%K-5}B1WRMwbpb@)aD0G3lT?vLoiCJB_YU^vk9g?iGH9A?hp0xm zz=IsJKt9oQ^MuogcwdWEgIVX0l&GMceMP!Ebz?I)FYORVsfeg1AToX|C@``1IUC4N z@0nAd_hJJ(4_oDT!ZKJ8Y#o#TeJCk#N|o3;s5)=7g!J<;xGN)Ko_e*H(Bx--%SmvX zPE9L?`?X;G=H8GmjKT_i<iZAc>=D`!acldszNlydrpHEJQzt1IALtv!a6{cF_BZ}u z<;WT1p+zyMLD=hFz8bAjXsgPSLdaaV#avYJ#TulFOtGl4a<U>DfgPkQJgy(Nbx4MO z*p@UyV6dM<n^C|;04{Xt`M=h}hfz4P5-@cE9Ht`jl5{HWjE)#|Q=H`ufqR|$UlrO4 zt))CJOnOS}76JVRKeQ|nNb8f=`HE(p38kTwly1a_+R7jS<xkHO@^_NxKcajuV)G<y zzoVv_-A8MYgk3@jGg$Tng^~$3^<IC&ngar&Sg_iTcJOOjaY$0_?pM!<{8EgGJbCFw z2i(HLJV;F>e!fUVH&kug#cUn#bghMNzIPQlQyr6Zbq6dXmx%T;yxn1!;fV%s4^p3p zYX89N8!|-}dU_{bcbbtB3|rhWCuNL95v7Ye!2P&rUIGHg$^HVPvrH<-#;$@c+<9>2 zqb`+76J~EOrtf5jBZE%pdbgR66490ZlA$(d{YhPr7Uy$l{nIdm5INq05pV+c*qiiY z8>NlEO>Clnm;kqT8ncq=NHmA7R$|{mD%yWwx=oRPA+ripG*b#%&*x&w?kkwjM2;u@ zX3330xr5pZAx|*}Ma5rMCG*X6(jpbl)H&3C<`g3rq}&*?Z9j5v%4IKQRSh%4(+LOc zi>)Yun2<e5CHE?rOUz~PJUK7yaHqXpo32Vw=vcH0lvAtRpfcb+;5<o4LSHy`>T8uC z$iZ^)ZcvG1EKgu571qV>3R+nSBb~P%`_cKYT{D)88rA9}11Vib%Tp0wdlb)Dd^SxW zepnc7B%~<Sm~iw_$uS#8+s#mUc~636ei9tX8d0MJvFLJ!MFIzy;<UK=M)iZbLX$m- znA@i$h#$x5s-73!KpJ1`Um^`w16TYT5w4=*47oXz2lV=B(1CV4sI8%TF6lcCfn`Z1 zzvK^?Yz&jStti~p{kX?wq0~zG)g57bGNHW3(&Gk<gK<0U>FFR3=B3QF9!4V>nQ2O( zzb*+4+dSB=r)>A4_CP(!;m`+(rxL3)oH;ADmzd_s9Zmnz(hIF7k0pCn<v(f=3xrfd zV!EJ^S!k4S`0<+z)7uk_N}Xv+eNTgZL#bK5xRa8nt%oupR>6rkSH7)?NF09<Y8gfr zx^}85qWM7r<H;<=eo*|}t!(qcwO@{?`Z8bp!_dyl!^iJE&C^JU-;P3VL<D5z7Z3;b z)6P<n4W>%f9Dy61n&utP8ZZmjtZCDK1rD|-c?Y7N>}@S&$I=9D{hq-5<@P(?MO%6< z8AOo{L6#SxO$6lqHU|CYx({cGf&Yxu?pxN9X5~L0cqA1d2?q3(IzCeCBGP{F@~OU1 z2i_BtO7m-4!g@_ZRzvrL=Mbjf&MiD@!kFE_kvWvAbs5A99=NwlB93-)ziXVNWg6}c zCzk8qSQ@3c+WcwMJ{C9mW1Q_3JT6*POG6kF{coyA1VW^xOp44`tCWKDI|K`66Onf< zp#+54ZwS2Lh!bl}wj$5N<@usBF2QTCc$|Q1vFOm$u|&G)L9JAmqxIOp&l`M8D(JqG zzpx>?hQ=<h`j}hf9W6MIZ%?7*Zt=2_t!;ll8L)-|ynjDa+$4E^hHoe|3Qn<@Alhgv z$y;bHC>gB@TX^0IdIXvU8?=%0`ab_c8fHMy?s_y*l&1Lc=jJ0sbNbRgD}(;2=AsD# zdNbFGwy&rY<Pzpl-E}(jVLCw34F;Kq950T}X2(5_#i>4`K)#@Jt_qX%KAD=@uiN;p z-y$a`saleu+Rvvj19W1_f6aPP&pna&Zeb!*rSRs#HfWZ{obzk5(KC*B%Gx@Cn;?-g zsoUcx`PX+(hqTQ{&Q90wXl=cVqpIh9gB`Ez=Lx-|wqa9bgPsM7tV#+~WR9UMZVEL* zgGlMm#A3~LS2hXS%(bcNokBT@M>0Z}K3H_SUI`!$sfGf~A$HhJD$E870gh_9u|xK+ z@-r$-8K{T{;&<JVgFx2UIDYS<k~i%!47Zm_F&~H`dAVPBfw`!o8$%w6DssvJvKPG1 zY=)ZLV)xNK?!(UY1UMSBP|!fXg_m+;4CW4OnGzw&j~8sFZgaiU<>a6QZ`KJQ-_&Wx ziP!3+&(sZK0es|BVIPx)#Od)V=z0sJpXrugcPWvt?2eMc(o$r}!RSoy!MDcOvx<0~ z%2=}J<*-s+P**`2TcZxF{$&bBrE>9YXg=J2+enC;v)DAuCOElu5K0R-U4jOu&W<{^ zG3thrqqAiBs`NAHG-$H0<!bq#Q2vs)_VQy^l|4)D0Yw^ZtA62C#PSvq`sroJL;DTH zYqIy-x`*9LXdp!JqEJ%(%@$7nO%E6~&Sq19;l_&Y@YX+0rFF0F%tQF{Dl^DYqTtpD zq!nw$Z`ut0!#nBa!Js6g4hLWUgU_u%{2qS7{@H~=1wN^dG_b+$96*#};dG2g&6^%) z6$vF%#iqPCh1hSN0OeCx*z)_D4vkYWZPPAb`Y+)7zh`U-=w|B8828SU9OM(rWvq>! zI-4%%0}eX(x9#vPPc7*4ZEMfKF3g4tWjUASaSYaNJK4<})Pox21q*s9r)>1MF759K z>x$kV?TB`9mESJs`be5HIC~O@7PVeBlQJ0oHON0&)2VPmKb+rm&)<L}r&(Bp&P3O1 z31$>ukH>Azsw>(2b;-o|!6@Hv6!wss+L2(JHz$%XYV2Q7ryXO+U$|>H%s;YZi<obE z;%J`0QRpj9cu@+HCml~%%_2PAcx=p0<KS0E4&%MR?jZ^>nY>T;e*JS%`^4AuNFWHr z53#wsI-=`-H;Rma$Z763BsFWDDfIVlCyIJ^wn)9S&DdnO=~^Q7;BTowq_XTN;o?%g zuAW^=nTpB5FY0?_>7(~M`9Q#O_`5^z)z?Z8H$%<Qb};V)2`wkb52Bc+mmbg73*4mn zsLo*Bl#yCW@$-tEzONiJ@$1*G6w18Z#n;3C7W<gpFf7nDA-y#55E282it(!!6l9{C z-dQy*y^`;(OC7R3wHWKNTB+(IpMlvKUX_;ck7RX!jQ4a%N@T|3dr5tfYD3H*Y`yu( z1RSgg1*Ipam&ds1tT{${_>1qpW?YRjIjTqa^{r)D)<RT;4UV1nUQ{!x;x;Q^M&#mI zj$Ngu0h-(8mPdp_)_$-ok0h!{F=p)gmI2v*6+++(8vow@h{?&7xrml+N|;A^RZh18 zdC0x%6}*$oN*?F*FT+Z7+QXT=z1qlCt2<wu-;8M;M>adc?6`AO%3F2+cD#IYK5~UB zGHAF<wp=Qwwby>i5vKU%pgC<}-2S%J4&lbl7wUf7;}WSLYSd*0jRO@kVp8aaI4Q4K zUvAZvW;UI<`)16)Sy7D5v&-OsHFl<ib@~9zcdQ&8H#&AFkA87Vs9Q<<JxmBFN{n5e zbe~5X7*fIp7>==h+gEv)otYC&5Wmt6&+{fbv`ROHb6kNGAozY)@7O4Vi>o6Q0hsax za`gMYrdRLXF=i2uRoX4knyO1dnD^+5_`=Zkv-zes*P5rP^{`Cy2Ne_HbiA-1YS!Yc zi<;4;pFCV42>qS2X?_Rqdf_xxb3XV%4F9b4n_wZ;h%WEquv=czxipY)$nj_IHYPS* z;JZ|4_E<q!Bfy(P)Nt!>BcTnLfHIM0v$73<Q~~9>Vces?SPZbnIT+y+7V1s$6Pcut ztC^^6Gt>$(`4+~csRIQD0@2LwfMF!0&OsiR0K&NbbAP=XK%FhgjKIQ7GCy%O9LBRU zkoc<*lQr$+gRW?Use$6tJ(0S}=&IhH=X3x?X^8Uz((X>0yE*QZG>1{kesV@pfFtzv zrOYAhRSr;u+XsHv(8n(uxH;0y^F2(l7|+6U@hdmI_29?@BOy9z+n<1kXuRo%zpJq3 zxp_!PXkegE`;{_>?kIDGvvL`QZRALclm3Y#T_=q<C^_E#ds|2lRa%esWj1~WLn0r^ z8Pl}GIVBh}NhY)Kp%pN!x<NqNY;H&6S(5cmaRBFy=gC)^6IEM|Fbd4-_J}j(p*zWk z%C%%RK!SEFmS+|T{*AsLR(I1M=S{YU-0zsm!DYr__U{A{s8Zd}QGwO^!mc4%mpqH? zt$D4#_M4WT_AlS326{5cqNA}xo~z#Y_XllX0spB)WuXhWq<0h71V<>)ZwfXs(FDr` z7ClwUS8AXnuPFo=W<xdtrc#oKiiQ_Cnz5&7>Qdqw9jq&w1ET^jc<MZ;NUF5@aNwdg zF0sC6_(2	CbMYrmFC0uZHkXe;OkDS)cQ-hWJvf2s0-$Cfe0^Nf!znS@$r=DI+l% zZ|IGqoM`B%Mtw%Bz^f^^C}!wJJ9WsbA>}bx`AG+9G&fkFI|4wNs2kp--L92b2TDyU z@SLBK;ypV)=|>_znr6?tdNhK>gsVPEy>INc-?CjcCy^ns3<jL>ZlkI9VQ(_#pj5o9 zA%=4!_Dxk%3jBU!T*fc%9ijU4J_2tYR#V#;mBkGDQ&x?T(ztPfjydRrvf{Wu^ZP+= z&6fmEjQlZ%wfk5(jOn0Wk3bU*=1f~R#9@g+<bq2?JPRubTXs}l>^s1K{$CG+J=pyA zf57e2SU|9&DKtbv>F6x1KYF*x&Ab42DKrS76naN49r(8VVKBx+`^4=F(NArR7zs-~ z)W_2v@4Ibh*qTijR|JYaD~oXI1$TQg{%je4E17GN<<Ar0ZgCOBf}RwAOg%)4NaU_5 zut^~y`%qR$Rx<kGNhg%L(y*@ge6O9RcQY)$68o4dMZh8s0JEG$FheB8DnUvFm*W(H z+rx{sH5n0OaQq7to5OyCF5ag83}|_L{S;i|gY)=4_V%Im%I&`OCt!W%lv3~#AUmKI zH>@?((V=D%L0~wiZ5>_*L}P7=BjN=@Qt^XT-jk`HkKBL!43OM7^oTT8hSLimAQ4XQ z_BXzH8{UxBJao-*U>Zp&><nvwLFQ_U5}qFrBjkG-M>sOxZ18@du?E<FHoX5Cj<FY2 zxpq9_pGder3a?uiyKa=AB+cA}S{xlGd&Y*;vSCLT8LHN8Cf(rIS6Yf4j!ggqN~!!k zc9^PJtM?i0Sh1`%kwm2srEXN9{_A%cQNO3A$P_1ayu$@$4^INl+yU#+MfX&HBoE-e zKW+j_<jC~N%$^+#P$Pm~^k^|v%hiGqybj2Boqm@WGg|JttXC1GF2iT%gd%M3J{Vl^ z?etlcI&}*pT~!>BMXAC1nCt+TFfTFB!zx!>TeiG!D-C_tvY`<zphv!SU2t-5m{bJ3 zf9OPi2)6#1rGJpj(MycsI3N1Hh!eN;)|d)H5^FU&hCRrwg>+00w<krGArvaBmkxsP zIyQICoI15b!YCS%_DZlpF(urf2iyH|#TuGL=JV_+eLgor#7j^rG6WeX0&#KF!msmf z{~7ireI~V}L5-v(pCbW<Ui)RvwV%?T=&zAIn_GRUI}4{DYsaIBNe`3I^pXah*1DU@ zG3zTrr64g%m;w?|y7`Z=@6DSYUsUgd2Jv=nVBR?GLErfk`taM*p04pujL~c7#T5^X zXL#VlxMtq?xCIld$4~8)euXKIdc6S@3^s>442Mq~QsZ0Xt2f8;i6MOu_0py0tz2P# z<L200p_suR2k6w3dX%zf$-&iJJE0vrfHu(Xv+F(7Nx;$Qif_}2E1J}YHUE`no4}XR z)zb+*?Lwq}zl5U>FHR26qy;eD+bonjay<U$J6BdHx3tXT6G>y_O5g^0Me_siBf$J8 zIr6l1OwWrZMvn*aVh7uwIQ-pdJ5us)u`xbMd4{MQkB09e$e>;_PmTVIM_>CPB$Uyz zP`EpKE`Nk|LRPv$YUt#hy=WEm9qV|3<$wqAVc6^p@Uhk3(uu(+bb#O%@G}lX+M-+I zDwT44nx-CQ^l~pFeoh0Mp-_J7(JJX1<7+k)Uv43<n~Xkoe+>Yg=gbW%(W%)uuSMs~ zlL9{VNT;yvThfr8`5J<7<4-Qs@q_RgEldzL{`Ua{A!XFsv^IJ&T4_Q>(ZWGAU&OFN zCX1Qn{e?*MK3A1Oa#Iz^6H@}sXct0MV*=@>RvZvY<qWd@K7<(JOn2P3)IWgV@!=PL ztu&#)#x0xzQi)jJTsRu7WRV~5#n%X#`vxniOF@+A{Z^hM%CGbxJERWPl`h<ri#;0W z+bM3*3vx_YhJQ5aHoLS6Pc9oi(TKX5t1OOsXROeN<z<HvgDo~|ey$A2isk+RvP3Rm zr037FG?uvm@CYKES!`vp3J}3EVO0Q*$ms4iWsP#*jZFvLciscSwCFaY{d`q!*xFOi z&_!lI^+2mx%;)U842AaX_`v-I#E*9=ZZ}=mK&!w-z!74?@*Od#txln;lfXTrpjF59 z`O+0Ta70ay8+*QaU&~$UGh(V#$g%q>4&BSvH;4x)KWkSLEyH6fx}7toS!oDgGvtHg zz47p(J!Lo>Z6AA|faAufx=x^?vOc!Jvl@czxVmC+&gXG7BOQdD44OPR2vE);toL$g zHZ>yrozrXS+Tis5Qez?1gwS9ez}x#Etaim4xOu`!-z!d;u6NEU^%2xDnV_@j=$R{W zILsEx8vl@+_^9}BZ~!5lP@;N&os0ar;s@9bFYwnAUV%p8>n(|UUFX!aVK_tN?$t8! z$41|A+&Q92HwH&(6sukwP*R2!42!(&J$YP_ZdbVW*BC#U_vJ%3J+B?t<$Jh3i_;zO z`BVV$`tE-od}_sgqELZ8_y4DM)DPeefcmPA1OULlfCGsA>Pe8l>N)?1&;bA2GysKQ zl3=6YV&EGPun^o3))32($dEjcdXWB*g^-U>EKo5}yU<+FG0=xFbTDx+x3ILZwy;^S z&v3?Y&G7K>>hKBhX9%na0SIFVmx#28A&8Ag#7OQ)9Z1i}HppWrOekI`ohZ*h7vM4~ zEvg@CHR>iBA{rwa2yF@-3*8*O0{sIc6k`Sx57QNM4D%98533q$7n>0~2)hdh4aX9v z1?L0T5Vs!>15XVv?yD{0!{C3zSHt(gZ^qvvz#`x#up&qy7$yV|iV%7d_7I^EX%Vdw zV-h<M&yXmRjFXCyT9Ag3R+BE1k&rq5Ph7t0Y|EmSNsUnW{{c`Sj{k2w{@?J~{s|2! z2Y&e_fc>AyeNDVq<r65?!$pAMSLeHzmzT(JUS2=KIv<6LZ+WA{g^rZ&BdLxP^0(JT zjGm@82y^?{#sR{<0Dd*DdXwk`8-p?y9h!gF;<43Y^(pyAiZfF4o93e`g`6WWWpgDD z{&NcO(x@_2884nvdzjTGUB9bC`B@zlRm}FvUd_{HN`p=YB5y1|=p7i-TaLm!RsUoO zSt!!Fxw6OMU7^O{*iuEYNM-pT22ez}F`%alPiaTfwM$WPs0k)eyh|4`rF_bQ9Vxsx z%X6PXmNhh%sq?+l{(4Mp9DOr8BqR&{g!d88Y8OM)kV(PshM>AZR4$!hB{=2qBeGVg z{$!ipoqoR;yvTYMxf>f<n);@`<}&XZum2Jq_)x2od8t&LpLS|Uv;na5{{|%B@<lX2 ztN^G6DsFkNni-oL8~Z-y#*#)4AAL@J{?zFTAuG#+2NYUC|NDxmnX&2mWYdq3)R2&J z1Zg(rdtvJl7{rJec|_s9egGH}BH|Sk&SsZIaA+|55(YF3G!&GMW%wr+qKf<#P9QBa z^Zh6bgh#IFDzth*Umq-hZWZ<GuGM?hTuIDuL<A?W$A?eEvvIQdcbim=-Vpjc)mlsY zR7*f4`)AJKqr;pXL~sK`T6eX3dozq-wPHw%CW&fdoc(?wB<ArD2^9-SLaR$w{mfR) zpj@v!RnjKW^CX4n<R|GxHH14XobcMF{C>f;(bcbuZe=djyTVo_=;ogfOZ^nN&qGpz z*EwAJI}D@T6JR5OlHApbAhiSaUv6%uaT6gcT%DGq_Cgo}`$GF2LQi-Z0Du*rN|E<! zmFAM~nmjULMY~oiMoDnS*cr!<=)W5XqfML}|6a$ciztr*AL*w10&ta2yk4yl5|aF$ zGc}mMv-a`y&4}g$hI_7{08W9Cvlm?2tM8TZ)ACu!1M$GC*Yrv$p;w7s>*oCs8yy;O z3|&X}FjDtpUTd1L>%#9ml#Dh!=~^=%S+(lnmGxDmh#M4IvyQ6Mb`vMvO2LCkSiH7o zCTD8YKmW|KSQBp6Yp>x}<6RQw6}$6U6v}f(nf?(%<mLD-K*&Hdv8KHscr^HH(EtX0 zHTZLFU|`;e@9#+DgDz1T|JH!N!18mZ(v;;ngrh^EZETlIoR*siK;}>ZQz5yc6C%sv zmBDAO{Ogdx1(Lh%;71Wy3)1Z=RIOo{B@SeWjQviXWB&4uN|%Wh=;08*YqZkOsepK| zV3<fKdY1%tRV6rr5Yhk=tO+jO9RdafUluAVKqepH`)5?}#I)DF90CK4S6lXkiYhPr zp0KS?GQ!UC;EwB1v^IPg7ZihM8cD0gs#k?BwieiCA;}lQ1VInbU;Fpl5{;=_mEc^B zJMSWH%);TawA!6AFTpXa{d>H1QyK6))5TdBOp8yp4t^K#1gVbz;R(kzXA7fYWvp&J zon0RXZ6%#eRJ3!BF_>0FeN5_IACtF1sh7SEghXG8gDqSfw<eckah2f~ETR!n!G?;h zz?eBoG)a7<0nt_)M?`qbQ?_UQxUe4Vcaf+8aF-a}fi>kJ?{HsvT65(**on^4Q9?z2 z$FdlKBNQb7R|GmBD^_s%1*%#*L87?qD+jvPRc+e8I(f1c+a&g6ozl~xCi`wFQBiZ? zC4$gB`x0C|xN!GsU0y^BsX`L$pW*&Wd2et-EAk1N$-tjgPfjS3-pg=+k=m%fE6n9M zE>beehtbIG$`xv#;6x;PR#u3Uxo+mfC(l8lNEL&~lO(6YuU{uKBhrBuJ00KHlu0vD zDN_USKkYJ6B5UwWs#cLVm81G^sct53(`0WMoGOd@=G0{p4+v9Jv^O<mi2wM}omlx8 zQ9>{{Q2M=@(NdI9vd=uhY+=DHz?of)JzY&4XE7@h;(jLMiog*xG7Zb*^;jz79?AG) z?LbtVf$f;l!V&-Z5f*QeeO;eL=Fjjc{-mvlE|?ZX<<DRROZ+DywAkI4m{!)04U*BO zvb~t1zMqY+@;Wg#{#Z~@6QIyml*#%l`OUa@ZqWQ*$(K=4Qts>SUob}|T5{pe>O024 z-<TZwfE-%y9L*2?sG4{$L25kC1=o7R`5xGhHSI*V-)x2B+D1U)nXaNh4BlUE*TuH$ z+OE!*yjtw;p!K72i2}_Z(CjMGJ&d)xZM2!J;Ge-y!eSlSJcDJLkvmWl7CT6;^z$d# z9h8Fu!=w(xBS>&{7=JTBr5kyP**_>x9=gE90!ykKUULzYA@AHwD!loe4dA%TNYiY> z))DKArVW>XkvZqRsv<ueq9h2Lf9uaA%A6(Sx?7o%!R-rBa+QxJvD%|4qS>SYzsZvE zfGFgo(Lnzq1+B7=#lICyN$j6=zETKGNqn!H-vgJ{%Q|%>{TW$ukQ2pR`k=6~U$j1) zn!^Z{%o1xl?bMglBtLhb;(n|`U#DKWQJLIp&_HF#ezD;wL-f3Wo_cK9Df$uOhUHp2 zY$q%FU1xm=e|3x13!FGDRFc(B{dlt`x8X8fue9niyk1MfIvn9a1C9&h+bYY#2%BWy zH;>{7PUkc-{)nupBlQvgu)(>>yt`mo?a+v<vz*@Yq<+zj;)E^Mxk(}0Xk0b%<1`9^ z3dIQ!ru&(Fg*d~qfaZs2r^H&4f#LqT4ZI;L)WZ3y7v$EpD}>PuV^BcU2NI!``uJ1Q zq7&v+viB&1uQ-?e2<vJ6Kf@d0y-&XyP}6cgN$@~xPM)0ccuXDm`bM*h-Fmaj<8YHh z0<Q*X<L4ot3$Ze?L^zNaa}XYkTtx&NM*|k8@I*D{Z!jDlvkXK@fhlah0!KBP8XaA< zQl?6jO`75iLAFiKRFklku6Z_LG-Y_O#Uh+02Dqk82c{i6i2}r;O&|0b!bOEbYI=)y zu8kgL2_dgYr+bM2?_a^}6XAH509SAnhZH+aA|AbzQ37}T=F?+}ak=#@QKzY@#5SI# z4E&^GL*`o^)|sQWupFZk*WGPAUuOt`wuKfJolQdW>8t!Bl$krJY&PVaJecX3@7NBR zNeA7mw{J+kAIJiqGdz3S=)Tub0#9-9sSg&J^yPGKuXn9tLBH-<(rv4Mrxv>fRsLY> zWjb3WHj@XF@?JH)-t2b<S1x2H;08v_axLQh9Ja||M}3DH;-1DxKsGH*WAQ_fB+mU6 z@Vy`oA{$;jQuzmTSj9gSykQ)kt6c%PKeQh^MkkPR3(^3Popd{EF<!p^MLLu*z|>#u zOwx#{_LXHR@`l*WNSrPhaWl488-AFDrlm`BtsV8}9j#!)y}@kh6hgKD4twOV4L@u< zAb)^9;VZ}JL!ux_uwjFMNTvbiK7YcCv&q8@&_vLbI0)A}#FXOTe5{2WpnxBsux`G5 zUi7j=q5!JZfcO995vIn*+vYT;#+JtBJCF_7U@T#iV<a&9BFplK1c)#s_9Q1?uRLyP zGGmMp+@OP-g~OO<&q?88Si(O-N0S-fANCBDr_rJ9iw_&h{lWK2`+&t6mXX2JUd(y> ztDHfsrxazPAJdZM{>^Wmd})I5TnFzIUt8v(k|2R#VbOCWvF+4au7>_}W{P53Jt8_o z)<xTux+W8^m%@u+D^W@A5_e3byCBH}Q_b)4cMiRw-<}SQ?R3iagFXk>tjFK=3A!n{ z080H|vv)ct*eT?EQ&*>kBaN%f{>gDAac)VesX6uz7LLZ&R6QG1>ZKfnZrdoyLT|4t zFh^YuRSIe=<9*T(ifa3N1rVPul1997;j$m1ckOp3NP2_E^gb13<kPVQ^cN)={3!~l zMv8Ui`8z)Q20<d;mNixu^m@>=7*r8-l-xVE4kh?Q7}=?1J$pU-iQ%RXP|qLOUmF?a zBl-|KJK!YK9Dij-{9%zI=b|BT@FtqtrQ21L{IIFPSyN7~IvNp6({|E1_k7OLXTRh% zNbL>`MYs9CWZiq!zTZrg!WaOUd5jgXTN^pITx&Tac+cAM`01ZKkvtFOs|4BhjlO-7 zE;O<%y)CRLr75N=t1GmC@3P~l2ZqRZzn(hB_plw?(DxwLYx8xxP)YE0x6-NSb*I!Q z@O7^?Dd?k8xm>mxulaP|Zl+8Jq<O*XemYkzRV(-ojflr;KUBuDM<xG@)nTNH=MJkX zEYicmZi+ChOiYXPaHyP3>YFG(g(z#0D6hFF=f0>QhUjbwW9NhYn#^VuJJa93zFB}g zK5nL%wUwOa<IwuLIP>)KTo?xhc{4@gBsB{cEoCAtSu!n2G6y#sVHrtN9yc4cP&^L_ dc`{EPH+n(;EE=F?jkox}V1NO@K0g5{{|8v1?6Uv> literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_SansSerif-Bold.woff2 b/assets/katex_assets/fonts/KaTeX_SansSerif-Bold.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..cfaa3bda59246b49e94298478d6de3b3208066c8 GIT binary patch literal 12216 zcmV;pFGtXKPew8T0RR91057-z4gdfE0AMHp054wv0RR9100000000000000000000 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 G>;nKVNojrn literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_SansSerif-Italic.ttf b/assets/katex_assets/fonts/KaTeX_SansSerif-Italic.ttf new file mode 100644 index 0000000000000000000000000000000000000000..d5850df98ec19de2eee9ff922ef59586efe471d0 GIT binary patch literal 22364 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_SansSerif-Italic.woff b/assets/katex_assets/fonts/KaTeX_SansSerif-Italic.woff new file mode 100644 index 0000000000000000000000000000000000000000..7e02df963621a5e26d53d510f0b4992eebde1c60 GIT binary patch literal 14112 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 ZM6wWJ<I(}?-tpJ|Bm@Wm^!*J$_&+7*r^x^S literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_SansSerif-Italic.woff2 b/assets/katex_assets/fonts/KaTeX_SansSerif-Italic.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..349c06dc609f896392fd5bc8b364d3bc3efc9330 GIT binary patch literal 12028 zcmV<YE(6hbPew8T0RR91051Fh4gdfE09Vie04}5e0RR9100000000000000000000 z00006U;u&y2wDl83=s$l`BdHj0X7081A}f0fqDQ0AO(pU2ZI3&fifEgNEPFlB_0Q0 zCM^|3jaZ}P5fz;Ega5xIaAT<WCRR^FxhWet6nC`ajOb*96LIOxr0EV~{(R%wsblAh za^d`8MW9*a>659DkbG}7@mjJD1@jO-Eqc8pH1<jE5Wmg8yZ3m6RHz7&Dj_XK5iKB~ zq9{7ip3doXb8FY}b5Z>xbN<L2(9=SZbrqWLjdSCEVNs=ixwma{r4=%h$rs5p>Xy>V zuj4@|WLKW95E7|5CLkNL;`-Y+wfA&?GtJ-Z&L(!k4v|`??3CPcqTcL|tNjQ{K536( z{p-EnmtzN&6c7(-?6J;0;$I;9*Or=#CSe6e`Kj!u4Ul0&Ix>QOQ1Y#>s9n_Rs?i!K z`N8}1e;oFIb6U<-O6FuJcnRoEPTZX=aW9wuuhQ&I(s%2$94HMXDG%c+*1)?j&HvPt z{x5f&l`#j}k2io7&=!!w?=Rc&|6fkeUw4gUWm(R$oMkzA?`+>1cE=cO4|J9@oUwe@ zJq9WYEP(~E3>U5e2q**H@Lxant9$O-_qA1~YfFUmMWi9#7(z1*h0+O0B{7{3D{D^4 z+y+H#pL-pvasQi8$-7u`oy}^Vd1cS&h7d}o=09l#K=2N@4Uhmp8_<0KfKAV*4nF{9 zh``OnQviI=2H$)OZk$-3w+A?YOeVo(|CfPQ^gZ}X2Ef)13;=i^x&{D{0emUK0O21D zE;`}h2dxaq;I_*Km7p55ff-;SSPBk+6W{{40nMlsJ&B%0@1SXH7j`GM8{3B+zz$=_ zu#+;rEJr5!|Nnl_4|b>)w1dn}KY^Y`Z=qY*&M}W-CltGC;W3{5am+sQp%1+8mU~@s z)-i_vmS?{EEpPUg*S+dxFL}Z9o@?xb?}G~<-N^lQjQk`ZI}rTy)pLNZGKgSfq7o;5 z3C!o|;180KTmF@N!@SWef~L?@VC@<(_tr=p{0g*<SacRg$W5n2Cf!gdPtj10jkN?R z0=INq0Ewe_grLkHIU<M^>xco(8P<L<<~!suV)O;IJHDt>OvL-AAYBu2CpE-(Pg^7< zM^Ab3%zlk+nVs?3GjK8DTb^inatT2!oM<Z)vSWb9V2%O~6-9y2)9{iSG~h%20`C24 zi$sNc!ybvHV2K&s{T-HKO>R+)?S3PUowMxCg0eG3A)(Z;sCeEYpJ1XU2Jp}l7$I*6 zI6xy&p)wjudn4F^U5%<MYalYD^N=7B2<o=P%05#Bsa3j>uGuuCZ1$Q&p=y(q&{2;f zKrbeREM6T+Ko7)CYCtk?2a>fX1#8CI)v)hK=p9wy%t8)58sTxvW*qoQCGuy8Bx_BV zoRMWu7lbROj3Msrgt%?et_D%7pyMD^V*VfRke2622B|#P0%UJMS(2)~fZ!M_5rred z2-%CRYaEa|mdV3woI<PX3_5%zO6)FIMMF!i68HS9^&pT{)1zd%Fbz7<XAw71T$q&s z8m)66w#;J6Ms#RSC1#v*x2xU5;1i%K3_+bMz{Dfl^fN}8QcK&x8nHTS9a$(yF0scS za%5v#0J3<MlZ!F6SF+#21Y^4maF8HrCoisXin1~wha+;QqR0p&FBfb3q2O^>Uz3r@ zsRDSjcf#7<K49#0@J8mN04^W+xFm@%@Z>lhn~97stOI11A?yl>nS&NRT8SH<H>mDI zY-?rR`%X4=0J*Sqny+N>V4&<$Yq47FB)0sp0MOE1LMEvBfI=MqO@OfiE$s(#wMUOk z?a9zYzDK;u?vGQ0?veN25XS#CVNm#a$Bl0EN*#qLK;RrjRM4`8EJv8-3OBJxmM6j_ zBAZkc%NKQ72XVu_B>c7gAgBnhq9!*k>Ki46emlE3S>ShfCc_v%r|u?UaIr6tLuw*N zh605Wg$jilMFEOJ6h$aBD6}ZHumPw&7Z_tBvwd`g$Iu{&avGpp#snH2jkXUm0~plp zR729dB>4JMQey;Qaqo=6%q{^h7tOYiM5h<ts<N_GPxYq_+kj6BOfSJ0*^Q;XbwVdo zo!<>0`~o*gi{E6v*hEL=GsO<n7^tBVxZwrlSc>XV?O4_ZQRHx~t)UzRQP-ftfIt~F zwkvtViXKQpI5z0J8QQmHLUiuWI#z%{_$C?w+&rb``3s$9%;LF|Y|ucR%RZB+EI}o9 zE(z_Kf?y}Mly&TdGh9t8Lriaas2*{nG)7i3s?v|Js~om8qMo}rHG^|(gd|Q4xY$54 zl}5y?l~qfEkew&}G;f47?iVhF#=Y%l#EJ?b;vkWRNHPi6+Bitu8;oEGMm&gGt<SmY zSY;9dwUp!$RqA=mw$%!0biRJVonvQCsiBcZ<u*7{#%K%`YO!YWo<cr9-Y`HIF=M5M zaa*%a(0iOlweP3bN;HM-M&m@M*0FnSZ8{*RjEQi55r=KFs{yrE#U$EuuI)OvziYO4 z+a;pjj3?R+R=AFr^njHv%XSR4{h7<!AYX_pnu5Tq03l3e&jAY(>Duc6d+M@+8kNlV zWA&lX(#E%KY~TJ$48V+4!+3V=TIP*~O{rCRfqw?5aK<445$&Z`)@uc&4(WnmOA!8p z7DRgOo}RMX#e{b2Pyl56EUjx{u>5V2=YViYP@$idfzbw0cy^x=ZeKlG0G2y3L5pV~ zk&tLK(6XY&0<oqHB$5*Qn{fsJaib-~2U;o%0j&Wx+UNz97F4^SIs_Xt`o^oy!qPGs z2<Q@Qbkh=0Pk~r(1_Js7oBi_P2?Kb-Af7N2PZ+`zhVg`1c)|#tz1jMUpvscX(YO5z zj^SfC8*{W@T;QsW8`_Z8CL#=TBeZ!_P%WHEuV%hiHy4oNg@xsdEsD?<M_6BSC2Lsf zH7xTQro4vbWnwELw3QLoSEXbvtG$*rUdvjqWnG!r`Uq`9gc}?6m$E9{zh5B4mvDr6 zTa<FKJe6|kE>L<eV5->stbI>0fB^pgKMdSt7K79u;F0qHaMuDL>IXM7*Z^Rq0D&f2 zFC7CUfB|?BJ%esz0Ff5<{WucQVj!sUR1|h#dr|>60~BRR%d$nxcqWPcIm#^3I~d^k ze`biDMdK`oorMCP6J9Dd2v9O(wl^_lNhvKraG!($7{>qy=uj5cXga0YK&dTM^Qh7l zSQ$4=l^j@KZEQ&qXaX&88_hM=0_s1eAcR3!GSG*fiyN4UT2tvVvssEdh!QXiN(7Do z5C;>m4nf2b;doeuAcnQehCsdoD3jqChUcL@v@@DG{66BQJOC>amPVIw90N#zx%s(j zBn(s4_wfLHHOb;kSu8ETmw7=0Fea>mq*Kcxl|o3id1T5QgUGqePw~jXg-HeyO;b1C zAwx4&WPYcdN>e0NX>eYt+Ao+$YDy`ea=ElAX^qA_TR_yZO=XbF@lhT?gMo2oRUlcG zqtO-#lSD2X%xlvs;SZ?{^MMGYc|=m|q;ovDVt*U?z1sjMA{xoYlZ^?_YjH<=J5)xl z00=7-5v@lNtDTKRG<Rwm08>=*6+K3@DJT6y(E?4(B1(7v--&BfcB}z}?cna>21Ttx zG~{fct&y~3qhX86BPb*f&~C-U`iwDXaWcnO`gFhMPj#e8<wl~J6<Z>lhaYSwD=@SW zTN!vOG{`rox6-geZ1K9)KDP{*fB>4VwXMu23TNc;&EsJOutC#}z6~B?)}m|nA|Ck6 z7KH_{17;Ru$th1I(FwVsCyaq63hJ!fZT1;=uJhy(fSTu1qA#ukro`)24RD;WbhgzT zHNz}?zn>9t6j5%zv!AK0!AZUafHhpB($H6~P^poQ$$ifX=JXnf$_aoXR3>~@F17~Q z1tmn1!tsLm{qM7x>X%sBEtNqWvvf*Rgn>OnkYWEY<1W?zxi?Uwc}K)rR#>sS9+cHb zM~HTFnFw)Q>5=DJmV%GFTp2{~yueiM5#smppj=CRZh!}%?)j7p=FmLn@>l$fh<C0Z zw?yY8Vwa;bufDxy2X{q>DdkhC!{|~muRIgFFLiA@ZBCMhH;GW~$}|-tku#mPtZ7U& z12(KT`vE+$i|;L=)ToWMJe9hh5Vx49K!;NE4P8yrl_U@RBJ(&TK4BtZ^VMmY(+vM{ z#`Ue}K;1>k0i2u4L^jKO;yWNy`j3M+veO(zjJ5Q+U_d25r|V}BTMc39hF(9jh4oRp zJeR19=nD|XV6GFf)QSuol@qjiqtc}2s#?70La*m(Rg+a+rm2(%<jjz7(Z|j1^E>LG zKIPOvA~2$ver&qB1MNOCjale1AUD8KTe$EchztPKN;`x^s2T-ugGwzf;S4#gUPsq; zJs$XEf+b@0N-S8iCbk`ul*33dE!etT2vk{aJ8pK{;F*XVC_m+H)Xa+YshB6YIxf}0 zW<zCv8ro-S(LSW252d1(?a8M2I9??}D01&~>d+y6iOMKhYO{G))eNaVR}UO}pr`p` zaw}&R?1iOU3PXbp+*WeEe>#C#BlB@X1T&yD1IQ=w?nqqqTDud(93{8TcMbBD_js(r z6tLXi>3{s?@zQDWbd_T^i$(Gbm|E0OOV0}>1l~8JWu50E1A78vY-+|~B3od-2k%QB zTR}7rk1NH1I(|-f<%q4@apMTjQE3O-5T7-#6479#qIS&kt)wx_!{-$d=7>_YTyg6> zZw$5=W>WX_lZLPa&%<#SAt#+|*3LrG*BqltowbJgTpvUNnP?)wviPB&tfUt5?iEIS z0?o`Uu(I%d<B<i4hMpC=kAsIZ1qN0yq)!8p&1yFxF}DkQ_bP?TN2r994jZq25<wNA z!cnHzGWVFr-1-Ztp^!u(n^i3TmUSG>PjND|afnKZ+GYcJyUOCVno+Xs><Onq3PX&L zo|h8ia1R{i4OPz;`81GbB5mKcJ(qlGvoKdGabmz$#}gJEG0q(vhiYPq4OooU1`+C$ z#7ayzuNpT1U1AStVQ9%m;g)R|7UC_!-cbGasIoy*IpE}i^`v-SRxkjipf__2KZ_fa zG0%zzn;Gc|&6M30;OnUq<yGcj!9>bCp3%1u&WF4k%-)XAgH!TL7B3t-U@4YUt9@q0 z?xqw0>QHe_PUbH9B2cO@Z)U1+X5of2Ml&)1+QUmgB<Lk8uC4RNFPhthp)O)sg~c&T z3>zQ}b6;ag)UAzVTLoY@snlHu>dF0aw=BDIwb_q2PUnqecP|fMs`9oSPSJdwbDx_I z!7=N-(}gjxB)(vwOgE*`yHr0h#xUg+4zJiW%Y;oNO7d4`$jfgh%@-y@YlW0Qb4<th zplw$6TE2WZU`}nKg|epQw?<pzb~*7p8SxG9L)F7S7PZoHYU%%Ih)_h7><xl7G&aUH z1>u!(pRC8xz?WI#78o36Aw;f24~j*LrRqyme=S**_HiC~UvPT>tatLHX;-oseQw{! z10Rw&K`%&BMCOZ<)nizFo}I5*;N2zikNceD?=a$Wllqd3=Iy4P1mFS-RZ($0)v)N+ z%Tog6xTDhOXPG7HqZ!B;z|cij>VaVG7cG&fB@f<Q7Q_t*P1f9ww(?4mP}=4uZ5tv# z9Q!K6&I?g+j2E(DoWV^wSuvGdqtjGw*QsInluEu4i;8)Pxy+MiV>pMF^!1CRz~Kyx z&6yPT%d-G?mShL}+Vo8#8aDg6#1gNMTy+h75ozAl8;QzD)6iFv*@}v8RdavNP-iEh z;Y3oX$K*6(XhyHtpt41yF+;r6v{8nQSr`h{GJTUZ*R&#~6yI{zYKZb9)qzhZt+Yf$ z*9#TO*enc?iRL8YSk^0PSX|}S2}8twwiwQgiM-jdih(4;aeLjFND#=9nO#uAt#wNk z&9(N@kkqt9K`7!el?wdNdT!{U%qQGWM0e$2LoFVr*+T4kF0-E3wGe$>Rue1VPMxUs zjOg>W^RYpR<d9wcc$*-pl%m{H4~q}PSF{PWaxnH|@?#s@@};37wZ7i1w7A{#ArF?W zD@xY6EQ*UDS1#0i4V5<l7RQn<*#O@J0&E&PJ*6;WMfD3MiGgj1*hVafcb`!ALSqTX zOKH~0sBv@MgL-!LigvDdTZoS)1raN4H?50B&Rx-cGDkU6vy&iHw^C_e8jT|ya2NW; z+x!S90$KAS5o{A6qL=6c6Gs0Iz~FT<M{W&C^WX~aqPanFbbSF=nM+BzLW2k6#fTx& zo;vHknb7E!>3b#>NXNxZJmOjx+~6&M#22cj67p^kthE~1rjmP06z&;-7j=^zMxI0_ z%@-JQ(0XpLfJr_hyYe{>udNv6`kdyi1e=6=o#{FZMYuPz@R^(}6q4=gu~^EPQ1gf! z@mfLf@b%_|frr-7PS;aLRg#l=Q7)Z)j{Cn@(<9y}VhC5jD{4}HsLNrkD7dMQ|CA;y z=oLCT>SQ7?9}_hU_i5T}*@|dR^j4LD#_fhh^lC}#@=#i$5H|><C2C%xY+5|#$IKHS zA+{a6>PGVhfYo`&5tjj|JVZATZJIe1N_l4TxRu<EnG82hiW=9ER~gmkUFWH_bwj*o z;)LO1{JQv*MQg<n&Cg?vX-R~a@=W5_@}Y3uY5-wQk@RCD6!A=^!xpO=ahUD5Lk}%P zZ~ce9M?7-`yj0<<?T$#3uWC-Sa2Q{>WSxHr<<ap;472gaE2i07ac5*k0G!nr*oOdW zCK$y-+pxC9cCcevfR00XDz~~SFMYU{PNwub=b*oYVDnEGND#rs8lQgoTa;K<0TqtR z;|n2qno$g1O^`+&Je-Gu6k73TXPLKWz@)6<!Qz~rD=H_(n5XlGg{sk>`{B4enmQiU z3i2~V?h9dQ7Cb|UC-Hy_%SE4eT_(d(Xx6Y9-o?u}Z`2K}ykC!-?8j_jvU0HFSpN`9 zXR~Ip!$mn3w7euGQvE|yyYdjo2|CEvPShjHUc`3;pnR=x;hD!;KZ^@96h*_y17oC- zW;=MUWtnaa7kJ5?3cyU;(1yk-qm-W3!h@zuTDmUcIVbv)7g=oX)L4t6SQO|_V4)^= zb~o$?;DO~alt`<kzYgJPr>L4u0FokYc_I_L?W>@vy!2Cg-YhrIyCs>s<sXS+Ww*F! zpYA2__4&o`J0N+)SF`N-K>jzVyVag%3)(&M`z_NO7~{vjt<08-7Vy#y<3DCI%o&qy zEdQsl5DLcpT3#BUF2rv~U6fUC-n{=O$YLVw>=yfTCnN=O_g%3xJeHIFFgSO#He6|r zV%~P@k1Xn6zlHXor>F4IDECoBQ}m}`d;5o50{89m?@A`YQ#8hB52+%fp<ob=j>)ew zvTlnnSOn^JhxTwtR?A~j;YI~O?P=iK(bP@`^)Ie)p=X<aXA@|Q-$ti;tn38nET~u4 z-?<;EBkBlhZx{Oi3Tev6-n`s}!eJ;g<<&+jyy>NZ+?!+waZRpWt%8#nym;c{<M2%6 zRmGyoEQe@VIE%}7>eJ#}M%~bSKYP0!*JB8(RS2wuh}1#vOZy@x^S!i162VTxKboB5 zg-*n2e_irG(l8BoU6bQ#H%<6TN+#b*#4?t!t=>tyNXT#A9+u1z%|2J@lV{iDzPB%1 z`YfM$YrZ_a=Rp_2;gZzc)<3yPDk};(kbL>$NG9Jjb^QKXv+>zG%A|Mk8rLcojj=^< z{G$q*vfH^GHTz5DSl0BUtj%0rvFg$v`o*jp&p4>Ia$l(iQv}wg^~g6%o1R|OQh#7O zswjt~4UW03O{40CXB3tPx-g4(zK>}O2TRL34e0@8ODtFH`C{6#>V8RXkx-mwL=*E8 zzuDH-Xz=Z;w=6qR#-m_V4B_<kdwjpldbGMeH{SVZ;P*K=#}V%2{<LX`2cU{}KUkcE zKzz*nO-Ahc_@-KozUfb`%gH@Qj|9)hXR5-xQ{xv0q*K;c=5G0d(7kXvGPoeTp1X$| z9y&Rx+F-ugJ+*|#j-3cwpFQi23kHchzGK80l)vf2&Mpem%Hn<36jrTlFYjaUe&pfg zzn)s-aJwrV8_T|tvDhqb{!mjb)hwg2F&6K?KA-IIblGZ-z`!N#G|$i@$el!$PZEnh z_0@}KKtQ}Me}`7eCO=J~R*8}N^X$(J<@xD4Cgl`VsghuD2a$q-@y?7y%+G%GJc~s* z0ivOa%<9#M;b^#-T}1iUag2H|MWopIu)<EGJWC;Qk@V{&htO>P-GJ$R8Y~?WYw7dk z9fgbPYkwMind3h7U4IpShGd()QRjM4laRW!E^Xdw(Qrl43D8t=)THsKuF$<&52em{ zFoYn=CiM6?fwo~nK{V@J79HVB8&GvMGjRG85I-nhV)==9^lNLgNmj7T{Xb;?hmnp& zX3h^Zhp0}Rm(8KM3WRCbuQ#r5pFmQg9;o*~R-F)SHJ7Y$mW-x5D~|RhnF$GTzeGB! z&^GEG8vx+@_tu4@J(Nyn%|^)!ON$U0k>i2ti67;=l0~fyF{^R=RL`v1*Z>s!p~BXc z(wS}1*gg_7`q0=1M#S<Xl9R+f?)7by5RtD+z0=utuicKC_afAWSOI7#W=Gle9pf9> zQH0~xY?i9aALH?2Pye?RQdV(ei{R-~7}Q!t-T!lE$zENq*>%e1j%9)_an?xGLHm)D zoIIt&;lPK<ZR-4n41X-QHg=|uYy0#Dn=CBcDu@%m3ZlVTZJl`;aohOLfNGIl-1AWu znllF;o?$4y+pW`dJ%A<LZKNOIF7C@TeU6<yY<D~wubAAqr?w-;F;Rm(?Pb!sXWrn} z7Q4rpk@b`_y$fD?5f1yi!rZ%8uT31NT`FE^u$UqBW#^|SANY0T7&rz=0uS-4psu|w zs4sZ#b6vG80h}Rqz<6(QU2|Tgx+YP3$-pZ3Pw8z@u7qfjw>VPe>-*8Ey+ajE+nf~_ zN!-Fev=yOn^$(i=wAeP-?@#;m&+B|!exl7g!rb$Oi`%5wH_(?#c0|7;Rrdd5R{Hhr zx@<2JAn0<3t6MZpiQI^x=oGij>8cCvJ2f0q|8{;bCsbbW(KYxI$!m(VQ_gPOZ#F}3 z=xJ}!5wETvg*P7TDVt}@YpTtc^DdjKYfzlecrd)S#KmvqzCpQJo!_jj3mE1?ZzH1a z-g%?6XlgNYa7NgE-s@5Oo@g&Dgp60%-o(81Khv?!zvJ(8G(8<}R18}ur*a**Ptvri zeNk|hA+WY5%v-2WCVJXZIcZ^P-J;Np!p;ktuDSceq9(EY+lQEO5pT4YUEl1Bal1QY z9Ru@n>vU;l&W@m|w@erDDcnv<p8d(xV~qpWW?Crkp21dZm?IS4PR_0|(y|^}92S&p z{crCWn1dlIuKbqr%gm=*BX)uAT%i8<90zskE^s^Cvr&DHod~AZZvj_^h56xCqJq^1 z&yZC0&uAEggtPq578fH|s?5Q<>wOucW2!8VWBC=JWD1N<CT-XXLE+c=Up*WJ^|Zdt zDa(w;P~N9N*};Ks%LB>$)p5bfyLnw5s;%8dnXx=1oN*iEs)HNLz3g(;#UAGT9ixN2 zH|i>{69?OZsoQP?qaEzw&BMz>!^MHS2AavEbIuL)R&45tC8FhAhC{NcYYuE`1Q!?Z zgChnnvzL?WT3i&RG(pbR(*S+)G2)C{l^4zdgam`a{zC_0eE~(|2f!g{`V69L;v`_k zSYZKrjc7}5)Tf@(dg3_1M5DqX1b6Pz9}*Yk-yypT*=$5s!%<EHtf+*<vWZtPlI;&r zo)kIQRXwYR1WmUWH+lEZ9@`l3;z&j``trZS)R~h~kJu*I-pk%`g*i*a>X<Pno=4yi zxT+ASn0Z)nKz`6>Gk(GS7^sp%KZZ-UO1Jc5aQhjA28aV~6w*sqq-fLbhXOJGcsZj7 zBTdM$e^YS>?PY=Yjwn7pPUk`ufIqrs^II@hP`ZhD=`d=2&N$OBSlSsm8$AbhEQM^{ zJ8WdJ^nD$fEf57$C><T`eC}L%DP-?oTVF-QFTv#*=mm{;GdxA;g%|eHP*+V<bgE7| z?Kz79G8%-fb1eqw4X)c!h%0t;U-@L+us`v31Zp%j#ax^Vd0FsgX@~xRg_-4aZ1ofN zPWICDrByo+6!*=$d{mD^R-Ix$!(FRO^Sf8=)azvP$My{oUp<4dNqL0{e)qN^c^RW; z^h!f%TUAHGVR_6t*SEWOO-W#L%P-`JyY~!-PZxC5xWdC*WA0gd9%0wMFi>Bx`%wzO zineUMz#dv_izis>d9=;`S7SG5$B<;5cnTt?d@>LHZvM2XGaMAJm8?hgQSfj-yD<JE z<zey?W5U_%zJw@4`?8q088LU4><a8q1s5c5qRJ@%OG<`@;k)<OwX;@;3+ufz?~U>J zu^z_0TU+WqGyjPRgt0No4~|KP%@llI)w@%6m+Wq<n|{~ZxCu<TXl>5RA}zrR1WF&0 zwLTv1=RTYO3DJa~;jA{Gx|Z&4mLhnZa$vgc(2m({0qt!-*$Loty-m(^)U4g}=J~3G zN*^+(Ir1#;z_?$uST{FSvj(VUz;*uMxP3F{S)A^;D^d018;4CH;>ZjJ2bxT1a{QlK zL#+WIn+>65Nr*22#Pz2v-}Gas=N8Q8WTGN_wk}!R`T3K4^H-)%)7Xp$+Xas5S9Uae z`;#M`v@n7skwj0t+g6b(wZn!Xi!LieZ<1zVacN}hi*1cY15EE8ec<_&-42HqNiGno z>wyZ0$iM4Hjz-GnWJqNCHO{|{6^8QsmWNkY%x#8eQfFHGaL9U<6d@nVx0H!+$RAYH zRj*l2So<>=GVftweUj`LF=J%eF)Kh-)kSer=hK0fU55i>f{%V%2Rp9}TH3EY2^aXb z`*&10eX-@+=QQ=5yb*37ZoiDGt43BxmU7_dm}*0b4EFBo<L9lFtY=#h$XlPcuH$*a zRr0Y3jpkC)py&cx-ShL$2=n@X%K0(-W)Eo0V!P3w=n}E>?|~na$+UC#+NMn%O&ua3 ztrq=HOC}LUbbf<+-WdEjc!u^rYLaZ8v`IE;59A%xC6k10r95O#m=ZAj!K-(|`e1LE zbLTChBGmKOpNQ!L==~UmeB4TuJnM{ChkR8y11o$ydkD3nagDQ~QkZ$uT9D)3a84V@ z9mM&80NdP|;WayoT@X+saFhL~;dss-S)sG=dHx+Z%DRwY&wP-wt1Xz)7o*Bt2zTzP zD`*g8g1V-17MZp@o^*Tb{D1Yqb^$UPlEH(}PBn>)RqJ}0e#z!Qn>n0WNC_RDecS0C zI=gJIzwx)vARD;Y9g0^4tc#VwG|ipQ3<k6Lv}mB<D)RfCuGeLM`%!&Ig5t-C*NP;Y zQke0heFKx{nywN!>bTs#d@-Ly?OJ@cDZajmVE$qxj2y>XrTxMI!2l$_Tcf5quGPmG z-d4(~VMz7>Y~sx4TtR)NH_=v=aHWO>CNgc?9m+|mQ3egqmn|1Y;)a}?!Uqa-Hh-#n zo6-(pWEdcY98F{tKtpgFF<oENu^3xoy~2U45C&H~3xWqj_q|tA0_9^S%xXg*G7M2G zvE;s|gp$2))_Rs374H8O5CRVR*ZqZ(g5x|6xcIA<-T4so0-lT^rZ{`M9Q01U-Uiql zIBiS%KpZIMvf4^kMe0^+{9idOvoR(EyKn7W0LvXLyX=~jlP_xBt#lMg%~E4UsGc?I zG|N}LaM0Ph(<{=LT4YDdvbgv1X!{)%G1~TT{(VleNxa-a_<TL-iy<;>d`dKj;fPm; zMl#s}yru|8?Pys!pSaHndEF2VpvMIMYSfC-m++bur%X>Avf7}(ZHMi1lk)b$R)~iG z<G<+hJ{=R7cP_vY5ARPZbKe{#%_b-lT`!~Y6-*D)tJNl~E0)CC&ck<~**-p$wmU#q zW2W&wMW}WSAa=F|Q`T0Bi`#u65CI4}?n8RrFqT6iAXHe^L}lvokr$UigaB-OXUh$l z3h6YpYyW}`Q4iiTs-CrxI$6IZ{6>p*_te)g<*vz;lgy#8#=i}8){UGxT`xD68S~c1 z^F^8Ma%-zGV00K96m-vAXm%xv+ZfyZx>$8u<ui2DtL5r22Lr~BkkNo0Jm_yOx*xWV z_+I81+xSDG0d>^o8k`r^rYSj32-Z#^gAp2TWn*aKk>;ENI`;{QCSF#r3@xt<9r%;4 zJAEs!woSf=7O62@h}U$L)a&fi_cGm-@8?f9YY(FXh@wZMY1}bXFH(!fg(DnPT#VFz z?CG@QxSq&HM1N?y*Bz}=o`#YLgf3UqtN5Lx;Onm)&on;5PQR&fC_EjSM#0#)ATNNe zxhql|YGvl!ziMr>Q&D(SKqr22>z}u}@Ym+?EP~3UD4b*b1fjwLG?6J99UTj|YqjWw zX}3E((7PZM(7bA7T8N`mjjV`C600vMkHd2Pfi#7EkJ98T-j3C35HuP*?q3+=(2UQ_ zAuf<Smr*;47yRYU5fvWfdy9)9SaxgbU6YO2i6iwH3~NK29M<`StQJvV&I;?ubnOyu z6It+0eZCR{f^*vTW4=wTcD){2x@+c--I7^JqogG@<SH#02E-22?52Zl9mIz}|54p- z2*6%lNFU<N4~Dwe!Iz&y8{b!2*@k3sGlb0xeDUV)>FIyh%^f3#Zz7`+$F14&!$h-y zBd<mkL&|_Ao>>1tE40B&&VfHnbOD$2Q!ECl5oj|1EoTqzvP8*(Vc}5myTsHT-Ip&z z<n`6oE(OaF(~YBh??o;4p_#A0J_#nFjHvi4e|;E#)E%)*9WyvDt^RU%K>-37T(S4; zxonEbd;KrsBR{_#b)kLxAnJMqgWMEAT?py}IeUPaGMlO1C6`X7YQ>JnyYhseWdDsX zmbT_f%{T`wRLd!y55m`PK5C1Hxo=KBZio`cZ^rr|iAV1V@7Igw@BIYkIk1f@FH+~M z*_wl<zP0)F#h4e3vI`vMxG6#0ECLhr;MFV8Y+HR9TrFGJsLPY?OU4tC@br(ww<i|2 z>*Lxu2No3QeZ_vF_wSnecnwoV3*+?iBVPy${S~VU>+pYn_PU9eoCmijrvpNKpy&as zXffm~BF`)e84Pe@x+D<}pjYbOrc#m+ZavLLdwvlfb9dhbmd)Ux0fL?Ureo;LWi)Rt z_@PFH31^xfu75<Qf7BOHP?iZ6Y(21`UE8LLE?rh9b4zN~v9;XF`Txbr|IF=NxvxbR zRc~G?*Qvw~LF4J)Lc`0-@*11VN=sV9g#&vTeVm+a$8PPvav6F<PY+;Po@(T@svpO~ zrx3K4VlK{2&N1?We2FrLfYoo-EH0h1mA3x^ajpe&8lhB*z=j3V+`OYB@IIK$^keY8 zwWWX^M>x(Byrd{LSLQ3>`t<<$Xg@Qv=vj#Ep&0EY0?S%4f!}FySO*A4pZ)HCec%4V zMn>vvV0kzCzYrD^*m&pdN5Fke8=E#k5^l?$XE8%_$-M7~ue3Q-$s^+2R)<8j@|g8U z^%Z~y(78|#vsu<~<P8p4@Wi!8+c&3ob~`H<pObg0(u|w_qRN1;RG=p=47!iB17tQM zbm$Ncol_<sL+dPS$Zq<wwbvy(<D=mS9^PR#Lrl<(u~7^K>3#8c9Afo@;_&V{8CKpF zxXsV%YN5Gsj`I4Fv1Te%9F!lJUSj(`7s(vZ;{l6==1xAX0Rnz61kTPqlFQm-lVZu& z%CQ$T$Y#r&vZ+{MW~g8|B$b&>Kr|-VSn^K>gY0n8L#EFmvHOg3jMK(zD_o-f_3^9a zHpB`*;!sERd-84Ju-n(e>f}IvFF;+y9Y4A|LIJ@QXI4)_bHi-S9nS8rVCJRJKZuin z@i@RBBB7w9QRJOikiYb~Q!8krypEM|p=YDCDKh$q#i@Vid3=gRj?v?gRVPIMpp^w> zSGe3jim2c|;Ng)rzx<5eQmEMMmxcFHAt{x!?@n_=PG@212krNMz#=|R?w)nN`{Q9a z-2@-RcMUArU*)mL5Lt9rixmQz+p9BOK`nE=HPuj8&c`6TgPu<KD-CL?APbTVqx7a5 zJcTfHSwMqCWI&OJi7FuGW{FfxBteCYO+aY5S|s5>L>4%rhQ-w^LT`zfgK-IJdsi5# zz{!FM*PUe+EgxXHSBZuKCT{@~xOmt>>8&pkGkZJB`IKH_5eBT+y`@ER9$mkpgrc1V z45$?1+67#ca@ugH0%SC2Zz6nJWRObexFya+Qo33u(9osEmal6RYza|@L<S~H7zOCa z5wmfbKarL-w08~;P|~bdS~)Vhp+LaTb=YK=VmY(7R?VR}Ej;V>p-j55hHqEo(hM$x zhLd{>8Dv<>1TjY7kTNzF%Eyi^C?XPjXC($^@=4H;D4~i}Ao7r?!yO!lSY$#@pr*Hw zNkO`RLvV^DkWK)0n^m%aQ{BEygaRNm-OJ?_DB;pgF&2d|tax9KW;dy`slbVWD%Ukq zK9h=J5@H^cE12<U^<k%7MiRs7sfAoT9!JbVOaSxfGEo*fT?_yLSiMj`ei(ms2CM2< z3Jd!J000)N_devV^Z$i8f!omc000U=0C*x9sl}i*<Z=NIo~XHGE&_i6OX!3V@K;t? z3r65CU^V6h%@mepKZ<?>ekcSFz|~*?6QoD>U^FnSk=i)1Qqr0Uk^L>J&;rZ+HAAoi zZl#eB`(cg%MoY18fwO2gm|s91(nmtez+&{uSf~jkQ8`FPmY~N#GLz<rW<b|Gu~N{C z4S{q)lJ)_Z7j?UEO*TESqm$q$x&T)GqWB<|;6cK~W8Q(fK`E32P2B$<_6vAGW3~@L zH6npJcps?CFsS>XMK`4n+k)>w2xk3%Kzs?pLt!iz1nI~Jy+o0<08DygmjNXl1Q|K8 z6+RD!(P=PD8C=yagS;4f5;H1QKSls@;C&z?;nqan&fp#=w1dxVz*|rVUPd3m6&x<i zUbmm>1X_#+CQ&ywszu~Vq*NnkDO?OsQ@zD7_64x)KfD_K1#-da<6y{QFc*+UMF4<o zuzB_q$_5=QB~s0SfeTgYb_f^-NgW!7&^<H^6ZYINoWAT~B(6N^#Pl%6G}4+&%4C~= z!Dbt^z#N164VWNPq??9n7AB;ZD{hGy;$=K~jr)+14jWL0y`-BEy~2Xg5i_6(^f0r* zGE(Pd8FuK@GI}5~%K~*0Y>c*;p@B%oDeH|p^$A8Yh7E$|Guy=`VwCiLy@Jf3|A<tO zF=iC!jpxIX(-@9pwq|C)S|yp6OoTdR%<VMWfPVxBn@1*P_{g-<?2SE3pJP6~%H&GK zV3thQ2F#>nzU;>JHL0Q5Z?y^ghsYV3tfm5@2Yu3@K3yhZ4`U_s$jlzHy*si@RK~1^ z?NNLb>NJhmGsl@og8=);<N@c%GNNaH(q2A~IGNj74>OY~WW6j}P?+lVMty1sWQLib zz8*)1Y*1LYd_*Q=ULu1!BCrcjRYSxw!n#v@2o=2oZGRykqlFleKCT-DlF39NhJ-o2 z(9ixx^?bs<3bM4L|F2{*W%19SynliE&V_=CCJP+{6AK#$7Z0C+kVv*1xy15FNXaND zsi+kwR768dN3WQHk%<yB3oDxvcBRUct5B&*wHgi(f)NzM36i22mg5Cck`-0c4b!q6 zf5>ZAde56-iarc)ZBuf~w70z<xudhIyQjC&*B{}M%dWZZimL^a=Z*}TOiq*A)nYAe z=Puvc8Sf(bGqYx82Ai{%+enQAy%QNCtYz=&$)J`&6dNQp4E7tFYZ@IN9G*Rb#Rdj3 z;@lgq(^(GcZh)r}Ef*o&lDYuDWVRc<2*@tXvm%-xJFxVHIA2T4V%|rc?M!5&&hE&R zCX!SFkktn`#vE(B0T|I@QHh7WQ#u}6au5qe!D|Yoc&4GI6y{6ZQtk<+{kwD@&cI9g aFC_WKl&sooIA2}*^<C=LGg3Tbu?qlSkMcDD literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_SansSerif-Regular.ttf b/assets/katex_assets/fonts/KaTeX_SansSerif-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..537279f6bd2184ed32f1a5168850609147d58ee6 GIT binary patch literal 19436 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_SansSerif-Regular.woff b/assets/katex_assets/fonts/KaTeX_SansSerif-Regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..31b84829b42edae20d0148eeec0d922dad2108c4 GIT binary patch literal 12316 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 DqysK0 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_SansSerif-Regular.woff2 b/assets/katex_assets/fonts/KaTeX_SansSerif-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..a90eea85f6f7bded69ff5d40114447a6d8b48cfe GIT binary patch literal 10344 zcmV-uD3{lFPew8T0RR9104Qhx4gdfE08C&204NXu0RR9100000000000000000000 z00006U;u&y2wDl83=s$l;$X`j0X7081A}f0fqDQ0AO(pa2ZI3&fifGaK4piDbvuxV z6#5b(Dmas7|Nm{dAu`ZEP~ECnb|eyPwiTFUR5y*Mx2Ne~jX@c8uTXpvCb3wegGR;m z%=c2Wc%sfsG@ovJqNOc3b(O8mWQ$5aQt&6euR0L)w!<=-Mo2Q-4$p7%|J(~)E-8qF zjfJA9fY?*gpf8b%N?0{@F4INkf2*e}_oBAFibc9tdw-pWYuQY8lBF!cG4B<aUHjnF z)tP^`wWdTLW3PMf1<?Zv7s-|#t4wr^j&mu3uMzF|3fcbT2k-BHfN|Jn`TOM%)69h2 zmuyq9h{?S#(?e6zRoednL^%I1r~lrulfvA%IMUc*e83=Zp4;R8lM?OTR%+REPFJ$z zF#nea2$3{_!V(u7vVT?8X~R?+QV#i<tOuqv7p8%vlyq8Y_^E(JYnV06*ro&BEm+r1 z4ktwWVI*M10!Zz=*JA84ZMt18E$Q^E^kF|`Jqj5)@(`&3HZw9DwX{0T?B3U|bmw15 z4hsLaw4ZKQ=cIGe-F-+AIfNkXebgtN9700IMrJl)Hh?Z8mjN+=X4ohP0FVjvYgrD8 zL3iELCgie;O7r;j+E4p*bFGr*C5Ve6A}q~5_x{SG0B}}k2?78=*DwGUkXwd+lLQ8@ z$DRs2m~;0pczv+PvJg<<uf*c`gYnjVuN7E)j{^YuQbPdX>r*%mc*Lwiq#xeHSOGr0 zb3DaLRH-%IWLxZU$ni)jzs}Tmb-AwfieA&}dsA=e?Y*n_u7vzZe(VRLZ(9jDAAg~< z{-(~=#k$(dkGQk<tOR@>Kjyz<?oT(3xZ$c(u9!8Z^}q1n`q#bag)Ry#`sjmq-g;AT zq>Q`)$g9TN+Uh6(FO&9*7@)=wBO=IbUWS1Wr7ZL3;5In&{ouKr^jC~kC6N*wp;O?) z3D7S;P+b2CTv%oIF)ooGAILnNYNE-vh3pz@2_Ax4+7TexkKPf%YFRomh!yLo0K>jA zcX`b>42T$gVRMZytzMGx+X|FM#wHD<i`B?_dKf)x-J6zTAMN=w+c&Y>#E(Iml{*pw z7WQ<EQ%_}tY)UX<K&B_Ll3BIE0DknO{A=u{adwN2VmDZ2&UOAfpxxvb<;}%!zGEU> zIZj`BRFq{Z4eVMa#d<Uo8Hju|!4i2^?Zn`*5LLP`j&zAEnNfAD0+~~CL9hmbKH)YG z8%xX1@^LzGWx*_Y!sV;#kdzp#C{MHs#uTrP9OyvuG{mIJK48*3HH;Z+$1}xIn3^F8 ztEerH3~Z`q>W*I~SqUlfrfocRB3HkDq$pXxlk!f8y-9NoqE^A3>wv;wqSRw&jw+~g zG6HO4qBYgc3kdN@iLA9GwoR(d5Z3`k3v4b<NWP+Qnma|aqp@A>$-t;j$bRS7t=AB< z*o!nNAci4QlH@U)ksB2TLq{Om8nakk<&LpTD&E!F@)yP8HQ2lW(B_8N*qG|~tuaw{ z`(TY&UAK-73hUYBcTLLCMQ{Lg_@3LpTIQ8*3aqN@D&ny%V357wgydUpRP-2;zl>Rv z$X<PX_!bIvTD?cBE31M8Q+C3KuXl#AK?=qXQ6QY(!~R@AtUSHY=2*;qaqhu&BQ6N2 zcpr-CoFw;ord6igrj@^h&YEEn=1+mgtkU7kGvgOpu~d8Px8DNbqP0X4N`En>hnFqF zS^@8V3-rySqivp+krj`4oGzUaPcDl0UV9Q&O{_{d6nu}>yXqLD06QELrbtrCNRBEb zPl*&LCq*hqiK?VbHBzDac>@Uct`z0Nw;-s9uPuf7d50NYW6#HNM_t>V&pWJ&HO_{P zQ;5~!9WIM>gBtLm4hjuWXo5lu6xyKB0fjCo^gy8xni&JNw~~oHGA(H2tTy&!%vu<( zdWKs#!UNNEoC27^k!eXA(y6zfDU9Z1F1Sw@dtf)%I^wihc$)9R1JzKSH_dFYGYh~| zrO#c&+HxVg@)E>QqfJ^GIREfk(7u$7vXJKWyhE0N8Z*^Rf|{7mE~C0yFN?L3k1-Sd zqZL+Bn8c0>GeS~J$-c|8efwAmVb}DyoiIPHq%?nN-Ej>B&UfMs@^2uIS)`mxnw;$A zu>o~nffHD7KqX42C_+GX5^w!U#huHrPkKSkKIIE5>U-H~29X<JQ>Kv?$XFGzrwfiq zC5Ukla;Aa&CnFgYv6pKV9!mmclPuG;VS>%zl+2fagq22Yge<v;JaUTMQ))FwoRn)o zoh!4_i(XC61?sqg1BcMa^U{=hquzBhN`n=i0#=9)oU}y`G$e>JD~@0f6>71j?oL3Z zddf6}XY;+Aw*)QNW}qvM66WudwqFqW&?Ac*td`|AWM6X!qCo^%+Izy#o4E$mT9qu# zO*+TlJ^kGD3*Rf&ZtxA>2iKyqrU&49<mw&6YZdcKJ{tuqW@>U61x{#c8Fe#J-h$1> zr?8AqMI{@elSe3qj(ao5{rL+q3t-d-`><=)vSDnfG+I@W9G?e8fe1gz*uBxp7Bwkq zKAdXon2(Imy2BTxZcELRa+W<u0qA6K8B-VF>OwAe2b^6&g=ub7NJXyT%?2-b+cic~ z0(Am|A~9tEi$>UN(5Qn;;>rLXjorsS0Z9%52}#%kAd(_t2n9`OG^NpuCUSY8&;r+_ zlmRLlQL{m(4K7J519WKAu1X+FJ-E~dSsK8lAzT{4r7>KZz-LWSXv2EyEM<`Qo;e6& zVer5T#PG5T0A5?IK~UFhF9>2YnHYhv^)RsWFxq|vA~^tn_Z&g+oIoV!$;66+i-(1) zhlQJmg}ahT9$t{A7yJcXIe2?G_;@(@dN}wgOY--E44ru~^NwG0R@;PPb)=r{&_S%R zs(wPPOJ%EH4b(0!4nUy6ha9i+MEs>82b<F$00`d!%VRJA+%A|3Z_hjq0S+`TOaSIM zTeQ+}w6>NW7?<s1DPM|!x}?2@77b7p<rH<ixD&*^wD%yAB;_kQ)pP>i3l2P2O1Y~_ zBG-??&bBS5!!&G~)+nYy#xHr3)&tKiIDX&vY_lgRj<t4B3O%P?FW6f~GdHc3Q%wtL z=;Yljx|XZ%8W&S~36dNQioO%uvEwdO@_w&8bc;lx>QWqrWZTivv}l^DVHJ@lYF$f_ z)%3M}Yg*F!enh3~9P=^Hz$i8C6@mb331l>akR}K-8m$`UHpTPdQ#MCIR=I~Ft5{3S zN;(IYuW1%y)?yB&@mzViE)*fhXa<)2eayJTmZoW6a=Mn_SkzrrMGf~eZjeQsJk_d& zAfVVd+K>g!Qr{h-5Cl~u!62dTDHBt9t1Co(7FKrYguMU{bu|OP#~%|G(gL66nL9LN zED-zrech#*cn+*fDEN3)H?a$cIut&aIsd6intT6lha3Kud{e@8eNUbF*%PYz?3C)< zU_Q0>TG-m9vb^ov3q!C#ekSfktG=WM;y#zA$30S}a9a+2Y}ic{+lBRGdx2(}b1=A8 z;rE-Si@aoLWF{uq1XvGivM5aCv%zo8CcKvYjjqtfqcetz4Z&};ddk!GGzvvGyk*3s zqM2SHSj;(cWVGg`(aFR#)kt&>zT~D<Q*#XJ=z9G4SnVs-l{SwNo}?0qWyvgvINIf+ z1(r^mBnIj1Pdv<KV+bYN|I>@uR;OzpKsQ3{S0>GFYd%k|y|gtOUd_7KlCW+eEzfhz zLnt6fZ0fKp2N?N*9a2B6VXduPnkY^tPG`pr?F}>Yy{+c`^NVeZ=4^mTLbz!YB{q6> z*Xyo7CfuW$EfdX+Q^dW`-<!fi6v5g~u=Y&sxTyqs_|-@?)Uuy&j37{;q=1;RJ?e;W z>M&-ZDZsQ1*Hx~*((HgmX*32DEabPFW7m7Z@{e2zu2aOD=UkZ$ej<+M>G&4S_?pEW zE;wH_Smf$n?e#mpGfv%e3{uxInR&(772kEA-I(Op*Uvjr`WQ(Jn4cT~phT8Q)AP8N zvSrOL7xy)WFN2b8^&x@x%j2G^z6t}eNccqk0Q9K^eAg@rVyEw;*gDxD8#fM@h_<%3 zRXrkE<#ltyK2X(bq0vQb**0CsDt9cUH>~*h0IS(c!xTYCCWREWZSmEJO@F7rg%f+@ zi|be1v>mGU_Scvaf8i6(aDcSohPX}>`yKVfw+X^$wU4fsZY?pI2y`p%`v)9rsbOeK z%u+R3(lr>V_W3JVfu2QqoFkj4_b)i)oq7Wjy?0U6y(bhdVA?}$UsfzijRI!*tfMas z!%`InG$+THB`_a@nn0gLP!}6F()mo9XZ!;rSG2TiP(WEH*LM@!7;C@vjIJNA!gX2Z z5qsCv#akhj`I-;*2Kr4Dayw6S_F7wB1T-<7VjP7&3KF79P%=Ud&4EHn^HA{TvMoSA z(6L*X9|LND1qFa6qzWS)!X%Vnq^D@u6qd;)<{h<s=Bm>D$k2Th^Dz>OVjhhaM0#Z2 zk%xcPKyNNrThv`tWGfFbQ>+E_AD}kl*VoUsC#Yel{tke$yVy)BDcR21#BzlqQ{D63 zoQq0cum=2hp|*w^E0t;{A~@I5sW0n)Flnn@abKtAr6pDq1bYLpmZTlVxYrsIs-*m$ z9U5b`#E@pCVvbPW2#uJUM6kDGkZip7i)_PE=p%zgQmB;qPD`k$P1HMv9g=C8MecQT z3^6Jv`^{BgbmK$f>DHHh{!Uq<GicEdWK`QQq!EC+LR$^@n;-R2jDSjugj4R=p=Y(P zLPC)=v{ZwxHvM7;ol5V~?7^osC1U^W9vW_%d=;pXNAtC4s69{yciu%ItGfG5f?$Ck zcVNIja$``?yGoTc+lXtI^(@+DGG(Fw=g*8$)&1+u%V&ciu?%}8Bdlw5g-_}3e$L0% zw;`FNhl~|NWqwkl7gq2|(=_J7ITiIlQA}ix=KJ_{of?MiYg+p7%}!a|=H2_H$<fKp zJn);f2#sD4jh#wCatRX8C3c+g)G9$QpWZJb&@YVO&M#1cUrd_<o_UsKC=FYkJ$vXi z;sJ?4N@B{>pdt%E347CJVBeEGE=^>I+INp;PV|{I6?XNJcIz$ny2vAhJ~?n@BIQPY zbFzvD{0$>LP)Dw+0?kKgpS;;Bn0IV)X=VolMV@XQzFD{N)~n9Z3^tBpp~(}Si3D?; z$RMgPhG0Yf;2)qU!iw~QEssZFR(Hp)QHZ~Z&vbxj<MrBjM}a`c(qivJ9VA!@-!V-d z?B<2ON7l`uPuAq%Ct@S0B~++)n3DrQpb;9S1Cu)+mWMra%5LN89O;zRo#L`MB_)}0 z<jz#9%50#N-R3d}tQtM230ew+4UiF5j%M3DX+Js~53Gk+a@>lmQ=3{$w~?8w(ix-{ zsiNMggF!-dh-T_1${jEj4)d9BMKMB1ey99_c+UswwrjTJc2=20(T250Bu(@+B^xLT zHM$;6sj72_#r*aEK)h|?Vv8>vQG~_R;&9n!zNu0CyJbky#U||Hg+59<cH9B$<Ya4C z{KNoHbhJiy>ZKt^C9no&@=bZVQz7<qXqnn)VTTVzs&81_!uIo&pXSjgez~L7$t5Lp ztGGC%#xZT4J$SX|<=W0cJT*p4MUP#zv)0}8toBu_V#&iEc8vF}enCz3mQe^|KY_L^ zfI#W3$>R0)yC1!C6vcY4pAd{tGEaLdw<=v+QEe2EUAtV-ziQe7k||V{b@1^rTpI;~ z&t&xVXw%vOsz&Lfw=}<)(M^VFpsvrinRw9An)S(tvvy#Zo!O&N*{Ly9ZN!p5SBOj% zp#aTaV*Zv1nCXtGu|!DDC<^WsdBGqttJTkS*rfu^9G2MDo3lP%hGHPV%v-gtjTZy; z3DnG)?tYKGO$@{z?c5vcyF!=Px=k}+3Ee~i%$bR68#07@^BBd5Hi_bPkr$16(@IHM z7w|TwT`my!K2+vSyb6w{Q6o%~82rRUW=-6QYjhL$?x$7MJMSvW25NNOoBEqrEF(Bg zh8wZgIdWQ!-n4>?oNi#+>z8F+=(;|`Q(yp1<fT%h|AGHRyq~zP$_A2g9qn~1si}lG zIV9sqV$9UvmA>F&KX7Sg%bOvjqs>whjPSc824XCW9#Y-@7pG2ol98}`e$3*(<dT^G z)jXPCkcZwXzn~gpLItH^@?(Rp`Ee8BVpkwLUT8f4bP{D588%To4N_&qBxZGQQkxf4 z0PP6pgb^;ViQv^aif%Qdpj?b_{==}lrL?F?xm1l@uNyaO+jXxaijmuO_pAC%yUjx} ziU{3L%aPB^mox^H==TUib*MJuQc6%Lqb0q1kQfX$rbjxQPltP4fgkUIEQ;&AEr>Mx zi)2}Ulm=#9{&B0bB+!97|0;63w9AP6%7ny#kgr3!TNYvY0J9#8ev1^}TqF}PFP<OC zI>l8w)~>s>4ldrR{qk%r@e~h0-$@hcMBr_reB15)_(}0L>D{{k4m)~LE1K`4ogY6Q zvgRfgP>ClHyjcXGn%cW(?<ON>iD>FtRt2jPa(iy^R#<(t?uJ|c_JAJiN(%KBPjQ~& zmjP>7m9?Fxg*`px9{>Bly*=RfLpv8vW}Bs_OL<Xz0L^==ad&Dc5^Xk)yYcPct6-V| zT9ta1a79h`j5e4&UF?@Xzq?5q$u5{~Uj3<#GVR6I4g<DJys`AF6{qF=Q1{{)P-kcG z2VP3jOY#@@3b0;B!^ARCWxBIl=`YrgGIrxQSFWoxCpft7wR=>86xE*DrUEMI6v~bM z4OXcUbQp!%(D7H{vkJ|9w#vempPw<)G^Mz&C3T~CKg+{TAz5<HqjTyrft91x(dALN zJ?ebo4@p|pwe-mtTT$6=Xw8$Gg6eQ?m|>isHm%r@uf`{SQf5!+$FcDM(nmlL%!adf zb+qsML0owlwmP#?KZ{9^o0Tj=3$IM)<&VeH4q^6e4-}lixFSgu9G@N`SH+P%RxF8V z<-I%i0K>ZVJ7<5Jtup}RYURP)xpO@Dt5qPSjjT0HWO<c>Fex*@2pb*C>^NwE#9Yl{ z?33w>+kVu`_A#>WHzhh9$LeD;k}8n=yHV#eR)LipNVJah^jo}JKeyf<)t;V#c<W=4 zPiV>7>wgCXkX3(aX<erf0{iGGt%r=BM9J(gPb0l;bG5}kww1s9!+`ah8uHya&TWbW z>Y__R3sZ4=?ZSB_!sRd65kz6k%rOhs)}g-OM8e8?u5W_Ysh#xnN#M)VOFq*gHD^YZ zTZ^*43zILIW)MvnL!+C-KKbOZSgNv8Gk1Ayr6zmdda%K{*sM_xD|c)qBY6v-`^AMh z#T7-l67}AZY=Hn8fx5Z01H!b|=~C^l2h24v6L(IlA;Lf7aq@ryXXO;Bh>vDSE5u|y zLU&H?cXyi2^Fj!HA=I|B%22hrW;1LU`&0kVoGrb00_s@sIB#-95@biO=N8C~kYb98 z>!<U0@o5z}NGP1@Fu$+zLM!tnxi=J<EN6hLwR9abit5WM9C#qvyjW&4i4oC`JXK0E z1pSp$>I_irFfIl_c3`PQF*@Uy-6;}XQz%bE(j-gdk>@3wLQ@)!yAr5eN({UOAGUOk z%vRtX$*Jn5Q4a5&#?n<h?nZ@$&dufx+s^Ru&6$)S7gsqs_5P+KWe1o$0h0Gb+u3B3 zH<qW3<5F|Owf3YS6t1XT7|Hfd=&@NR^my5k3l){&3?)CJ(6FQ=v{E7)E6Z6UlN{fA zUz(FwS=4OhOk;J-Qjix;dz@eLzon7#>O&_Q8x<;Bxoaj2G5B~<_>q01EI;7#WAJP4 z+L?!6m-i4Atk^<s+4-u|!r8Hs0#yL5L(B5#J>zwqr>B}^`~X>vdOU$Zz`v?Hwc2C7 zsgrI|DHlpW>C+QoPbY#<q5x05HR(KRl|xZlfDa6hO50L~Vy3dnDNY@^mXHu<N+qu0 z)m6%wYZx!52+q-Mw3L@#at3++XTL6&bNRvbQ=xhWrkV1hzzpvzkWtE<fqiumY)nJ* zP5$W1mbU|A3tE-Xy<j}+4;`yv64gzL@1C@wn!JUlfF*xp*EL(U*=g^V;@Ks0LgF8P zJ0Hc3)h0g=EJkDAd<<l=N$!bmCY+b29O6N^;+=Z=`z^w;oU&-obc8U|{#d_Wz=8ip zy+iYsf?#KaL_1r++nrS2kw|E16-3+Bj3h|sE*Y>hrh%5WIwR1HXsuwEp7H0$5mIIR zkAh+bPn=Ql*69VISL&SZNTQI*Bxe=vuZWT{>Ktg1vDnycrwdGF{29^$4g1<zI6Ms< zyl>y<AJEi|-_+h}Hg}P6Vxrl^+lxcoLn~K+&pW~gcGLS<+{k$PG`pir?W2Fb5{zrx zYB8mmtaWyG(WfaYZ*}?X2Nu+M^bB_JAh@75sP7I90w>};dK}xc8~mMWNR=UT)M91W z{4s{#2s>&rLYa3P;s#Dl>MgAiR~pll{4%eKhv36}K&sZ31j6cEq`viC!Rn=z+)Ida zs42A~wQ0_(E7XX~ysbk>+|=B9ZZtyB_>6k3k<UxX%gcotrt2L{HR2u$9Rvr>HQm$a zK2&NTsQ+H*kB;WeJqI_LZS!sxeRniAgLMxrNcGTMBYc3?vu5palxbM8sE2j{HqIOJ zNq~s<OLB99TmN-bMY$`wa>t4NQIJ@IxQCX*qjTF<NK5Aje8>MysAS5q{)vS_<j?I& zfhJO-Aa$BL3v0$D6omCH+t<!`#EN)SOD``^oG)>A=3NLcxAd%xZ1Ancn7@+9Vh5>V zb4z#4ZX2_k!|uiy{@tj1Xwf3@xr5r#rw=cuDch@c=u)pMd`DZI1(+ku7Ess9WO)dj z>?tuQHxY=-3QY6H@iWv%NrJ8_R}~AIrpnh&dWQl_{r~D2JlH)AYI*ZEyJJLFVxH33 zwA(?!XcBwgYMHsOGq@28Tgv7rU@?TchvqK=Q=57`qwL~hYmI_Cxc#WqF7<5^%K+qB z>s+%U_i*dyR$#qvtpc-bET)PrV25kb!_3-!HQ`^yQkl=HsA+QRrQ@Ret*I*SDE>OO zqSt7483ct8qYflW&1KQKGF9d-b~qjXDe~gS54EW3OFUC1hhk>9C}wd8Nvg%_u*s8v zzsWxdAkNR9Ha!EM=;oXas$y&9F)<DN^vw4(xd?0&!_YOGf9B^B^90NFd*e}rb`;Lb zn|S0mnhu5t-zSZp-x00L&W4%qH&+PTgcS?xzI`7<(i|RJ7ZY^Ux^wXWAx+}-2dmje ze@x?;&8UeSg<8h$vfn7mfZY%rbO$^+e71JVXGA^qz1+VgI^+*{f^LMas8V>9Rf?){ zTh5nQUqR!I?ar~#hJDYvp~UVjIoeVe1kD|qJ2<X>X~R+|*OaODFGX-4A1V=7Zh34Z z<U!Dm*0voY#lmLr?=Fy`#OD3LuICK=cu(6wLNrare{%+TLp)eS?s9{;g_c*jmyfJ2 zidYTO5#Ou-4j3Gm!+@~28V;O)Zbg;`l@`6yA~z=jK0aO`*Z$-9>MMZ)N<>B*o){4C zUPVGhBIeZ_=Ai4=cvE*>a&Wo_Bo#Rf+*xf!LLZ(L8G~2skJZ0S2r(ECGZmke7|lpb zuH9>hjiB5tE;xejTw#(_MHUVg^cxF~+>~n<x+2R47*fCx_=dbo;DeFl_)JWfZ<;E# zygE$J(ab?Z10@P;Ve9H$FwFoZB(Nn}QPZwUEu(UU#@fmltup081Rlp?GG-){@eR?K zmg;Y%m<UnPM2ZEeSsmvc@`+YmH?gN_!jnzs))e;<55$;MX#~TySZV|*dBr<c{`3F` zV}*COY<Hup<F!I-be)zOYNHzBBUteiW3aOlt)toAp2Ib=vhYy{;xRo{OtmXSRzev8 z(SWOuGjUVl@!xJIpoGtaC#~Blv1rDafe0;2CU4O;_IP{LTD4e4Xu%w76o@6I+9Y** z=4NUAwH1X+%K-G3f}=(n8gP6;2L3Y~Uk%;O)rM-+q6QVy%}l;n0c@bhO1q0Cb2*PE zmYT2$B~Q4FWOex4|5tAn3RXB*2!v#f)R`C;@d19$tjzDm)p4j1yG>E#Z3Cz5ovctE z*tNsA5p2X?(kJEI_aZZ=`G&lRO5XH#*2#yx!>H^2Q?qAfxEBQ@kmbx@nQ0GW&@g2L zl#p~WSqh<sA=hA_!Dwr@*f5tnX~*NF3Bl5;f0(B51*d-6KOfNzd54hfZzRi-8xOiG zYwgA53s=#7Wb>Q`H8NFNNoNEY*?;~b=L?1>&905^R#5}hG-XS?XY_!ZM2*KRG}`$J zm912w>c>JSj-+v)y5iBD%PXWo_H?;?w%KW)rlMo4%6Wazf4<4y2w3u@kg2#Ww~Z<- ztIEr<%|ZEBeAP2FC?ytKw|sS>cb@Og%F9MLnjqIqE7|b(oYcq(stiN6veF|fRJzc8 zGnGmk(Ms;IsaNnof4}z&hZZ^gowYI!YHZLatEK0vsIfn;AiZpDOX}lloE0WRWdavR zH?P#BRmlHILt{6cds$RSC_WogsMdU=K#@X!cscxTMKP5=)J#<84vaNwu_^W`v$eCw zfH6@Mnv}F{NG0Wv?+`d>zmsU*qbE*S>l^l_2GybtKF?Z1M2>7b4&bb8n8~Vz7J({K zoF4YV+fN|0Q&mD6ljtCk@EZO5tB$yeM@^A9K<%Md6n+`$jtwS{Q(fif2p!S*N)jSS zo+n&9l%74Jx{93q`{VQV#kykM)|Z7k2}qg0=eeW4@{iA<_4NwZui|k7XZWSA(8-&~ z8Ble#`U-%u#h<l);ARqu=xjiGGBY8`H0iV^N`9282oppu!C(x75F>Q-P7=*}>rPc1 zh6uZL4U+an^|J~;9S<fL$K>>^ow~CJAlC1a^2<e0MZ6?2F;YY|P?GY>Gop2uaipPa z21f#)0H}4$y6q{cNA`26G|q-EQqq>M=g_FzslriWVOksdQFD?-Ab@p6<Ul;OBpuf2 zG7#OccNj^mxi8>p6l@|fyjK-J*x5x*^RHN@JN^-H#rjIVETTy@H_uh#gC!Op6N;!F z(O?3_`0*6Pew67e_0K7Xt`NY}9I1{#elpn`1SA7NCbKon%E-4A8d3!W14)25<89TE z5lvRZDn#VNgy_O|Y}K9YEJ&bU&GBCB4RsyefUR2#LddsOn>=mbUp+T_0CX1u-DPYu zF7nn_J9mwMo49Km9B964^^u>ZP`a4f5iGS~EhWGfv*_JQ+pm}=-$gwf8+W*ux$zKv z0;#q95ifhspV|dA-CgV5jPA&c+VWW2;$Vx|Sm@1B1R4Y61yx<1#!gR{2hPU|@tpGc zAE8(jo)_g8u5DIwGet0x<#La5zln7XyFj74+)Z{K<sNNntY}2?JvT}d;hy=u3(P_6 z{yi{&!<R0sAMcrJ={<BATyY@1(%6Y{+|*N~snWaOHhuf1iaFPb<A2zhjQYstDyN$9 zi<+9G_0V)6K4EYYLQvK?&14^v*U~^=GqtXI@zgrTO(-un(27erJ2o||PUqDYjQ=PW z*BZ#neYhPCA9f`$99$8X;iyV_I@qI}P7s%$Ow}gS4P1_5d_UQC@=f4P7rpNN9$;E9 z@-70mg(5THAPhc}8A+u6kkZu_X#2$x);xhy8-w&leRd1RAe=##%OBc32!cRqm{VZ7 zj%au>h7I*i%d2YCWgZ$bD#4v$%rLF_mB66DpRp~@w{)B$$^B$^R>S@i8CYk)V{da4 z%Lw$06Z^9oc0WmS;}rC_P7C`p_%p(<Ycfo#ezHOrAwceq%<MsK<$LmH@@>76UpYGp z3j~l~{New#hQ!-uUif)kZvt?3{?M}^@aq1TMkV86X~rOvMu5n$U~K`~*<%H{S((vz zoHRp0HI^64GLpCq1Q4nd_+6&*xTj(2HxI_s=q(R)*%Lv=GHBUdkNLM05NDaHg5|P| zthT8GoEbIJ^j5yraTNjuTKr$mdd-L_G}WwSnhzn6p8BvavNYyvH3Q*0+|ZzZC1C~s zvtgx#(4uLse;i=3a@|9{_^PLxw!boe2Q^2Ho>Ac2U5*K*K*2IIvWQfaLa8C^<OJun z9%Ut`Q8Qq1Y-d`<#6pK+qMoW0U%TmGBmk5qxIaJHU)Hz%9jmwl*{ZIZ`2|DM{}w}w zVWoNkebrPNQ8NlskUi=VASLHP^{?cVWFyPDOs+2%Np>0|vNJZ13RGwel`n*PheE~c zg!XeLDMTOUTLLfne{R|-g%p<Y|N5BpdD@XwBxkHA8jpIV)X+-WQC5r$ZJB4=)HRhD zNkib{as8vK`>#&@i8`$k?mqy4iJKdLkOTS}(zoh908lUhW;qjdUZuZ7F5p%1t2M!E zkuJMKC**ZmXirC;;<pkMFcp=p=hDOB$t=3W^QFG>CI_x#MnGZi1%&cc1Gf6~4~UsJ zAq^QKeT~He#qAg6*LnpBV)o^&DWJH1<t_(sR$=1n^VnCMTJF-tGHOV+$8mKlsFv7a zj>y+51ZI~L5!GJFb%^VlPHzS}ejFKJL6DyWH6u8A%3K~me+Y^I^cj}OkYL3`Dq3xS zUS8_~btoUc?*9yjrRykKn!-}`@UYVunQ|r348rO5AJA(*Ity@)<|qcL4O_;%QD<2) zY(Nx>Rn*|71Z8jrYzb{R>et^$tMxj^l^`9nXa%tn>A3iT=a=*56Cu(I!y|;VKTmvw z@A^>_wIECg1Au2?KmH7rfHHt&G#qG%1h6f59s`N9Z48X=voSa(KaRo6O3WAnRdn+r zv@x{mfEGMeI$6J_)~U-lqcv;Pq!(YBAR)Ju5)&(wnQ)2C=hLXy1LGYTw?$^5o(E?x zDpc)i^RkeI4v~;S0oV6czd%sN{6ds#H;(=Q`!u&&HYV?3wSFCIVBPGE`n2&Ev2vX~ zwU_YGl3FiE%~E=EitxoOATybhK-Eb_T%^vJL{{R(8}E(0q0jp`)~PAhcOapT0q}yf zC36Vfu%tu@ib#yo|CY<r&TnE(T9}W`gE)OjN(mj-nzZ^>z<mB)u~aUiM89U0R6eR| z50-q)e0~VuspIpR__fcTBQg9EWOl6Q?<ve}8#IW1m!S}a$=euFLlHrVyzhVzj7Ft! zm9x<@aKfw$RwQ(OLtzlLBOtUarP`L6<MSH>YI8{S3uv2{kBjP;mQb>sS(zw8b`c}q zWqI}|(Icoo%XzQmS%6|fNZ<9dnUyoZqp;UA{4gV_NfZAmLFm5|eCL89A)}z8p$o&n z6pkeV8wVFpq$ts1#EQe0C`qyu0;$pnrOP0aDN8mn38@@1x$@*IP^d_;QA(6jP*Tw- zQ?5cKEgd}rBNH=>g_Vt+gOiJ!hgX$qKK{U9kr}SL5FEJZX7CUJLckSQU31Be5Fr#I zL1c&mQ6U;chr%F6n2tDV$T1%q9PR697K@b`87R%k@1<V#?&j|iD*Wy3{#2=)LK(r{ zRNw1I3}yL1$Pc@lVXT>8Yi?|oa&+}Hw{>>lu%_n3_F(P<Dp!I212}u>J`6#Nt`0$e zVdM667!VJSrU5Md*nBWr3&X?YWO#~TS1HorDI&lFFbZ`;84eT_6+glOnwMmpd*ME$ znCnhRh^EDlqhO1f>8t3&+ewp?=v2^<=Io&TCcf@{Fjiv@!SwVG`7mp=@P$dv*MtxP GG{*pT{>~Tx literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Script-Regular.ttf b/assets/katex_assets/fonts/KaTeX_Script-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..fd679bf374af72f2a183b97b40c9c7e9e51fbe5e GIT binary patch literal 16648 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Script-Regular.woff b/assets/katex_assets/fonts/KaTeX_Script-Regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..0e7da821eee0dd05a0a6f0b16c2c1345dc573a84 GIT binary patch literal 10588 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Script-Regular.woff2 b/assets/katex_assets/fonts/KaTeX_Script-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..b3048fc115681ee6c1bc86b0aa158cfbbf59daa3 GIT binary patch literal 9644 zcmV;dB~#jWPew8T0RR91041yd4gdfE06`=G03}%f0RR9100000000000000000000 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Size1-Regular.ttf b/assets/katex_assets/fonts/KaTeX_Size1-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..871fd7d19d8658f64d8696ed9cdfc82c821ed76d GIT binary patch literal 12228 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Size1-Regular.woff b/assets/katex_assets/fonts/KaTeX_Size1-Regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..7f292d91184f257054ef77cc1cd3443db757c9cc GIT binary patch literal 6496 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Size1-Regular.woff2 b/assets/katex_assets/fonts/KaTeX_Size1-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..c5a8462fbfe2c39a7c1857b9e296e62500a8a8a5 GIT binary patch literal 5468 zcmV-i6{G5RPew8T0RR9102N#S4gdfE059|a02KrP0RR9100000000000000000000 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 S<RjG9al%SJ@d7lsRsaAXDTTNI literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Size2-Regular.ttf b/assets/katex_assets/fonts/KaTeX_Size2-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..7a212caf91c0007e826fee2d622bf48acbd30dde GIT binary patch literal 11508 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 a^|k5z`r34UeQg~YeP3G~_EX$#+W!Ytlnjvo literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Size2-Regular.woff b/assets/katex_assets/fonts/KaTeX_Size2-Regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..d241d9be2d317f7b39b401d96c8b18836acea0fa GIT binary patch literal 6188 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Size2-Regular.woff2 b/assets/katex_assets/fonts/KaTeX_Size2-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..e1bccfe2403a4ed770c1697ae7c15b9e1cd9bc4e GIT binary patch literal 5208 zcmV-e6sPNVPew8T0RR9102EjN4gdfE04)>%02BcL0RR9100000000000000000000 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 SX7z~8F|1R2%jjc5VHE(*y!0&q literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Size3-Regular.ttf b/assets/katex_assets/fonts/KaTeX_Size3-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..00bff3495fa9d2f98c1c9ce436add6a1bcfe87fb GIT binary patch literal 7588 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 CPy?p` literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Size3-Regular.woff b/assets/katex_assets/fonts/KaTeX_Size3-Regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..e6e9b658dcf1cd031ac82b6b8f312444c55d4fc0 GIT binary patch literal 4420 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Size3-Regular.woff2 b/assets/katex_assets/fonts/KaTeX_Size3-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..249a28662218a7a17ad8bd1fe072169ecb666a49 GIT binary patch literal 3624 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Size4-Regular.ttf b/assets/katex_assets/fonts/KaTeX_Size4-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..74f08921f00f71f413ca42c9d1c90202e672ef38 GIT binary patch literal 10364 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Size4-Regular.woff b/assets/katex_assets/fonts/KaTeX_Size4-Regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..e1ec5457664f438ce5a1cc6dd8409bf60ca7804b GIT binary patch literal 5980 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Size4-Regular.woff2 b/assets/katex_assets/fonts/KaTeX_Size4-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..680c13085076a2f6c5a7e695935ec3f21cddb65f GIT binary patch literal 4928 zcmV-G6Tj?tPew8T0RR91024p}4gdfE04S^g021l|0RR9100000000000000000000 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 literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Typewriter-Regular.ttf b/assets/katex_assets/fonts/KaTeX_Typewriter-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..c83252c5714c71a3e0ec62195884167339a0129b GIT binary patch literal 27556 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 MzaRX}iWL5T03x1QQ2+n{ literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Typewriter-Regular.woff b/assets/katex_assets/fonts/KaTeX_Typewriter-Regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..2432419f28936aff53ddfa2a732d027e6a6648fd GIT binary patch literal 16028 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 WNl-{k0Dy1Nv!D0^==&Rh@P7crHc6ZS literal 0 HcmV?d00001 diff --git a/assets/katex_assets/fonts/KaTeX_Typewriter-Regular.woff2 b/assets/katex_assets/fonts/KaTeX_Typewriter-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..771f1af705f5cef5f578b3a1e7d8eff66f9b76b0 GIT binary patch literal 13568 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 G0ssIW<OAyf literal 0 HcmV?d00001 diff --git a/assets/katex_assets/katex.min.css b/assets/katex_assets/katex.min.css new file mode 100644 index 0000000..f556af3 --- /dev/null +++ b/assets/katex_assets/katex.min.css @@ -0,0 +1 @@ +@font-face{font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(fonts/KaTeX_AMS-Regular.woff2) format("woff2"),url(fonts/KaTeX_AMS-Regular.woff) format("woff"),url(fonts/KaTeX_AMS-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Caligraphic-Bold.woff2) format("woff2"),url(fonts/KaTeX_Caligraphic-Bold.woff) format("woff"),url(fonts/KaTeX_Caligraphic-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Caligraphic-Regular.woff2) format("woff2"),url(fonts/KaTeX_Caligraphic-Regular.woff) format("woff"),url(fonts/KaTeX_Caligraphic-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Fraktur-Bold.woff2) format("woff2"),url(fonts/KaTeX_Fraktur-Bold.woff) format("woff"),url(fonts/KaTeX_Fraktur-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Fraktur-Regular.woff2) format("woff2"),url(fonts/KaTeX_Fraktur-Regular.woff) format("woff"),url(fonts/KaTeX_Fraktur-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Main-Bold.woff2) format("woff2"),url(fonts/KaTeX_Main-Bold.woff) format("woff"),url(fonts/KaTeX_Main-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(fonts/KaTeX_Main-BoldItalic.woff2) format("woff2"),url(fonts/KaTeX_Main-BoldItalic.woff) format("woff"),url(fonts/KaTeX_Main-BoldItalic.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(fonts/KaTeX_Main-Italic.woff2) format("woff2"),url(fonts/KaTeX_Main-Italic.woff) format("woff"),url(fonts/KaTeX_Main-Italic.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Main-Regular.woff2) format("woff2"),url(fonts/KaTeX_Main-Regular.woff) format("woff"),url(fonts/KaTeX_Main-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(fonts/KaTeX_Math-BoldItalic.woff2) format("woff2"),url(fonts/KaTeX_Math-BoldItalic.woff) format("woff"),url(fonts/KaTeX_Math-BoldItalic.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(fonts/KaTeX_Math-Italic.woff2) format("woff2"),url(fonts/KaTeX_Math-Italic.woff) format("woff"),url(fonts/KaTeX_Math-Italic.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:700;src:url(fonts/KaTeX_SansSerif-Bold.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Bold.woff) format("woff"),url(fonts/KaTeX_SansSerif-Bold.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:italic;font-weight:400;src:url(fonts/KaTeX_SansSerif-Italic.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Italic.woff) format("woff"),url(fonts/KaTeX_SansSerif-Italic.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:400;src:url(fonts/KaTeX_SansSerif-Regular.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Regular.woff) format("woff"),url(fonts/KaTeX_SansSerif-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Script-Regular.woff2) format("woff2"),url(fonts/KaTeX_Script-Regular.woff) format("woff"),url(fonts/KaTeX_Script-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size1-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size1-Regular.woff) format("woff"),url(fonts/KaTeX_Size1-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size2-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size2-Regular.woff) format("woff"),url(fonts/KaTeX_Size2-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size3-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size3-Regular.woff) format("woff"),url(fonts/KaTeX_Size3-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size4-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size4-Regular.woff) format("woff"),url(fonts/KaTeX_Size4-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Typewriter-Regular.woff2) format("woff2"),url(fonts/KaTeX_Typewriter-Regular.woff) format("woff"),url(fonts/KaTeX_Typewriter-Regular.ttf) format("truetype")}.katex{text-rendering:auto;font:normal 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.4"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.27777778em;margin-right:-.55555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.83333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.16666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.33333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.66666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.45666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.14666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.71428571em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.85714286em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.14285714em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.28571429em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.42857143em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.71428571em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.05714286em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.46857143em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.96285714em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.55428571em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.55555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.66666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.77777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.88888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.11111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.33333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.30444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.76444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.41666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.58333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.66666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.83333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.72833333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.07333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.34722222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.41666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.48611111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.55555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.69444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.83333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.44027778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.72777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.28935185em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.34722222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.40509259em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.46296296em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.52083333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.69444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.83333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.20023148em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.43981481em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.24108004em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.28929605em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.33751205em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.38572806em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.43394407em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.48216008em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.57859209em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.69431051em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.83317261em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.19961427em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.20096463em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.24115756em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.28135048em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.32154341em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.36173633em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.40192926em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.48231511em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.57877814em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.69453376em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.83360129em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo} diff --git a/contributors.html b/contributors.html new file mode 100644 index 0000000..7e9840c --- /dev/null +++ b/contributors.html @@ -0,0 +1,478 @@ +<!DOCTYPE html><html lang="en"><head> + <!--Google Tag Manager--> + <script class="gtm"> + var dataLayer = [{ + 'labName': 'Virtual Lab', + 'discipline': 'Test', + 'college': 'IITKGP', + 'phase': 'Testing', + 'expName': 'MONOSTABLE MULTIVIBRATOR USING IC 555', + 'expShortName': 'monostable-multivibrator' + }]; + + (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': + new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], + j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= + 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); + })(window,document,'script','dataLayer','GTM-5NMQ9NQ'); + </script> + <!--End Google Tag Manager--> + <meta charset="utf-8"> + <meta http-equiv="X-UA-Compatible" content="IE=edge"> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <meta content="" name="description"> + <meta content="" name="author"> + + <meta name="experiment-short-name" content="monostable-multivibrator"> + <meta name="developer-institute" content="IITKGP"> + <meta name="learning-unit" content="MONOSTABLE MULTIVIBRATOR USING IC 555"> + <meta name="task-name" content="Contributors"> + + <!-- For iPhone --> + <meta name="msapplication-TileColor" content="#4076e0"> + <!-- Chrome, Firefox OS and Opera --> + <meta name="theme-color" content="#4076e0"> + <!-- Windows Phone --> + <meta name="msapplication-navbutton-color" content="#4076e0"> + <title>Virtual Labs</title> + <link rel="shortcut icon" href="./assets/images/favicon.ico"> + <link rel="stylesheet" href="./assets/css/bootstrap.min.css"> + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/github-markdown-css/4.0.0/github-markdown.min.css" integrity="sha512-Oy18vBnbSJkXTndr2n6lDMO5NN31UljR8e/ICzVPrGpSud4Gkckb8yUpqhKuUNoE+o9gAb4O/rAxxw1ojyUVzg==" crossorigin="anonymous"> + <link href="https://fonts.googleapis.com/css2?family=Open+Sans&family=Raleway&display=swap" rel="stylesheet"> + <link rel="stylesheet" href="./assets/fonts/font-awesome-4.7.0/css/font-awesome.min.css"> + <link rel="stylesheet" href="./assets/css/github-markdown.min.css"> + <link rel="stylesheet" href="./assets/css/vlabs-style.css"> + <link rel="stylesheet" href="./assets/katex_assets/katex.min.css"> + + <script src="./assets/js/jquery-3.4.1.slim.min.js"></script> + <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.5.4/dist/umd/popper.min.js" integrity="sha384-q2kxQ16AaE6UbzuKqyBE9/u/KzioAlnx2maXQHiDX9d4/zp8Ok3f+M7DPm+Ib6IU" crossorigin="anonymous"></script> + <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/js/bootstrap.min.js" integrity="sha384-pQQkAEnwaBkjpqZ8RU1fF1AKtTcHJwFl3pblpTlHXybJjHpMYo79HY3hIi4NKxyj" crossorigin="anonymous"></script> + <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script> + <style> + h1 { + font-size: 1.8rem; + } + h2 { + font-size: 1.4rem; + } + h3 { + font-size: 1.2rem; + } + + h2, h3 { + font-weight: 800; + } + </style> + + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.2.1/css/all.min.css"></head> + <body class="p-0 container-fluid vlabs-page d-flex flex-column justify-content-between"> + <!--Google Tag Manager (noscript)--> + <noscript class="gtm"> + <iframe height="0" src="https://www.googletagmanager.com/ns.html?id=GTM-5NMQ9NQ" style="display:none;visibility:hidden" width="0"> + </iframe> + </noscript> + <!--End Google Tag Manager (noscript)--> + + <header class="vlabs-header sticky-top bg-white"> + <nav class="p-0 navbar navbar-light d-flex align-items-stretch"> + + <button class="navbar-toggler px-4" type="button" onclick="toggle()"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="d-flex justify-content-center"> + <a href="https://vlab.co.in" class="navbar-brand"> + <img src="./assets/images/vlabs-color-small-moe.jpg" alt="vlabs logo" class="vlabs-logo"> + </a> + </div> + + <div id="headerNavbar" class="d-none border-top flex-grow-1 d-lg-flex align-items-center justify-content-end"> + <div class="svc-rating-display"> + <rating-display spreadsheetid="1x12nhpp0QvnsA6x-O1sV4IA9SAbfVsq_wiexWkutOmU" sheetname="Experiment-Database" columnname="Experiment Short Name" columnvalue="monostable-multivibrator" imagesdirectory="./plugins/svc-rating/images/"> + </rating-display> + </div> <div class="svc-rating-submit"> + <rating-submit title="Rate" this="" experiment=""> + </rating-submit> + </div> <bug-report id="bug-report" title="[BUG REPORT] MONOSTABLE MULTIVIBRATOR USING IC 555" page-type="text" context-info="{"organisation":"Virtual Labs","developer_institute":"IITKGP","expname":"MONOSTABLE MULTIVIBRATOR USING IC 555","labname":"Virtual Lab","phase":"Testing"}" checkbox-json="{"text":["Insufficient Content"],"video":["Insufficient Content"],"assesment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"assessment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"simulation":["Simulation Not Working","Incorrect Results/Observations","Insufficient/Incorrect Instructions"],"DEFAULT":["Page Not Loading","Content Not Visible","Incorrect Content"]}" button_style="border: none; color: #fff; background-color: #288ec8; text-align: center; font-size: 1.05rem; border-radius: 1em;padding: 0.6em 1.2em; margin: 0 10px" position="override" custom_button_class="v-button"></bug-report> + </div> + </nav> + </header> + <div class="container-fluid flex-fill d-flex flex-column vlabs-page-main"> + <div class="row d-flex justify-content-between"> + <div class="flex-column"> + <div class="row py-4 px-4 breadcrumbs"> + <div class="title is-4 tools">Tools</div> + <span class="mx-2"> + <i aria-hidden="true" class="fa fa-angle-right"></i> + </span> + <a href="performance-report.html" class="my-2 mx-3" target="_blank"> + <button class="v-button">Performance Tool</button> + </a> + <a href="validator-report.html" class="my-2 mx-3" target="_blank"> + <button class="v-button">Validation Tool</button> + </a> + </div> + </div> + </div> + <div class="row flex-grow-1 d-flex flex-nowrap flex-column flex-lg-row"> + <div class="modal fade popupmenu" id="popupMenu" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true"> + <div class="modal-dialog modal-dialog-centered modal-dialog-scrollable"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title" id="exampleModalLabel"> + <a href="https://vlab.co.in" class="navbar-brand"> + <img src="./assets/images/vlabs-color-small-moe.jpg" alt="vlabs logo" class="vlabs-logo"> + </a> + </h5> + <button type="button" class="btn-close align-self-center" data-bs-dismiss="modal" aria-label="Close"></button> + </div> + <div class="modal-body nav-menu"> + <div> + <div class="d-flex nav-menu-body"> + <a href="index.html" class="p-2 "> + Aim + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="theory.html" class="p-2 "> + Theory + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="pretest.html" class="p-2 "> + Pretest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="procedure.html" class="p-2 "> + Procedure + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="simulation.html" class="p-2 "> + Simulation + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="posttest.html" class="p-2 "> + Posttest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="references.html" class="p-2 "> + References + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="contributors.html" class="p-2 current-item "> + Contributors + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="feedback.html" class="p-2 "> + Feedback + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + </div> + </div> + </div> + </div> + <div class="nav flex-column sidebar nav-menu flex-shrink-0 px-lg-4 align-items-center align-items-lg-start hidden d-none d-lg-flex" id="menu"> + <div> + <div class="d-flex nav-menu-body"> + <a href="index.html" class="p-2 "> + Aim + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="theory.html" class="p-2 "> + Theory + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="pretest.html" class="p-2 "> + Pretest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="procedure.html" class="p-2 "> + Procedure + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="simulation.html" class="p-2 "> + Simulation + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="posttest.html" class="p-2 "> + Posttest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="references.html" class="p-2 "> + References + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="contributors.html" class="p-2 current-item "> + Contributors + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="feedback.html" class="p-2 "> + Feedback + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + </div> <div class="vlabs-page-content px-5 pb-4 flex-grow-1 markdown-body"> + <div class="text-center fix-spacing"> + <h2 id="monostable-multivibrator-using-ic-555">Monostable Multivibrator using IC 555</h2> + + </div> + <h2 id="subject-matter-expert">Subject Matter Expert</h2> + <table> + <thead> + <tr> + <th align="left"><b>Name</b></th> + <th align="left"><b> <strong>Prof. C.S.Kumar</strong></b></th> + </tr> + </thead> + <tbody><tr> + <td align="left"><b> Institute</b></td> + <td align="left"><b> <strong>Indian Institute of Technology Kharagpur</strong></b></td> + </tr> + <tr> + <td align="left"><b> Email id</b></td> + <td align="left"><b> <strong><a href="mailto:kumar@mech.iitkgp.ac.in">kumar@mech.iitkgp.ac.in</a></strong></b></td> + </tr> + <tr> + <td align="left"><b> Department</b></td> + <td align="left">**Department of Mechanical Engineering **</td> + </tr> + <tr> + <td align="left"><b>Webpage</b></td> + <td align="left"><b> <a href="http://facweb.iitkgp.ac.in/~cskumar/">http://facweb.iitkgp.ac.in/~cskumar/</a></b></td> + </tr> + </tbody></table> + <h2 id="contributors-list">Contributors List</h2> + <table> + <thead> + <tr> + <th align="left">SrNo</th> + <th align="left">Name</th> + <th align="left">Developer and Integration Engineer</th> + <th align="left">Department</th> + <th align="left">Institute</th> + </tr> + </thead> + <tbody><tr> + <td align="left">1</td> + <td align="left"><strong>Sukriti Dhang</strong></td> + <td align="left">Developer</td> + <td align="left">Department of Mechanical Engineering</td> + <td align="left">IIT Kharagpur</td> + </tr> + <tr> + <td align="left">2</td> + <td align="left"><strong>Prakriti Dhang</strong></td> + <td align="left">Integration</td> + <td align="left">Department of Mechanical Engineering</td> + <td align="left">IIT Kharagpur</td> + </tr> + </tbody></table> + + </div> + <div class="bug-report-mobile"> + <bug-report id="bug-report" title="[BUG REPORT] MONOSTABLE MULTIVIBRATOR USING IC 555" page-type="text" context-info="{"organisation":"Virtual Labs","developer_institute":"IITKGP","expname":"MONOSTABLE MULTIVIBRATOR USING IC 555","labname":"Virtual Lab","phase":"Testing"}" checkbox-json="{"text":["Insufficient Content"],"video":["Insufficient Content"],"assesment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"assessment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"simulation":["Simulation Not Working","Incorrect Results/Observations","Insufficient/Incorrect Instructions"],"DEFAULT":["Page Not Loading","Content Not Visible","Incorrect Content"]}" position="override" button_style=" + position: fixed; + bottom: 20px; + right: 20px; + z-index: 1; + font-size: 0; + padding: 25px; + border-radius: 50%; + border: none; + background-color: #0fc0ff; + background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAAAXNSR0IArs4c6QAABiFJREFUaEPFmVuMFEUUhv/TM7uwoBGVyG22u7ZnYGG5REETo8RA1BhFIka8ABFf0PCgDxhFEpCLqAlE1OiTiSj4gFGjD0QBETQaEqPRICALSHdPV+8YQQJBA+wuO1PHdMNcWGame2ZWqMfuc/nq1KlT1acJAzhShjFVAUsYdL8G3HjRdA7gHwna5uahLR91dnaeb9QlNWrA1+/o6GjuPnv2DQ30LICKNhk4qLF63PK8g434rejATJhjKa6m9WazOzOZzKlKTmYAcc8QnxEwJwqIAk5STpvpZJwD1eTHjR43PKflhtkZ2+ovVxbaTJiTSVM/gzCYGIebu4fc1nmi80w5J0nDWA7Qq1GACzLMR3pV7pZMJtNdTs/UzelE6msAQ0BYb7vuS6VyZaGTungGhPfygkRYZ7nusv4OEonEDc2xuEfA0JqgATBhieO6b/fXE0IM1pgPECgVvGP+x/bksFDo1JhUguPZI8FMAz0+zzFtSjqd9p8VRlJvew7E79QKHNgEDjrSndRfNyXEGmasLK4KttmeOysU2hdIGm0vA/xKUZh32VLeW6psCrGMmO+uB5qIeEh398P7jx8/m9cP9pGm9vtpmQ9WjHDzUSkPRYJOpVKDuK9vP0Dj8goMfsSR8ot6IKPoJI22XUBpEHitLWUx6heNVC15pmHMItCXBYeKPUZsLlFWVYNQsVg2nU7v82XaW1tHZ4lGhUEztOlEKOQ4A/b5XHZyuc0aWqdNIbYSY3aY00veM/9te3KE/ywlxGpmrKpJP8h5ftCR8qtyeqHQY3XdVNAO5vMskvMGoRWrT9Ke90QlX6HQF6N16Y4OI28Ampn/jatcxx+ZzJ8NQScSiZZBWvzJwAhhJoCKUQhkaoVmnAZoJcC9WowOH02nf6gWl0iRLpQk3ZwOym0n0DVVg10rNAAF7Ig1xedYltUbtpCRoZO6Po1J+z7S6VcHdLCIClusLnfBgED7NVv1ZX8lYGKYwbrSo8Qogxc4Um5pOD1Mo20DgZ+PBFxPTpcYJuBUljDRdd1jdW/EcYnEmKwWSxNR05WADnwo2mB3pV+oGzopxDowlkYGbjDSF9ILpwd1D2mtdB2uuhEv3D+yfwG4/opCB5WVnrZk+v1yfqtCJ3X9TpC2pybggYj0BYcf29KdXwe0WArCuqsCzSxtT4qq0GareStIXXo3JjxGwNSrAh0crMFFq3jYEJ9wpPygkB6mYZwg0PCaAcsp1Hm4RPFtS5eK0LpxvqayVs3DlYIO7r0K8xUhlufRGKNrupLmFQcImsEZBhWaOxq4y5ZyRvXqIcSnYDwaZdkukRkgaGqK32RZ1on+/qt/buliFRFWXxXokonXBJ3S22Yz8darAc2sdjqed1/NddpvnMQUHwPRdTWBD0R6EBbbrltoGJX6D71PJ3V9E0h76kpCMzirNTWNLpfPPkcodNDXi6m9QLGqhE6gwUgzaKMj04sq+QmF9hVrjnYj0IwejmvtjuN4DUEbhjEqztgLoqCXEToagQavsKV8rZqPSJH2DaSEmMGMXZHSpE5oZnzneK7fL8w1DJ1sTU6CltvEwPj/88OWwRYx77Y9b3HD0KYuvqUL/Y5oo85I542TooesrnTF8yE0PUwh5hGj6tfxZTNpEBqKvUE9QyfW9bnV3t5+bV9P7yECxuTBFGOvRn5v5eJgTLzsUhUFmuGCcLJoBiNL/ZT7bVFYiWrrnTSM9QC9WBSmzy2ZnluqI4QYGQcWM/O8Qi+7EjSjB4xtTNqHjuf4HVHO20q1tiZZi/k/j1r8Z8zcRxyfanfZv/dnrJgeYw1jQo6xr+SOfY5j2oRq9VMIIWLA7QSMslz3raDGG8ZMJhoPpR1QmvrFdd2eSoFKGm0rAF5bfM97bCnvKp2c/64idFLXd4C0woWFwMstKV+PthPrk/L/R/aeOfcbCBOKq8uLLCk3llos/0tON+8hUt+U5O1Rao5PjtIcrA+3qOWvDEC78wFlIO1I1wyFTuptC0G8uWSZHrCl3N4oUFT9NiE2a4yFQW6DLUfKsaHQU0aMGHq2pWULM98Bpncdzy35yxXVdf1yftXK9vS8CUVjtBjWHHXdn0qt/Qf/x1JblU8EiAAAAABJRU5ErkJggg==); + background-repeat: no-repeat; + background-position: center; + background-size: 30px; + filter: invert(1);"> + </bug-report> + </div> </div> + </div> + <footer class="text-light pt-2 vlabs-footer d-flex flex-column"> + <div class="row px-5 mx-0"> + <div class="col d-flex flex-column"> + <span class="font-weight-bold vlabs-footer-sect-name pb-2 mb-3">Community Links</span> + <a href="https://www.sakshat.ac.in/" class="text-light">Sakshat Portal</a> + <a href="http://outreach.vlabs.ac.in/" class="text-light">Outreach Portal</a> + <a href="https://vlab.co.in/faq" class="text-light">FAQ: Virtual Labs</a> + </div> + <div class="col d-flex flex-column"> + <span class="font-weight-bold vlabs-footer-sect-name pb-2 mb-3">Contact Us</span> + <span> Phone: General Information: 011-26582050 </span> + <span> Email: support@vlabs.ac.in </span> + </div> + <div class="col d-flex flex-column"> + <span class="font-weight-bold vlabs-footer-sect-name pb-2 mb-3">Follow Us</span> + <div class="social-links"> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #55acee;" href="https://twitter.com/TheVirtualLabs"> + <i class="fab fa-twitter"></i> + </a> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #3b5998;" href="https://www.facebook.com/Virtual-Labs-IIT-Delhi-301510159983871/"> + <i class="fab fa-facebook"></i> + </a> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #e52d27;" href="https://www.youtube.com/watch?v=asxRaOgk6a0"> + <i class="fab fa-youtube"></i> + </a> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #2867B2;" href="https://in.linkedin.com/in/virtual-labs-008ba9136"> + <i class="fab fa-linkedin"></i> + </a> + </div> + </div> + </div> + <div class="m-0 py-2 text-center" style="font-family: "Open Sans", sans-serif; background: #212121;"> + <a class="text-primary font-weight-bold" href="https://www.gnu.org/licenses/agpl-3.0.en.html"> AGPL 3.0 </a> + & + <a class="text-primary font-weight-bold" href="https://creativecommons.org/licenses/by-nc-sa/4.0/"> Creative Commons (CC BY-NC-SA 4.0) </a> + </div> + </footer> + <script src="./assets/js/toggleSidebar.js"></script> + <script src="./assets/js/event-handler.js"></script> + + + <script> + if ('serviceWorker' in navigator) { + window.addEventListener('load', () => { + navigator.serviceWorker.register("sw.js"); + }); + } + </script> + + +<script type="module" src="https://virtual-labs.github.io/svc-bug-report/client/src/bug-report.js"></script><script type="module" src="plugins/svc-rating/index.js"></script><script type="module" src="plugins/svc-rating/config.js"></script><script type="module" src="https://apis.google.com/js/api.js"></script></body></html> \ No newline at end of file diff --git a/contributors.md b/contributors.md new file mode 100644 index 0000000..5966965 --- /dev/null +++ b/contributors.md @@ -0,0 +1,14 @@ +## Subject Matter Expert +<b>Name | <b> **Prof. C.S.Kumar** +:--|:--| +<b> Institute | <b> **Indian Institute of Technology Kharagpur** +<b> Email id| <b> **kumar@mech.iitkgp.ac.in** +<b> Department | **Department of Mechanical Engineering ** +<b>Webpage| <b> [http://facweb.iitkgp.ac.in/~cskumar/](http://facweb.iitkgp.ac.in/~cskumar/) + +## Contributors List + +SrNo | Name | Developer and Integration Engineer | Department| Institute +:--|:--|:--|:--|:--| +1 | **Sukriti Dhang** | Developer | Department of Mechanical Engineering | IIT Kharagpur | +2 | **Prakriti Dhang** | Integration | Department of Mechanical Engineering | IIT Kharagpur | \ No newline at end of file diff --git a/eslint.log b/eslint.log new file mode 100644 index 0000000..64e8af8 --- /dev/null +++ b/eslint.log @@ -0,0 +1,1018 @@ + +/home/runner/work/exp-monostable-multivibrator-iitkgp/exp-monostable-multivibrator-iitkgp/experiment/simulation/js/canvasjs.min.js + 82:20 warning 'd' is already defined no-redeclare + 122:13 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 186:59 warning 'G_vmlCanvasManager' is not defined no-undef + 199:70 warning 'g' is already defined no-redeclare + 199:114 warning 'h' is already defined no-redeclare + 211:21 warning Read-only global 'event' should not be modified no-global-assign + 258:10 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 449:22 warning 'this.label' is assigned to itself no-self-assign + 613:13 warning 'g' is already defined no-redeclare + 613:92 warning 'h' is already defined no-redeclare + 643:32 warning 'g' is already defined no-redeclare + 677:19 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 827:44 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 965:99 warning Duplicate key 'cursor' no-dupe-keys + 1099:27 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 1102:27 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 1228:13 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 1240:48 warning 'c' is defined but never used no-unused-vars + 1240:51 warning 'b' is defined but never used no-unused-vars + 1285:29 warning Empty block statement no-empty + 1323:156 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 1326:49 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 1354:28 warning 'f' is already defined no-redeclare + 1354:35 warning 'e' is already defined no-redeclare + 1378:45 warning 'e' is already defined no-redeclare + 1391:25 warning 'd' is already defined no-redeclare + 1418:17 warning 'g' is already defined no-redeclare + 1420:28 warning 'l' is already defined no-redeclare + 1420:35 warning 'm' is already defined no-redeclare + 1445:137 warning 'g' is already defined no-redeclare + 1445:193 warning 'h' is already defined no-redeclare + 1448:17 warning 'f' is already defined no-redeclare + 1449:49 warning 'd' is already defined no-redeclare + 1449:105 warning 'e' is already defined no-redeclare + 1449:459 warning 'b' is already defined no-redeclare + 1458:21 warning 's' is already defined no-redeclare + 1458:78 warning 'z' is already defined no-redeclare + 1458:210 warning 'p' is already defined no-redeclare + 1509:22 warning 'd' is already defined no-redeclare + 1515:47 warning 'q' is already defined no-redeclare + 1523:21 warning 'm' is already defined no-redeclare + 1528:38 warning 'r' is already defined no-redeclare + 1571:22 warning 'd' is already defined no-redeclare + 1576:73 warning 'q' is already defined no-redeclare + 1585:21 warning 'm' is already defined no-redeclare + 1590:38 warning 'r' is already defined no-redeclare + 1647:22 warning 'e' is already defined no-redeclare + 1652:73 warning 'k' is already defined no-redeclare + 1661:21 warning 'l' is already defined no-redeclare + 1724:114 warning 'e' is already defined no-redeclare + 1740:21 warning 'k' is already defined no-redeclare + 1742:69 warning 'e' is already defined no-redeclare + 1771:210 warning 'g' is already defined no-redeclare + 1824:70 warning 'g' is already defined no-redeclare + 1842:69 warning 'g' is already defined no-redeclare + 1875:200 warning 'e' is already defined no-redeclare + 1891:21 warning 'k' is already defined no-redeclare + 1925:70 warning 'g' is already defined no-redeclare + 1978:210 warning 'g' is already defined no-redeclare + 2044:43 warning 'g' is already defined no-redeclare + 2048:21 warning 'g' is already defined no-redeclare + 2057:33 warning 'A' is already defined no-redeclare + 2128:85 warning 'g' is already defined no-redeclare + 2132:21 warning 'g' is already defined no-redeclare + 2141:51 warning 'v' is already defined no-redeclare + 2191:85 warning 'g' is already defined no-redeclare + 2195:21 warning 'g' is already defined no-redeclare + 2204:77 warning 'H' is already defined no-redeclare + 2253:30 warning 'f' is already defined no-redeclare + 2272:25 warning 'd' is already defined no-redeclare + 2278:77 warning 'v' is already defined no-redeclare + 2282:33 warning 'k' is already defined no-redeclare + 2284:39 warning 'I' is already defined no-redeclare + 2303:92 warning 'markerColor' is not defined no-undef + 2303:180 warning 'markerColor' is not defined no-undef + 2303:206 warning 'markerColor' is not defined no-undef + 2338:315 warning 't' is already defined no-redeclare + 2345:30 warning 'e' is already defined no-redeclare + 2365:25 warning 'd' is already defined no-redeclare + 2371:77 warning 'H' is already defined no-redeclare + 2374:38 warning 'k' is already defined no-redeclare + 2376:39 warning 'S' is already defined no-redeclare + 2397:178 warning 'markerColor' is not defined no-undef + 2398:44 warning 'markerColor' is not defined no-undef + 2398:70 warning 'markerColor' is not defined no-undef + 2417:127 warning 'e' is already defined no-redeclare + 2417:157 warning 'b' is already defined no-redeclare + 2426:97 warning 'e' is already defined no-redeclare + 2428:40 warning 'd' is already defined no-redeclare + 2428:120 warning 'n' is already defined no-redeclare + 2436:33 warning 'r' is already defined no-redeclare + 2436:145 warning 'r' is already defined no-redeclare + 2456:127 warning 'e' is already defined no-redeclare + 2456:157 warning 'b' is already defined no-redeclare + 2471:44 warning 'e' is already defined no-redeclare + 2494:35 warning 'd' is already defined no-redeclare + 2494:79 warning 'e' is already defined no-redeclare + 2514:77 warning 'e' is already defined no-redeclare + 2523:77 warning 'd' is already defined no-redeclare + 2544:59 warning 'e' is already defined no-redeclare + 2563:69 warning 'e' is already defined no-redeclare + 2569:136 warning 'b' is already defined no-redeclare + 2571:44 warning 'd' is already defined no-redeclare + 2593:70 warning 'e' is already defined no-redeclare + 2681:101 warning 'e' is already defined no-redeclare + 2685:29 warning 'e' is already defined no-redeclare + 2694:85 warning 'x' is already defined no-redeclare + 2794:85 warning 'e' is already defined no-redeclare + 2798:21 warning 'e' is already defined no-redeclare + 2805:77 warning 'z' is already defined no-redeclare + 2869:69 warning 'm' is already defined no-redeclare + 2956:24 warning 'c' is already defined no-redeclare + 2982:35 warning 'q' is already defined no-redeclare + 3021:48 warning 'b' is already defined no-redeclare + 3037:36 warning 'a' is already defined no-redeclare + 3038:29 warning 'h' is already defined no-redeclare + 3042:40 warning 'B' is already defined no-redeclare + 3047:37 warning 'C' is already defined no-redeclare + 3083:37 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 3218:17 warning 'f' is already defined no-redeclare + 3268:17 warning 'f' is already defined no-redeclare + 3294:386 warning 'p' is already defined no-redeclare + 3294:453 warning 'l' is already defined no-redeclare + 3299:46 warning 'l' is already defined no-redeclare + 3299:168 warning 'p' is already defined no-redeclare + 3299:420 warning 'r' is already defined no-redeclare + 3300:150 warning 't' is already defined no-redeclare + 3300:178 warning 'u' is already defined no-redeclare + 3300:359 warning 's' is already defined no-redeclare + 3300:582 warning 'p' is already defined no-redeclare + 3301:39 warning 'l' is already defined no-redeclare + 3423:21 warning 'd' is already defined no-redeclare + 3469:84 warning 'r' is already defined no-redeclare + 3528:26 warning 'b' is already defined no-redeclare + 3544:69 warning 'f' is already defined no-redeclare + 3544:77 warning 'b' is already defined no-redeclare + 3629:80 warning 'e' is already defined no-redeclare + 3649:49 warning 'e' is already defined no-redeclare + 3714:34 warning 'j' is not defined no-undef + 3714:45 warning 'j' is not defined no-undef + 3714:59 warning 'j' is not defined no-undef + 3715:43 warning 'j' is not defined no-undef + 3718:34 warning 'j' is not defined no-undef + 3718:45 warning 'j' is not defined no-undef + 3718:59 warning 'j' is not defined no-undef + 3719:43 warning 'j' is not defined no-undef + 3722:34 warning 'j' is not defined no-undef + 3722:45 warning 'j' is not defined no-undef + 3722:59 warning 'j' is not defined no-undef + 3723:43 warning 'j' is not defined no-undef + 3778:34 warning 'j' is not defined no-undef + 3778:45 warning 'j' is not defined no-undef + 3778:59 warning 'j' is not defined no-undef + 3779:43 warning 'j' is not defined no-undef + 3782:34 warning 'j' is not defined no-undef + 3782:45 warning 'j' is not defined no-undef + 3782:59 warning 'j' is not defined no-undef + 3783:43 warning 'j' is not defined no-undef + 3786:34 warning 'j' is not defined no-undef + 3786:45 warning 'j' is not defined no-undef + 3786:59 warning 'j' is not defined no-undef + 3787:43 warning 'j' is not defined no-undef + 3836:25 warning 'e' is already defined no-redeclare + 3877:42 warning 'd' is already defined no-redeclare + 3979:16 warning 'c' is assigned a value but never used no-unused-vars + 4008:13 warning 'a' is already defined no-redeclare + 4077:68 warning 'a' is already defined no-redeclare + 4202:21 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 4255:33 warning Empty block statement no-empty + 4286:21 warning 'd' is already defined no-redeclare + 4309:30 warning 'h' is already defined no-redeclare + 4367:18 warning 'i' is not defined no-undef + 4367:29 warning 'i' is not defined no-undef + 4367:54 warning 'i' is not defined no-undef + 4368:36 warning 'i' is not defined no-undef + 4369:44 warning 'i' is not defined no-undef + 4378:82 warning 'h' is already defined no-redeclare + 4378:116 warning 'g' is already defined no-redeclare + 4384:25 warning 'q' is already defined no-redeclare + 4404:25 warning Empty block statement no-empty + 4409:19 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 4411:24 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 4590:22 warning 'c' is defined but never used no-unused-vars + 4654:63 warning 'b' is already defined no-redeclare + 4734:48 warning 'c' is already defined no-redeclare + 4746:53 warning 'h' is already defined no-redeclare + 4746:69 warning 'h' is already defined no-redeclare + 4761:22 warning 'n' is already defined no-redeclare + 4846:57 warning 'd' is already defined no-redeclare + 4939:32 warning 'b' is defined but never used no-unused-vars + 5063:25 warning Empty block statement no-empty + 5067:13 warning 'l' is already defined no-redeclare + 5169:5 warning 'G_vmlCanvasManager' is not defined no-undef + 5170:5 warning Read-only global 'CanvasRenderingContext2D' should not be modified no-global-assign + 5171:5 warning Read-only global 'CanvasGradient' should not be modified no-global-assign + 5172:5 warning Read-only global 'CanvasPattern' should not be modified no-global-assign + 5173:5 warning Read-only global 'DOMException' should not be modified no-global-assign + +/home/runner/work/exp-monostable-multivibrator-iitkgp/exp-monostable-multivibrator-iitkgp/experiment/simulation/js/cktconnection_monostable.js + 1:1 warning 'jsPlumb' is not defined no-undef + 6:9 warning 'addDisc' is assigned a value but never used no-unused-vars + 8:17 warning 'e' is assigned a value but never used no-unused-vars + 15:9 warning 'reset' is assigned a value but never used no-unused-vars + 28:48 warning 'e' is defined but never used no-unused-vars + 28:51 warning 'ui' is defined but never used no-unused-vars + 30:21 warning 'jsPlumb' is not defined no-undef + 88:16 warning 'jsPlumb' is not defined no-undef + 97:13 warning 'e1' is assigned a value but never used no-unused-vars + 98:4 warning 'e2' is assigned a value but never used no-unused-vars + 99:13 warning 'e3' is assigned a value but never used no-unused-vars + 100:13 warning 'e4' is assigned a value but never used no-unused-vars + 101:13 warning 'e5' is assigned a value but never used no-unused-vars + 102:13 warning 'e6' is assigned a value but never used no-unused-vars + 103:13 warning 'e7' is assigned a value but never used no-unused-vars + 104:13 warning 'e8' is assigned a value but never used no-unused-vars + 105:13 warning 'e9' is assigned a value but never used no-unused-vars + 106:4 warning 'e10' is assigned a value but never used no-unused-vars + 107:4 warning 'e11' is assigned a value but never used no-unused-vars + 108:13 warning 'e12' is assigned a value but never used no-unused-vars + 109:4 warning 'e13' is assigned a value but never used no-unused-vars + 110:4 warning 'e14' is assigned a value but never used no-unused-vars + 111:4 warning 'e15' is assigned a value but never used no-unused-vars + 112:4 warning 'e16' is assigned a value but never used no-unused-vars + 113:4 warning 'e17' is assigned a value but never used no-unused-vars + 115:13 warning 'clearBtn' is assigned a value but never used no-unused-vars + 115:24 warning 'jsPlumb' is not defined no-undef + 116:13 warning 'addBtn' is assigned a value but never used no-unused-vars + 116:22 warning 'jsPlumb' is not defined no-undef + 119:46 warning 'originalEvent' is defined but never used no-unused-vars + 139:5 warning 'jsPlumb' is not defined no-undef + 158:2 warning Mixed spaces and tabs no-mixed-spaces-and-tabs + 170:2 warning Mixed spaces and tabs no-mixed-spaces-and-tabs + 401:13 warning 'count' is assigned a value but never used no-unused-vars + 628:2 warning Mixed spaces and tabs no-mixed-spaces-and-tabs + 630:1 warning Mixed spaces and tabs no-mixed-spaces-and-tabs + 631:1 warning Mixed spaces and tabs no-mixed-spaces-and-tabs + 645:10 warning 'deleteconnection' is defined but never used no-unused-vars + +/home/runner/work/exp-monostable-multivibrator-iitkgp/exp-monostable-multivibrator-iitkgp/experiment/simulation/js/graph.ob.js + 1:745 warning 'b' is already defined no-redeclare + +/home/runner/work/exp-monostable-multivibrator-iitkgp/exp-monostable-multivibrator-iitkgp/experiment/simulation/js/graph_use.ob.js + 1:103 warning 'drawgraph' is defined but never used no-unused-vars + 1:163 warning 'CanvasJS' is not defined no-undef + +/home/runner/work/exp-monostable-multivibrator-iitkgp/exp-monostable-multivibrator-iitkgp/experiment/simulation/js/jquery.knob.min.js + 2:41 warning 'define' is not defined no-undef + 3:9 warning 'define' is not defined no-undef + 5:11 warning 'jQuery' is not defined no-undef + 94:17 warning 'G_vmlCanvasManager' is not defined no-undef + 181:44 warning 'e' is defined but never used no-unused-vars + 232:32 warning 'this.$c[0].width' is assigned to itself no-self-assign + 244:33 warning 'e' is defined but never used no-unused-vars + 246:30 warning 'e' is defined but never used no-unused-vars + 248:33 warning 'e' is defined but never used no-unused-vars + 248:36 warning 't' is defined but never used no-unused-vars + 348:40 warning 'e' is defined but never used no-unused-vars + +/home/runner/work/exp-monostable-multivibrator-iitkgp/exp-monostable-multivibrator-iitkgp/experiment/simulation/js/jquery_files/jquery-1.7.1.min.js + 2:820 warning Empty block statement no-empty + 2:877 warning Empty block statement no-empty + 2:4720 warning 'b' is defined but never used no-unused-vars + 2:5126 warning 'd' is defined but never used no-unused-vars + 2:5302 warning 'd' is defined but never used no-unused-vars + 2:6027 warning Empty block statement no-empty + 2:6428 warning Unnecessary escape character: \- no-useless-escape + 2:6523 warning Unnecessary escape character: \/ no-useless-escape + 2:6608 warning Unnecessary escape character: \- no-useless-escape + 2:6658 warning Unnecessary escape character: \/ no-useless-escape + 2:6697 warning Unnecessary escape character: \/ no-useless-escape + 2:10196 warning Empty block statement no-empty + 2:11255 warning 'ActiveXObject' is not defined no-undef + 2:14574 warning 'i' is defined but never used no-unused-vars + 2:16984 warning 'h' is assigned a value but never used no-unused-vars + 2:17279 warning 'm' is defined but never used no-unused-vars + 2:17312 warning 'r' is assigned a value but never used no-unused-vars + 2:19399 warning 'g' is defined but never used no-unused-vars + 2:21309 warning Redundant double negation no-extra-boolean-cast + 2:21836 warning Redundant double negation no-extra-boolean-cast + 2:24565 warning 'c' is assigned a value but never used no-unused-vars + 2:24675 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 2:25416 warning Empty block statement no-empty + 2:26513 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 2:26963 warning Redundant double negation no-extra-boolean-cast + 2:31862 warning Unnecessary escape character: \. no-useless-escape + 2:31999 warning Unnecessary escape character: \- no-useless-escape + 2:32015 warning Unnecessary escape character: \- no-useless-escape + 3:56 warning 'q' is defined but never used no-unused-vars + 3:3638 warning 't' is defined but never used no-unused-vars + 3:7367 warning 'g' is assigned a value but never used no-unused-vars + 3:11980 warning Unnecessary escape character: \[ no-useless-escape + 3:12006 warning Unnecessary escape character: \[ no-useless-escape + 3:12031 warning Unnecessary escape character: \[ no-useless-escape + 3:13787 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 3:15016 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 3:15136 warning Unnecessary escape character: \- no-useless-escape + 3:15177 warning Unnecessary escape character: \- no-useless-escape + 3:15227 warning Unnecessary escape character: \- no-useless-escape + 3:15277 warning Unnecessary escape character: \- no-useless-escape + 3:15341 warning Unnecessary escape character: \- no-useless-escape + 3:15388 warning Unnecessary escape character: \* no-useless-escape + 3:15390 warning Unnecessary escape character: \- no-useless-escape + 3:15460 warning Unnecessary escape character: \- no-useless-escape + 3:15473 warning Unnecessary escape character: \- no-useless-escape + 3:15491 warning Unnecessary escape character: \- no-useless-escape + 3:15572 warning Unnecessary escape character: \- no-useless-escape + 3:15609 warning Unnecessary escape character: \- no-useless-escape + 3:15639 warning Unnecessary escape character: \) no-useless-escape + 3:15648 warning Unnecessary escape character: \( no-useless-escape + 3:15650 warning Unnecessary escape character: \) no-useless-escape + 3:15970 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 3:17350 warning 'b' is defined but never used no-unused-vars + 3:17505 warning Unnecessary escape character: \- no-useless-escape + 3:20157 warning 'h' is defined but never used no-unused-vars + 3:20213 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 3:20288 warning Expected a 'break' statement before 'case' no-fallthrough + 3:20305 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 3:21442 warning Unnecessary escape character: \[ no-useless-escape + 3:21454 warning Unnecessary escape character: \( no-useless-escape + 3:23990 warning Unnecessary escape character: \- no-useless-escape + 3:24003 warning Unnecessary escape character: \- no-useless-escape + 3:24412 warning Empty block statement no-empty + 3:24694 warning Empty block statement no-empty + 3:25075 warning Unnecessary escape character: \= no-useless-escape + 3:25256 warning Empty block statement no-empty + 3:26114 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 3:26509 warning Unnecessary escape character: \[ no-useless-escape + 3:26511 warning Unnecessary escape character: \. no-useless-escape + 3:29597 warning 'd' is defined but never used no-unused-vars + 3:30269 warning Unnecessary escape character: \- no-useless-escape + 3:30271 warning Unnecessary escape character: \- no-useless-escape + 4:5068 warning Unnecessary escape character: \- no-useless-escape + 4:5076 warning Unnecessary escape character: \- no-useless-escape + 4:6100 warning Empty block statement no-empty + 4:8493 warning Unnecessary escape character: \- no-useless-escape + 4:8505 warning Unnecessary escape character: \- no-useless-escape + 4:8697 warning Unnecessary escape character: \+ no-useless-escape + 4:8699 warning Unnecessary escape character: \. no-useless-escape + 4:8701 warning Unnecessary escape character: \- no-useless-escape + 4:8717 warning Unnecessary escape character: \/ no-useless-escape + 4:9799 warning 'c' is defined but never used no-unused-vars + 4:11116 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 4:11178 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 4:12065 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 4:14424 warning Unnecessary escape character: \= no-useless-escape + 4:16789 warning Empty block statement no-empty + 4:17420 warning Unnecessary escape character: \- no-useless-escape + 4:17432 warning Unnecessary escape character: \- no-useless-escape + 4:24520 warning Empty block statement no-empty + 4:25630 warning 'e' is assigned a value but never used no-unused-vars + 4:28559 warning 'define' is not defined no-undef + 4:28571 warning 'define' is not defined no-undef + 4:28590 warning 'define' is not defined no-undef + +/home/runner/work/exp-monostable-multivibrator-iitkgp/exp-monostable-multivibrator-iitkgp/experiment/simulation/js/jquery_files/jquery.jqplot.min.js + 266:18 warning 'ac' is already defined no-redeclare + 273:30 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 331:82 warning 'ab' is already defined no-redeclare + 405:26 warning 'ac' is already defined no-redeclare + 445:21 warning 'ad' is assigned a value but never used no-unused-vars + 448:26 warning 'am' is already defined no-redeclare + 463:26 warning 'am' is already defined no-redeclare + 483:66 warning 'am' is already defined no-redeclare + 488:26 warning 'ak' is already defined no-redeclare + 490:181 warning 'ak' is already defined no-redeclare + 490:376 warning 'ak' is already defined no-redeclare + 490:660 warning 'am' is already defined no-redeclare + 490:668 warning 'aj' is already defined no-redeclare + 490:1100 warning 'am' is already defined no-redeclare + 490:1216 warning 'am' is already defined no-redeclare + 490:1909 warning 'ao' is already defined no-redeclare + 490:2572 warning 'ao' is already defined no-redeclare + 490:2667 warning 'am' is already defined no-redeclare + 495:344 warning 'ao' is already defined no-redeclare + 495:352 warning 'ak' is already defined no-redeclare + 495:595 warning 'am' is already defined no-redeclare + 495:788 warning 'am' is already defined no-redeclare + 495:1140 warning 'am' is already defined no-redeclare + 495:1335 warning 'am' is already defined no-redeclare + 495:1607 warning 'ao' is already defined no-redeclare + 495:1615 warning 'ak' is already defined no-redeclare + 495:2036 warning 'ao' is already defined no-redeclare + 495:2044 warning 'ak' is already defined no-redeclare + 495:2161 warning 'ao' is already defined no-redeclare + 495:2169 warning 'ak' is already defined no-redeclare + 495:3763 warning 'ai' is already defined no-redeclare + 495:4211 warning 'ao' is defined but never used no-unused-vars + 495:4215 warning 'ap' is defined but never used no-unused-vars + 495:4219 warning 'af' is defined but never used no-unused-vars + 495:4223 warning 'am' is defined but never used no-unused-vars + 495:4608 warning 'ai' is already defined no-redeclare + 495:4998 warning 'am' is assigned a value but never used no-unused-vars + 495:5470 warning 'ai' is already defined no-redeclare + 495:6228 warning 'al' is already defined no-redeclare + 495:6626 warning 'al' is already defined no-redeclare + 495:7308 warning 'al' is already defined no-redeclare + 495:7805 warning 'an' is assigned a value but never used no-unused-vars + 495:7840 warning 'al' is already defined no-redeclare + 495:7881 warning 'ap' is already defined no-redeclare + 495:8079 warning 'ak' is already defined no-redeclare + 495:9182 warning 'ak' is already defined no-redeclare + 495:9372 warning 'ak' is already defined no-redeclare + 495:9613 warning 'al' is already defined no-redeclare + 495:9621 warning 'aj' is already defined no-redeclare + 495:9655 warning 'ag' is already defined no-redeclare + 495:9671 warning 'ai' is already defined no-redeclare + 495:10027 warning 'al' is already defined no-redeclare + 495:10144 warning 'al' is already defined no-redeclare + 495:11566 warning 'ai' is defined but never used no-unused-vars + 495:13574 warning 'au' is already defined no-redeclare + 496:2290 warning 'aB' is already defined no-redeclare + 496:2298 warning 'ay' is already defined no-redeclare + 496:2476 warning 'aB' is already defined no-redeclare + 496:2484 warning 'ay' is already defined no-redeclare + 496:2871 warning 'aB' is already defined no-redeclare + 496:2879 warning 'ay' is already defined no-redeclare + 496:2977 warning 'aB' is already defined no-redeclare + 496:2985 warning 'ay' is already defined no-redeclare + 496:4177 warning 'aj' is already defined no-redeclare + 496:4293 warning 'am' is already defined no-redeclare + 496:6014 warning 'al' is defined but never used no-unused-vars + 496:6022 warning 'aG' is defined but never used no-unused-vars + 496:8730 warning 'aO' is already defined no-redeclare + 496:9145 warning Unexpected lexical declaration in case block no-case-declarations + 496:9145 warning Move function declaration to function body root no-inner-declarations + 496:9937 warning 'aO' is already defined no-redeclare + 496:9959 warning 'aA' is already defined no-redeclare + 496:10446 warning 'aO' is already defined no-redeclare + 496:10824 warning 'ao' is already defined no-redeclare + 496:11053 warning 'ao' is already defined no-redeclare + 500:26 warning 'aO' is already defined no-redeclare + 502:33 warning 'ao' is already defined no-redeclare + 502:281 warning 'ao' is already defined no-redeclare + 502:510 warning 'ao' is already defined no-redeclare + 502:2135 warning 'af' is already defined no-redeclare + 502:4928 warning 'ak' is defined but never used no-unused-vars + 502:5490 warning 'ai' is defined but never used no-unused-vars + 502:6475 warning 'af' is already defined no-redeclare + 502:6517 warning 'ab' is already defined no-redeclare + 502:6549 warning 'ah' is already defined no-redeclare + 502:6586 warning 'ad' is already defined no-redeclare + 511:5175 warning 'ab' is defined but never used no-unused-vars + 511:5179 warning 'ac' is defined but never used no-unused-vars + 511:10928 warning 'ae' is already defined no-redeclare + 511:11796 warning 'ae' is already defined no-redeclare + 511:12676 warning 'ae' is already defined no-redeclare + 513:37 warning 'ae' is already defined no-redeclare + 522:18 warning 'aq' is already defined no-redeclare + 522:44 warning 'ab' is already defined no-redeclare + 523:13 warning 'au' is already defined no-redeclare + 526:240 warning 'an' is already defined no-redeclare + 526:274 warning 'ah' is already defined no-redeclare + 526:327 warning 'ae' is already defined no-redeclare + 526:1117 warning 'ao' is already defined no-redeclare + 526:2133 warning 'ae' is assigned a value but never used no-unused-vars + 526:3869 warning Unexpected constant condition no-constant-condition + 526:7660 warning 'ao' is defined but never used no-unused-vars + 526:8107 warning 'ap' is already defined no-redeclare + 526:8115 warning 'am' is already defined no-redeclare + 526:8535 warning 'ap' is already defined no-redeclare + 526:8543 warning 'am' is already defined no-redeclare + 526:8734 warning 'ad' is already defined no-redeclare + 526:8770 warning 'aw' is already defined no-redeclare + 526:8794 warning 'ap' is already defined no-redeclare + 526:8802 warning 'am' is already defined no-redeclare + 526:9536 warning 'ap' is already defined no-redeclare + 526:9544 warning 'am' is already defined no-redeclare + 526:9933 warning 'ap' is already defined no-redeclare + 526:9941 warning 'am' is already defined no-redeclare + 526:10069 warning 'ap' is already defined no-redeclare + 526:10077 warning 'am' is already defined no-redeclare + 526:10456 warning 'k' is defined but never used no-unused-vars + 526:10832 warning 'ag' is assigned a value but never used no-unused-vars + 526:11314 warning 'ay' is already defined no-redeclare + 526:12646 warning 'aw' is already defined no-redeclare + 526:12654 warning 'au' is already defined no-redeclare + 526:13111 warning 'aD' is assigned a value but never used no-unused-vars + 526:13280 warning 'ap' is assigned a value but never used no-unused-vars + 526:13293 warning 'ad' is assigned a value but never used no-unused-vars + 526:14781 warning 'aj' is defined but never used no-unused-vars + 526:16134 warning 'ah' is already defined no-redeclare + 526:16142 warning 'ad' is already defined no-redeclare + 526:16306 warning 'ah' is already defined no-redeclare + 526:16314 warning 'ad' is already defined no-redeclare + 526:17313 warning 'ak' is defined but never used no-unused-vars + 526:17400 warning 'ad' is assigned a value but never used no-unused-vars + 526:18150 warning 'ah' is already defined no-redeclare + 526:18322 warning 'ah' is already defined no-redeclare + 526:18330 warning 'ae' is already defined no-redeclare + 526:19305 warning 'av' is defined but never used no-unused-vars + 526:20002 warning 'ad' is assigned a value but never used no-unused-vars + 526:20169 warning 'aw' is already defined no-redeclare + 526:20703 warning 'ai' is assigned a value but never used no-unused-vars + 526:21033 warning 'aw' is already defined no-redeclare + 526:21224 warning 'aB' is already defined no-redeclare + 526:21392 warning 'an' is already defined no-redeclare + 526:21426 warning 'aw' is already defined no-redeclare + 526:22784 warning 'al' is already defined no-redeclare + 526:23562 warning 'ab' is defined but never used no-unused-vars + 526:23566 warning 'ad' is defined but never used no-unused-vars + 526:23570 warning 'ac' is defined but never used no-unused-vars + 526:23588 warning 'ae' is defined but never used no-unused-vars + 526:23592 warning 'ad' is defined but never used no-unused-vars + 526:23596 warning 'ab' is defined but never used no-unused-vars + 526:25308 warning 'jQuery' is not defined no-undef + 526:25526 warning 'jQuery' is not defined no-undef + 526:25934 warning 'jQuery' is not defined no-undef + 526:26386 warning 'jQuery' is not defined no-undef + 526:26723 warning 'jQuery' is not defined no-undef + 526:27739 warning 'ah' is assigned a value but never used no-unused-vars + 526:27751 warning 'ac' is defined but never used no-unused-vars + 526:30348 warning 'ah' is defined but never used no-unused-vars + 526:30368 warning 'aj' is defined but never used no-unused-vars + 526:30372 warning 'ai' is defined but never used no-unused-vars + 526:33377 warning 'au' is assigned a value but never used no-unused-vars + 526:33440 warning 'aU' is already defined no-redeclare + 526:35756 warning 'am' is already defined no-redeclare + 526:36481 warning 'az' is already defined no-redeclare + 526:36541 warning 'aG' is already defined no-redeclare + 526:36608 warning 'am' is already defined no-redeclare + 526:37002 warning 'aF' is already defined no-redeclare + 526:37118 warning Unnecessary escape character: \% no-useless-escape + 526:37810 warning 'aR' is already defined no-redeclare + 526:38020 warning 'aR' is already defined no-redeclare + 526:38653 warning 'aO' is already defined no-redeclare + 526:38670 warning 'aU' is already defined no-redeclare + 526:38882 warning 'aT' is already defined no-redeclare + 526:39266 warning 'aN' is assigned a value but never used no-unused-vars + 526:42774 warning 'ao' is already defined no-redeclare + 526:42808 warning 'aj' is already defined no-redeclare + 526:42854 warning 'ab' is already defined no-redeclare + 526:42929 warning 'aq' is already defined no-redeclare + 526:43536 warning 'at' is already defined no-redeclare + 526:44150 warning 'b' is assigned a value but never used no-unused-vars + 526:44262 warning 'i' is assigned a value but never used no-unused-vars + 526:46925 warning 'aj' is already defined no-redeclare + 526:49007 warning 'ag' is defined but never used no-unused-vars + 526:49011 warning 'ak' is defined but never used no-unused-vars + 526:49489 warning 'ag' is defined but never used no-unused-vars + 526:49493 warning 'ak' is defined but never used no-unused-vars + 526:50047 warning 'ah' is assigned a value but never used no-unused-vars + 526:58479 warning 'ac' is already defined no-redeclare + 526:58567 warning 'ab' is already defined no-redeclare + 526:58655 warning 'ac' is already defined no-redeclare + 526:58674 warning 'ab' is already defined no-redeclare + 526:58742 warning 'ac' is already defined no-redeclare + 526:58761 warning 'ab' is already defined no-redeclare + 526:58903 warning 'ac' is already defined no-redeclare + 526:58922 warning 'ab' is already defined no-redeclare + 526:58996 warning 'ac' is already defined no-redeclare + 526:59084 warning 'ab' is already defined no-redeclare + 526:59158 warning 'ac' is already defined no-redeclare + 526:59176 warning 'ab' is already defined no-redeclare + 526:59249 warning 'ac' is already defined no-redeclare + 526:59267 warning 'ab' is already defined no-redeclare + 526:59407 warning 'ac' is already defined no-redeclare + 526:59426 warning 'ab' is already defined no-redeclare + 526:59563 warning 'ac' is already defined no-redeclare + 526:59610 warning 'ab' is already defined no-redeclare + 526:59698 warning 'ac' is already defined no-redeclare + 526:59786 warning 'ab' is already defined no-redeclare + 526:59907 warning 'ac' is already defined no-redeclare + 526:59955 warning 'ab' is already defined no-redeclare + 526:60022 warning 'ac' is already defined no-redeclare + 526:60070 warning 'ab' is already defined no-redeclare + 526:60211 warning 'ac' is already defined no-redeclare + 526:60259 warning 'ab' is already defined no-redeclare + 526:60332 warning 'ac' is already defined no-redeclare + 526:60420 warning 'ab' is already defined no-redeclare + 526:60521 warning 'ac' is already defined no-redeclare + 526:60568 warning 'ab' is already defined no-redeclare + 526:60642 warning 'ac' is already defined no-redeclare + 526:60689 warning 'ab' is already defined no-redeclare + 526:60830 warning 'ac' is already defined no-redeclare + 526:60849 warning 'ab' is already defined no-redeclare + 526:61006 warning 'ac' is already defined no-redeclare + 526:61203 warning 'ab' is already defined no-redeclare + 526:61418 warning 'ac' is already defined no-redeclare + 526:61632 warning 'ab' is already defined no-redeclare + 526:63564 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 526:64698 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 526:64822 warning 'am' is assigned a value but never used no-unused-vars + 526:64834 warning 'al' is assigned a value but never used no-unused-vars + 526:65779 warning 'ad' is already defined no-redeclare + 526:66234 warning 'aq' is assigned a value but never used no-unused-vars + 526:67066 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 526:67950 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 526:68788 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 526:68900 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 526:69225 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 526:69339 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 526:69363 warning 'ac' is already defined no-redeclare + 526:74661 warning 'aF' is assigned a value but never used no-unused-vars + 526:75208 warning 'aD' is already defined no-redeclare + 526:77541 warning 'aB' is assigned a value but never used no-unused-vars + 526:78303 warning 'ad' is assigned a value but never used no-unused-vars + 526:79914 warning 'ae' is already defined no-redeclare + 526:89127 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 526:90503 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 526:90559 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 526:90609 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 526:90665 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 526:90913 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 526:92733 warning Unnecessary escape character: \/ no-useless-escape + 526:92749 warning Unnecessary escape character: \/ no-useless-escape + 526:92814 warning Unnecessary escape character: \/ no-useless-escape + 526:92830 warning Unnecessary escape character: \/ no-useless-escape + 526:92994 warning Unnecessary escape character: \/ no-useless-escape + 526:93010 warning Unnecessary escape character: \/ no-useless-escape + 526:93089 warning Unnecessary escape character: \/ no-useless-escape + 526:93106 warning Unnecessary escape character: \/ no-useless-escape + 526:93436 warning Unnecessary escape character: \/ no-useless-escape + 526:93453 warning Unnecessary escape character: \/ no-useless-escape + 526:93520 warning 'ah' is already defined no-redeclare + 526:93550 warning Unnecessary escape character: \/ no-useless-escape + 526:93567 warning Unnecessary escape character: \/ no-useless-escape + 526:94308 warning Unnecessary escape character: \: no-useless-escape + 526:94327 warning Unnecessary escape character: \: no-useless-escape + 526:94453 warning 'ad' is already defined no-redeclare + 526:94800 warning Unnecessary escape character: \: no-useless-escape + 526:94812 warning Unnecessary escape character: \: no-useless-escape + 526:94832 warning Unnecessary escape character: \+ no-useless-escape + 526:94834 warning Unnecessary escape character: \- no-useless-escape + 526:94841 warning Unnecessary escape character: \: no-useless-escape + 526:94939 warning 'ad' is already defined no-redeclare + 526:95168 warning Unnecessary escape character: \/ no-useless-escape + 526:95200 warning Unnecessary escape character: \/ no-useless-escape + 526:95430 warning 'aj' is already defined no-redeclare + 532:2305 warning 'al' is already defined no-redeclare + 532:2357 warning 'aB' is already defined no-redeclare + 532:2381 warning 'aE' is already defined no-redeclare + 532:2557 warning 'al' is already defined no-redeclare + 532:2596 warning 'aB' is already defined no-redeclare + 532:2771 warning 'aE' is already defined no-redeclare + 532:3078 warning 'al' is already defined no-redeclare + 532:3117 warning 'aB' is already defined no-redeclare + 532:3588 warning 'aH' is already defined no-redeclare + 532:3850 warning Unnecessary escape character: \' no-useless-escape + 532:4415 warning 'jQuery' is not defined no-undef + 532:4441 warning '$' is not defined no-undef + 532:4467 warning '$' is not defined no-undef + 532:4534 warning '$' is not defined no-undef + 532:4543 warning '$' is not defined no-undef + 532:5086 warning '$' is not defined no-undef + 532:5319 warning '$' is not defined no-undef + 532:5340 warning '$' is not defined no-undef + 532:5470 warning '$' is not defined no-undef + 532:5538 warning '$' is not defined no-undef + 532:5915 warning '$' is not defined no-undef + 532:5936 warning '$' is not defined no-undef + 532:6008 warning '$' is not defined no-undef + 532:6085 warning '$' is not defined no-undef + 532:6130 warning '$' is not defined no-undef + 532:6156 warning '$' is not defined no-undef + 532:6197 warning '$' is not defined no-undef + 532:6237 warning '$' is not defined no-undef + 532:6286 warning '$' is not defined no-undef + 532:6326 warning '$' is not defined no-undef + 532:6338 warning '$' is not defined no-undef + 532:6353 warning '$' is not defined no-undef + 532:6423 warning 'standardSpeed' is defined but never used no-unused-vars + 532:6475 warning '$' is not defined no-undef + 532:6533 warning '$' is not defined no-undef + 532:6579 warning '$' is not defined no-undef + 532:6638 warning '$' is not defined no-undef + 532:6673 warning 'i' is defined but never used no-unused-vars + 532:6676 warning 'j' is defined but never used no-unused-vars + 532:6679 warning 'b' is defined but never used no-unused-vars + 532:6682 warning 'h' is defined but never used no-unused-vars + 532:6766 warning '$' is not defined no-undef + 532:6825 warning '$' is not defined no-undef + 532:6857 warning '$' is not defined no-undef + 532:7024 warning '$' is not defined no-undef + 532:7078 warning '$' is not defined no-undef + 532:7112 warning '$' is not defined no-undef + 532:7459 warning '$' is not defined no-undef + 532:7514 warning '$' is not defined no-undef + 532:7598 warning '$' is not defined no-undef + 532:7843 warning '$' is not defined no-undef + 532:7886 warning '$' is not defined no-undef + 532:7960 warning '$' is not defined no-undef + 532:8334 warning '$' is not defined no-undef + 532:8366 warning '$' is not defined no-undef + +/home/runner/work/exp-monostable-multivibrator-iitkgp/exp-monostable-multivibrator-iitkgp/experiment/simulation/js/jquery_files/jquery.min.js + 8:709 warning Empty block statement no-empty + 8:768 warning Empty block statement no-empty + 8:4809 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 8:5072 warning 'b' is defined but never used no-unused-vars + 8:5372 warning 'd' is defined but never used no-unused-vars + 8:5571 warning 'd' is defined but never used no-unused-vars + 8:5814 warning 'l' is defined but never used no-unused-vars + 8:7906 warning Empty block statement no-empty + 8:8247 warning Unnecessary escape character: \- no-useless-escape + 8:8370 warning Unnecessary escape character: \/ no-useless-escape + 8:8458 warning Unnecessary escape character: \- no-useless-escape + 8:8514 warning Unnecessary escape character: \/ no-useless-escape + 8:8556 warning Unnecessary escape character: \/ no-useless-escape + 8:12501 warning Empty block statement no-empty + 8:13638 warning 'ActiveXObject' is not defined no-undef + 8:19422 warning 'r' is defined but never used no-unused-vars + 8:22869 warning Redundant double negation no-extra-boolean-cast + 8:23536 warning Redundant double negation no-extra-boolean-cast + 8:25727 warning 'e' is defined but never used no-unused-vars + 8:26540 warning 'c' is assigned a value but never used no-unused-vars + 8:26691 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 8:27461 warning Empty block statement no-empty + 8:28741 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 8:35095 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 8:35756 warning 'i' is defined but never used no-unused-vars + 8:36044 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 8:36746 warning 'g' is assigned a value but never used no-unused-vars + 9:1598 warning Empty block statement no-empty + 9:5570 warning 'a' is defined but never used no-unused-vars + 9:5573 warning 'b' is defined but never used no-unused-vars + 9:6136 warning 'a' is defined but never used no-unused-vars + 9:7392 warning 'a' is defined but never used no-unused-vars + 9:7395 warning 'b' is defined but never used no-unused-vars + 9:7545 warning 'a' is defined but never used no-unused-vars + 9:11520 warning Unnecessary escape character: \[ no-useless-escape + 9:11546 warning Unnecessary escape character: \[ no-useless-escape + 9:11571 warning Unnecessary escape character: \[ no-useless-escape + 9:13599 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 9:14800 warning Unnecessary escape character: \- no-useless-escape + 9:14842 warning Unnecessary escape character: \- no-useless-escape + 9:14893 warning Unnecessary escape character: \- no-useless-escape + 9:14944 warning Unnecessary escape character: \- no-useless-escape + 9:15008 warning Unnecessary escape character: \- no-useless-escape + 9:15056 warning Unnecessary escape character: \* no-useless-escape + 9:15058 warning Unnecessary escape character: \- no-useless-escape + 9:15129 warning Unnecessary escape character: \- no-useless-escape + 9:15142 warning Unnecessary escape character: \- no-useless-escape + 9:15160 warning Unnecessary escape character: \- no-useless-escape + 9:15242 warning Unnecessary escape character: \- no-useless-escape + 9:15280 warning Unnecessary escape character: \- no-useless-escape + 9:15310 warning Unnecessary escape character: \) no-useless-escape + 9:15319 warning Unnecessary escape character: \( no-useless-escape + 9:15321 warning Unnecessary escape character: \) no-useless-escape + 9:15680 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 9:17298 warning 'b' is defined but never used no-unused-vars + 9:17467 warning Unnecessary escape character: \- no-useless-escape + 9:20523 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 9:20611 warning Expected a 'break' statement before 'case' no-fallthrough + 9:20629 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 9:21950 warning Unnecessary escape character: \[ no-useless-escape + 9:21962 warning Unnecessary escape character: \( no-useless-escape + 9:25027 warning Unnecessary escape character: \- no-useless-escape + 9:25040 warning Unnecessary escape character: \- no-useless-escape + 9:25496 warning Empty block statement no-empty + 9:25827 warning Empty block statement no-empty + 9:26252 warning Unnecessary escape character: \= no-useless-escape + 9:26456 warning Empty block statement no-empty + 9:27391 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 9:27808 warning Unnecessary escape character: \[ no-useless-escape + 9:27810 warning Unnecessary escape character: \. no-useless-escape + 9:31378 warning 'd' is defined but never used no-unused-vars + 9:31914 warning Unnecessary escape character: \- no-useless-escape + 9:31916 warning Unnecessary escape character: \- no-useless-escape + 10:9 warning Unexpected newline between function and ( of function call no-unexpected-multiline + 10:3073 warning Unnecessary escape character: \- no-useless-escape + 10:3081 warning Unnecessary escape character: \- no-useless-escape + 10:4268 warning Empty block statement no-empty + 10:5845 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 10:6941 warning Unnecessary escape character: \- no-useless-escape + 10:6953 warning Unnecessary escape character: \- no-useless-escape + 10:7169 warning Unnecessary escape character: \+ no-useless-escape + 10:7171 warning Unnecessary escape character: \. no-useless-escape + 10:7173 warning Unnecessary escape character: \- no-useless-escape + 10:7189 warning Unnecessary escape character: \/ no-useless-escape + 10:8393 warning 'c' is defined but never used no-unused-vars + 10:9848 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 10:9916 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 10:10968 warning Expected a conditional expression and instead saw an assignment no-cond-assign + 10:13638 warning Unnecessary escape character: \= no-useless-escape + 10:16258 warning Empty block statement no-empty + 10:17014 warning Unnecessary escape character: \- no-useless-escape + 10:17026 warning Unnecessary escape character: \- no-useless-escape + 10:24134 warning Empty block statement no-empty + 10:25437 warning 'e' is assigned a value but never used no-unused-vars + 10:25979 warning 'g' is defined but never used no-unused-vars + +/home/runner/work/exp-monostable-multivibrator-iitkgp/exp-monostable-multivibrator-iitkgp/experiment/simulation/js/jsplumb1.js + 68:9 warning 'root' is assigned a value but never used no-unused-vars + 130:18 warning 'i' is already defined no-redeclare + 184:18 warning 'i' is already defined no-redeclare + 242:22 warning 'j' is already defined no-redeclare + 264:56 warning 't' is defined but never used no-unused-vars + 279:26 warning 'j' is already defined no-redeclare + 582:9 warning 'exports' is not defined no-undef + 616:1 warning Unnecessary semicolon no-extra-semi + 626:9 warning 'exports' is not defined no-undef + 661:9 warning '_normal' is assigned a value but never used no-unused-vars + 672:9 warning '_lineLength' is assigned a value but never used no-unused-vars + 706:9 warning '_theta' is assigned a value but never used no-unused-vars + 725:9 warning '_intersects' is assigned a value but never used no-unused-vars + 747:9 warning '_encloses' is assigned a value but never used no-unused-vars + 764:9 warning '_pointOnLine' is assigned a value but never used no-unused-vars + 781:9 warning '_perpendicularLineTo' is assigned a value but never used no-unused-vars + 789:1 warning Unnecessary semicolon no-extra-semi + 846:28 warning 'view' is defined but never used no-unused-vars + 846:34 warning 'target' is defined but never used no-unused-vars + 846:42 warning 'pageX' is defined but never used no-unused-vars + 846:49 warning 'pageY' is defined but never used no-unused-vars + 846:56 warning 'screenX' is defined but never used no-unused-vars + 846:65 warning 'screenY' is defined but never used no-unused-vars + 846:74 warning 'clientX' is defined but never used no-unused-vars + 846:83 warning 'clientY' is defined but never used no-unused-vars + 1040:58 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 1082:39 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 1132:9 warning 'touchstart' is assigned a value but never used no-unused-vars + 1132:36 warning 'touchend' is assigned a value but never used no-unused-vars + 1132:59 warning 'touchmove' is assigned a value but never used no-unused-vars + 1137:54 warning Unnecessary escape character: \. no-useless-escape + 1223:73 warning Invalid typeof comparison value valid-typeof + 1286:38 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 1288:51 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 1310:29 warning 'el' is defined but never used no-unused-vars + 1310:33 warning 'event' is defined but never used no-unused-vars + 1310:40 warning 'children' is defined but never used no-unused-vars + 1310:50 warning 'fn' is defined but never used no-unused-vars + 1457:9 warning 'exports' is not defined no-undef + 1490:1 warning Unnecessary semicolon no-extra-semi + 1595:54 warning Unnecessary escape character: \. no-useless-escape + 1719:42 warning 'scope' is defined but never used no-unused-vars + 1727:13 warning 'scroll' is assigned a value but never used no-unused-vars + 1875:13 warning '_addFilter' is assigned a value but never used no-unused-vars + 1876:13 warning '_removeFilter' is assigned a value but never used no-unused-vars + 2091:31 warning Empty block statement no-empty + 2280:42 warning 'scope' is defined but never used no-unused-vars + 2300:56 warning 'drag' is defined but never used no-unused-vars + 2388:13 warning '_getMatchingDroppables' is assigned a value but never used no-unused-vars + 2432:18 warning 'i' is already defined no-redeclare + 2754:40 warning 'spec' is defined but never used no-unused-vars + 2777:38 warning 'spec' is defined but never used no-unused-vars + 2862:9 warning 'exports' is not defined no-undef + 2874:42 warning 'exports' is not defined no-undef + 2915:19 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 3011:26 warning Unnecessary escape character: \. no-useless-escape + 3012:40 warning Unnecessary escape character: \[ no-useless-escape + 3180:36 warning '_protoFn' is defined but never used no-unused-vars + 3188:45 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 3188:83 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 3201:41 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 3201:79 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 3242:42 warning Empty block statement no-empty + 3320:23 warning Empty block statement no-empty + 3488:2 warning Unnecessary semicolon no-extra-semi + 3553:1 warning Unnecessary semicolon no-extra-semi + 3585:9 warning 'eventFilters' is assigned a value but never used no-unused-vars + 3604:9 warning '_each' is assigned a value but never used no-unused-vars + 4583:13 warning '_setDraggable' is assigned a value but never used no-unused-vars + 4807:56 warning 'args' is defined but never used no-unused-vars + 4855:60 warning 'cEl' is assigned a value but never used no-unused-vars + 5481:13 warning '_unmanage' is assigned a value but never used no-unused-vars + 5576:68 warning 'jsPlumbInstance' is assigned a value but never used no-unused-vars + 6146:39 warning 'scope' is defined but never used no-unused-vars + 6751:9 warning 'exports' is not defined no-undef + 6766:1 warning Unnecessary semicolon no-extra-semi + 6882:36 warning 'ignoreAttachedElements' is defined but never used no-unused-vars + 7059:1 warning Unnecessary semicolon no-extra-semi + 7304:41 warning 'doNotRepaint' is defined but never used no-unused-vars + 7309:50 warning 'doNotRepaint' is defined but never used no-unused-vars + 7374:53 warning 'fireEvent' is defined but never used no-unused-vars + 7374:64 warning 'originalEvent' is defined but never used no-unused-vars + 7488:52 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 7534:39 warning 'startParams' is defined but never used no-unused-vars + 8111:17 warning 'elId' is assigned a value but never used no-unused-vars + 8348:1 warning Unnecessary semicolon no-extra-semi + 8865:52 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 8889:52 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 8901:21 warning 'jsPlumb' is not defined no-undef + 8984:1 warning Unnecessary semicolon no-extra-semi + 9709:27 warning 'Biltong' is not defined no-undef + 10061:23 warning 'jsPlumbUtil' is not defined no-undef + 10293:1 warning Unnecessary semicolon no-extra-semi + 10323:53 warning 'x' is defined but never used no-unused-vars + 10323:56 warning 'y' is defined but never used no-unused-vars + 10350:46 warning 'x1' is defined but never used no-unused-vars + 10350:50 warning 'y1' is defined but never used no-unused-vars + 10350:54 warning 'x2' is defined but never used no-unused-vars + 10350:58 warning 'y2' is defined but never used no-unused-vars + 10383:17 warning '_super' is assigned a value but never used no-unused-vars + 10441:46 warning '_' is defined but never used no-unused-vars + 10643:17 warning '_super' is assigned a value but never used no-unused-vars + 10789:17 warning '_super' is assigned a value but never used no-unused-vars + 11112:13 warning 'dumpSegmentsToConsole' is assigned a value but never used no-unused-vars + 11168:48 warning 'anchorPoint' is defined but never used no-unused-vars + 11168:61 warning 'orientation' is defined but never used no-unused-vars + 11168:74 warning 'endpointStyle' is defined but never used no-unused-vars + 11168:89 warning 'connectorPaintStyle' is defined but never used no-unused-vars + 11201:13 warning '_super' is assigned a value but never used no-unused-vars + 11207:76 warning 'connectorPaintStyle' is defined but never used no-unused-vars + 11228:13 warning '_super' is assigned a value but never used no-unused-vars + 11233:76 warning 'connectorPaintStyle' is defined but never used no-unused-vars + 11244:40 warning 'params' is defined but never used no-unused-vars + 11322:48 warning 'orientation' is defined but never used no-unused-vars + 11322:61 warning 'endpointStyle' is defined but never used no-unused-vars + 11322:76 warning 'connectorPaintStyle' is defined but never used no-unused-vars + 11348:40 warning 'd' is defined but never used no-unused-vars + 11348:43 warning 'style' is defined but never used no-unused-vars + 11348:50 warning 'anchor' is defined but never used no-unused-vars + 11391:13 warning '_super' is assigned a value but never used no-unused-vars + 11394:48 warning 'orientation' is defined but never used no-unused-vars + 11394:61 warning 'endpointStyle' is defined but never used no-unused-vars + 11394:76 warning 'connectorPaintStyle' is defined but never used no-unused-vars + 11410:32 warning 'style' is defined but never used no-unused-vars + 11410:39 warning 'anchor' is defined but never used no-unused-vars + 11443:76 warning 'connectorPaintStyle' is defined but never used no-unused-vars + 11472:27 warning 'instance' is defined but never used no-unused-vars + 11472:37 warning 'component' is defined but never used no-unused-vars + 11541:43 warning 'component' is defined but never used no-unused-vars + 11705:17 warning 'jsPlumb' is not defined no-undef + 11812:37 warning 'component' is defined but never used no-unused-vars + 11822:29 warning 'containerExtents' is defined but never used no-unused-vars + 11850:37 warning 'params' is defined but never used no-unused-vars + 11863:42 warning 'currentConnectionPaintStyle' is defined but never used no-unused-vars + 11907:13 warning 'labelWidth' is assigned a value but never used no-unused-vars + 11907:32 warning 'labelHeight' is assigned a value but never used no-unused-vars + 11907:52 warning 'labelText' is assigned a value but never used no-unused-vars + 11907:70 warning 'labelPadding' is assigned a value but never used no-unused-vars + 11997:1 warning Unnecessary semicolon no-extra-semi + 12441:35 warning 'conn' is defined but never used no-unused-vars + 12441:41 warning 'endpointIndex' is defined but never used no-unused-vars + 12445:37 warning 'conn' is defined but never used no-unused-vars + 12445:43 warning 'endpointIndex' is defined but never used no-unused-vars + 12453:56 warning 'jsPlumb' is not defined no-undef + 12489:38 warning '_el' is defined but never used no-unused-vars + 12489:43 warning 'targetGroup' is defined but never used no-unused-vars + 12539:25 warning 'jsPlumbUtil' is not defined no-undef + 12883:1 warning Unnecessary semicolon no-extra-semi + 12899:41 warning 'lastOrientation' is assigned a value but never used no-unused-vars + 12903:13 warning 'loopbackRadius' is assigned a value but never used no-unused-vars + 12904:13 warning 'isLoopbackCurrently' is assigned a value but never used no-unused-vars + 13248:1 warning Unnecessary semicolon no-extra-semi + 13257:13 warning 'curviness' is assigned a value but never used no-unused-vars + 13259:13 warning 'proximityLimit' is assigned a value but never used no-unused-vars + 13262:13 warning 'isLoopbackCurrently' is assigned a value but never used no-unused-vars + 13401:1 warning Unnecessary semicolon no-extra-semi + 13496:13 warning 'clockwise' is assigned a value but never used no-unused-vars + 13596:1 warning Unnecessary semicolon no-extra-semi + 13603:30 warning 'params' is defined but never used no-unused-vars + 13607:46 warning '_' is defined but never used no-unused-vars + 13628:1 warning Unnecessary semicolon no-extra-semi + 14033:35 warning 'style' is defined but never used no-unused-vars + 14056:35 warning 'style' is defined but never used no-unused-vars + 14092:13 warning 'self' is assigned a value but never used no-unused-vars + 14251:1 warning Unnecessary semicolon no-extra-semi + 14444:39 warning 'jsPlumb' is not defined no-undef + 14473:29 warning 'jsPlumb' is not defined no-undef + 14480:38 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 14481:39 warning 'jsPlumb' is not defined no-undef + 14548:40 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 14639:22 warning 'jsPlumb' is not defined no-undef + 14644:24 warning 'jsPlumb' is not defined no-undef + 14770:26 warning Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins + 14783:13 warning 'jsPlumb' is not defined no-undef + 14788:18 warning 'jsPlumb' is not defined no-undef + 14797:13 warning 'jsPlumb' is not defined no-undef + 14802:17 warning 'jsPlumb' is not defined no-undef + 14803:17 warning 'jsPlumb' is not defined no-undef + 14805:17 warning 'jsPlumb' is not defined no-undef + 14809:13 warning 'jsPlumb' is not defined no-undef + 14815:17 warning 'jsPlumb' is not defined no-undef + 14853:18 warning 'jsPlumb' is not defined no-undef + 14901:22 warning 'jsPlumb' is not defined no-undef + 14982:20 warning 'jsPlumb' is not defined no-undef + 14996:13 warning 'jsPlumb' is not defined no-undef + 15008:18 warning 'jsPlumb' is not defined no-undef + 15011:25 warning 'jsPlumb' is not defined no-undef + 15013:35 warning 'jsPlumb' is not defined no-undef + 15014:30 warning 'jsPlumb' is not defined no-undef + 15015:45 warning 'jsPlumb' is not defined no-undef + 15016:45 warning 'jsPlumb' is not defined no-undef + 15017:46 warning 'jsPlumb' is not defined no-undef + 15133:36 warning 'el' is defined but never used no-unused-vars + 15133:40 warning 'options' is defined but never used no-unused-vars + 15136:36 warning 'el' is defined but never used no-unused-vars + 15136:40 warning 'options' is defined but never used no-unused-vars + 15152:45 warning 'zoom' is defined but never used no-unused-vars + 15192:33 warning 'spec' is defined but never used no-unused-vars + 15201:31 warning 'spec' is defined but never used no-unused-vars + 15210:38 warning 'posseId' is defined but never used no-unused-vars + 15263:23 warning 'el' is defined but never used no-unused-vars + 15263:27 warning 'event' is defined but never used no-unused-vars + 15263:34 warning 'callback' is defined but never used no-unused-vars + 15272:24 warning 'el' is defined but never used no-unused-vars + 15272:28 warning 'event' is defined but never used no-unused-vars + 15272:35 warning 'callback' is defined but never used no-unused-vars + +/home/runner/work/exp-monostable-multivibrator-iitkgp/exp-monostable-multivibrator-iitkgp/experiment/simulation/js/monostablecal.js + 4:10 warning 'resChange' is defined but never used no-unused-vars + 9:10 warning 'capldChange' is defined but never used no-unused-vars + 14:10 warning 'vinChange' is defined but never used no-unused-vars + 19:10 warning 'tinChange' is defined but never used no-unused-vars + 36:12 warning 'voutput' is defined but never used no-unused-vars + 42:3 warning Mixed spaces and tabs no-mixed-spaces-and-tabs + 43:3 warning Mixed spaces and tabs no-mixed-spaces-and-tabs + 92:8 warning 'i' is not defined no-undef + 92:12 warning 'i' is not defined no-undef + 92:17 warning 'i' is not defined no-undef + 92:19 warning 'i' is not defined no-undef + 98:34 warning 'i' is not defined no-undef + 103:34 warning 'i' is not defined no-undef + 114:11 warning 'showDiv' is defined but never used no-unused-vars + 161:15 warning 'CanvasJS' is not defined no-undef + 197:14 warning 'CanvasJS' is not defined no-undef + 234:14 warning 'CanvasJS' is not defined no-undef + 271:10 warning 'cleard' is defined but never used no-unused-vars + 274:5 warning 'dataPoints' is not defined no-undef + 275:2 warning 'dataPoints1' is not defined no-undef + 276:2 warning 'dataPoints2' is not defined no-undef + 282:50 warning Unnecessary semicolon no-extra-semi + +✖ 994 problems (0 errors, 994 warnings) + 0 errors and 23 warnings potentially fixable with the `--fix` option. + diff --git a/experiment-name.md b/experiment-name.md new file mode 100644 index 0000000..fdc7ea1 --- /dev/null +++ b/experiment-name.md @@ -0,0 +1 @@ +## Monostable Multivibrator using IC 555 diff --git a/feedback.html b/feedback.html new file mode 100644 index 0000000..1927dac --- /dev/null +++ b/feedback.html @@ -0,0 +1,437 @@ +<!DOCTYPE html><html lang="en"><head> + <!--Google Tag Manager--> + <script class="gtm"> + var dataLayer = [{ + 'labName': 'Virtual Lab', + 'discipline': 'Test', + 'college': 'IITKGP', + 'phase': 'Testing', + 'expName': 'MONOSTABLE MULTIVIBRATOR USING IC 555', + 'expShortName': 'monostable-multivibrator' + }]; + + (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': + new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], + j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= + 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); + })(window,document,'script','dataLayer','GTM-5NMQ9NQ'); + </script> + <!--End Google Tag Manager--> + <meta charset="utf-8"> + <meta http-equiv="X-UA-Compatible" content="IE=edge"> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <meta content="" name="description"> + <meta content="" name="author"> + + <meta name="experiment-short-name" content="monostable-multivibrator"> + <meta name="developer-institute" content="IITKGP"> + <meta name="learning-unit" content="MONOSTABLE MULTIVIBRATOR USING IC 555"> + <meta name="task-name" content="Feedback"> + + <!-- For iPhone --> + <meta name="msapplication-TileColor" content="#4076e0"> + <!-- Chrome, Firefox OS and Opera --> + <meta name="theme-color" content="#4076e0"> + <!-- Windows Phone --> + <meta name="msapplication-navbutton-color" content="#4076e0"> + <title>Virtual Labs</title> + <link rel="shortcut icon" href="./assets/images/favicon.ico"> + <link rel="stylesheet" href="./assets/css/bootstrap.min.css"> + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/github-markdown-css/4.0.0/github-markdown.min.css" integrity="sha512-Oy18vBnbSJkXTndr2n6lDMO5NN31UljR8e/ICzVPrGpSud4Gkckb8yUpqhKuUNoE+o9gAb4O/rAxxw1ojyUVzg==" crossorigin="anonymous"> + <link href="https://fonts.googleapis.com/css2?family=Open+Sans&family=Raleway&display=swap" rel="stylesheet"> + <link rel="stylesheet" href="./assets/fonts/font-awesome-4.7.0/css/font-awesome.min.css"> + <link rel="stylesheet" href="./assets/css/github-markdown.min.css"> + <link rel="stylesheet" href="./assets/css/vlabs-style.css"> + <link rel="stylesheet" href="./assets/katex_assets/katex.min.css"> + + <script src="./assets/js/jquery-3.4.1.slim.min.js"></script> + <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.5.4/dist/umd/popper.min.js" integrity="sha384-q2kxQ16AaE6UbzuKqyBE9/u/KzioAlnx2maXQHiDX9d4/zp8Ok3f+M7DPm+Ib6IU" crossorigin="anonymous"></script> + <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/js/bootstrap.min.js" integrity="sha384-pQQkAEnwaBkjpqZ8RU1fF1AKtTcHJwFl3pblpTlHXybJjHpMYo79HY3hIi4NKxyj" crossorigin="anonymous"></script> + <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script> + <style> + h1 { + font-size: 1.8rem; + } + h2 { + font-size: 1.4rem; + } + h3 { + font-size: 1.2rem; + } + + h2, h3 { + font-weight: 800; + } + </style> + + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.2.1/css/all.min.css"></head> + <body class="p-0 container-fluid vlabs-page d-flex flex-column justify-content-between"> + <!--Google Tag Manager (noscript)--> + <noscript class="gtm"> + <iframe height="0" src="https://www.googletagmanager.com/ns.html?id=GTM-5NMQ9NQ" style="display:none;visibility:hidden" width="0"> + </iframe> + </noscript> + <!--End Google Tag Manager (noscript)--> + + <header class="vlabs-header sticky-top bg-white"> + <nav class="p-0 navbar navbar-light d-flex align-items-stretch"> + + <button class="navbar-toggler px-4" type="button" onclick="toggle()"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="d-flex justify-content-center"> + <a href="https://vlab.co.in" class="navbar-brand"> + <img src="./assets/images/vlabs-color-small-moe.jpg" alt="vlabs logo" class="vlabs-logo"> + </a> + </div> + + <div id="headerNavbar" class="d-none border-top flex-grow-1 d-lg-flex align-items-center justify-content-end"> + <div class="svc-rating-display"> + <rating-display spreadsheetid="1x12nhpp0QvnsA6x-O1sV4IA9SAbfVsq_wiexWkutOmU" sheetname="Experiment-Database" columnname="Experiment Short Name" columnvalue="monostable-multivibrator" imagesdirectory="./plugins/svc-rating/images/"> + </rating-display> + </div> <div class="svc-rating-submit"> + <rating-submit title="Rate" this="" experiment=""> + </rating-submit> + </div> <bug-report id="bug-report" title="[BUG REPORT] MONOSTABLE MULTIVIBRATOR USING IC 555" page-type="text" context-info="{"organisation":"Virtual Labs","developer_institute":"IITKGP","expname":"MONOSTABLE MULTIVIBRATOR USING IC 555","labname":"Virtual Lab","phase":"Testing"}" checkbox-json="{"text":["Insufficient Content"],"video":["Insufficient Content"],"assesment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"assessment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"simulation":["Simulation Not Working","Incorrect Results/Observations","Insufficient/Incorrect Instructions"],"DEFAULT":["Page Not Loading","Content Not Visible","Incorrect Content"]}" button_style="border: none; color: #fff; background-color: #288ec8; text-align: center; font-size: 1.05rem; border-radius: 1em;padding: 0.6em 1.2em; margin: 0 10px" position="override" custom_button_class="v-button"></bug-report> + </div> + </nav> + </header> + <div class="container-fluid flex-fill d-flex flex-column vlabs-page-main"> + <div class="row d-flex justify-content-between"> + <div class="flex-column"> + <div class="row py-4 px-4 breadcrumbs"> + <div class="title is-4 tools">Tools</div> + <span class="mx-2"> + <i aria-hidden="true" class="fa fa-angle-right"></i> + </span> + <a href="performance-report.html" class="my-2 mx-3" target="_blank"> + <button class="v-button">Performance Tool</button> + </a> + <a href="validator-report.html" class="my-2 mx-3" target="_blank"> + <button class="v-button">Validation Tool</button> + </a> + </div> + </div> + </div> + <div class="row flex-grow-1 d-flex flex-nowrap flex-column flex-lg-row"> + <div class="modal fade popupmenu" id="popupMenu" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true"> + <div class="modal-dialog modal-dialog-centered modal-dialog-scrollable"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title" id="exampleModalLabel"> + <a href="https://vlab.co.in" class="navbar-brand"> + <img src="./assets/images/vlabs-color-small-moe.jpg" alt="vlabs logo" class="vlabs-logo"> + </a> + </h5> + <button type="button" class="btn-close align-self-center" data-bs-dismiss="modal" aria-label="Close"></button> + </div> + <div class="modal-body nav-menu"> + <div> + <div class="d-flex nav-menu-body"> + <a href="index.html" class="p-2 "> + Aim + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="theory.html" class="p-2 "> + Theory + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="pretest.html" class="p-2 "> + Pretest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="procedure.html" class="p-2 "> + Procedure + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="simulation.html" class="p-2 "> + Simulation + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="posttest.html" class="p-2 "> + Posttest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="references.html" class="p-2 "> + References + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="contributors.html" class="p-2 "> + Contributors + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="feedback.html" class="p-2 current-item "> + Feedback + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + </div> + </div> + </div> + </div> + <div class="nav flex-column sidebar nav-menu flex-shrink-0 px-lg-4 align-items-center align-items-lg-start hidden d-none d-lg-flex" id="menu"> + <div> + <div class="d-flex nav-menu-body"> + <a href="index.html" class="p-2 "> + Aim + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="theory.html" class="p-2 "> + Theory + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="pretest.html" class="p-2 "> + Pretest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="procedure.html" class="p-2 "> + Procedure + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="simulation.html" class="p-2 "> + Simulation + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="posttest.html" class="p-2 "> + Posttest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="references.html" class="p-2 "> + References + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="contributors.html" class="p-2 "> + Contributors + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="feedback.html" class="p-2 current-item "> + Feedback + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + </div> <div class="vlabs-page-content px-5 pb-4 flex-grow-1 markdown-body"> + <div class="text-center fix-spacing"> + <h2 id="monostable-multivibrator-using-ic-555">Monostable Multivibrator using IC 555</h2> + + </div> + <h3 class="page-name">Feedback</h3> + <p><b>Dear User</b>,</p> + + <p>Thanks for using Virtual Labs. Your opinion is valuable to us. To help us improve, we'd like to ask you a few questions about your experience. It will only take 3 minutes and your answers will help us make Virtual Labs better for you and other users. + </p><br> + + <p><a id="feedback-btn-link" href="https://feedback.vlabs.ac.in/" target="_blank"><button id="feedback-btn" type="button" class="btn btn-default btn-lg">Share Your Experience</button></a> + <br><br></p> + <p>Thanks for your time !<br> + <b>The Virtual Labs Team</b> + </p> + </div> + <div class="bug-report-mobile"> + <bug-report id="bug-report" title="[BUG REPORT] MONOSTABLE MULTIVIBRATOR USING IC 555" page-type="text" context-info="{"organisation":"Virtual Labs","developer_institute":"IITKGP","expname":"MONOSTABLE MULTIVIBRATOR USING IC 555","labname":"Virtual Lab","phase":"Testing"}" checkbox-json="{"text":["Insufficient Content"],"video":["Insufficient Content"],"assesment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"assessment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"simulation":["Simulation Not Working","Incorrect Results/Observations","Insufficient/Incorrect Instructions"],"DEFAULT":["Page Not Loading","Content Not Visible","Incorrect Content"]}" position="override" button_style=" + position: fixed; + bottom: 20px; + right: 20px; + z-index: 1; + font-size: 0; + padding: 25px; + border-radius: 50%; + border: none; + background-color: #0fc0ff; + background-image: url(data:image/png;base64,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); + background-repeat: no-repeat; + background-position: center; + background-size: 30px; + filter: invert(1);"> + </bug-report> + </div> </div> + </div> + <footer class="text-light pt-2 vlabs-footer d-flex flex-column"> + <div class="row px-5 mx-0"> + <div class="col d-flex flex-column"> + <span class="font-weight-bold vlabs-footer-sect-name pb-2 mb-3">Community Links</span> + <a href="https://www.sakshat.ac.in/" class="text-light">Sakshat Portal</a> + <a href="http://outreach.vlabs.ac.in/" class="text-light">Outreach Portal</a> + <a href="https://vlab.co.in/faq" class="text-light">FAQ: Virtual Labs</a> + </div> + <div class="col d-flex flex-column"> + <span class="font-weight-bold vlabs-footer-sect-name pb-2 mb-3">Contact Us</span> + <span> Phone: General Information: 011-26582050 </span> + <span> Email: support@vlabs.ac.in </span> + </div> + <div class="col d-flex flex-column"> + <span class="font-weight-bold vlabs-footer-sect-name pb-2 mb-3">Follow Us</span> + <div class="social-links"> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #55acee;" href="https://twitter.com/TheVirtualLabs"> + <i class="fab fa-twitter"></i> + </a> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #3b5998;" href="https://www.facebook.com/Virtual-Labs-IIT-Delhi-301510159983871/"> + <i class="fab fa-facebook"></i> + </a> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #e52d27;" href="https://www.youtube.com/watch?v=asxRaOgk6a0"> + <i class="fab fa-youtube"></i> + </a> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #2867B2;" href="https://in.linkedin.com/in/virtual-labs-008ba9136"> + <i class="fab fa-linkedin"></i> + </a> + </div> + </div> + </div> + <div class="m-0 py-2 text-center" style="font-family: "Open Sans", sans-serif; background: #212121;"> + <a class="text-primary font-weight-bold" href="https://www.gnu.org/licenses/agpl-3.0.en.html"> AGPL 3.0 </a> + & + <a class="text-primary font-weight-bold" href="https://creativecommons.org/licenses/by-nc-sa/4.0/"> Creative Commons (CC BY-NC-SA 4.0) </a> + </div> + </footer> + <script src="./assets/js/toggleSidebar.js"></script> + <script src="./assets/js/event-handler.js"></script> + + + <script> + if ('serviceWorker' in navigator) { + window.addEventListener('load', () => { + navigator.serviceWorker.register("sw.js"); + }); + } + </script> + + +<script type="module" src="https://virtual-labs.github.io/svc-bug-report/client/src/bug-report.js"></script><script type="module" src="plugins/svc-rating/index.js"></script><script type="module" src="plugins/svc-rating/config.js"></script><script type="module" src="https://apis.google.com/js/api.js"></script></body></html> \ No newline at end of file diff --git a/feedback.md b/feedback.md new file mode 100644 index 0000000..33fd134 --- /dev/null +++ b/feedback.md @@ -0,0 +1,12 @@ +<h3 class="page-name">Feedback</h3> +<p><b>Dear User</b>,</p> + +<p>Thanks for using Virtual Labs. Your opinion is valuable to us. To help us improve, we'd like to ask you a few questions about your experience. It will only take 3 minutes and your answers will help us make Virtual Labs better for you and other users. +</p><br/> + +<a id="feedback-btn-link" href="https://feedback.vlabs.ac.in/" target="_blank"><button id="feedback-btn" type="button" class="btn btn-default btn-lg">Share Your Experience</button></a> +<br/><br/> + +<p>Thanks for your time !<br/> + <b>The Virtual Labs Team</b> +</p> \ No newline at end of file diff --git a/images/README.md b/images/README.md new file mode 100644 index 0000000..5723b13 --- /dev/null +++ b/images/README.md @@ -0,0 +1 @@ +### This folder contains images used in round 3 documentation. diff --git a/images/mono_ckt_th.png b/images/mono_ckt_th.png new file mode 100644 index 0000000000000000000000000000000000000000..bd3d827ea241bb0dbd0217b16b913bf74edddb3d GIT binary patch literal 86994 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 literal 0 HcmV?d00001 diff --git a/images/monostable_prc.png b/images/monostable_prc.png new file mode 100644 index 0000000000000000000000000000000000000000..fab54c97d8a791d8beb84b764219c46662882efe GIT binary patch literal 44807 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 literal 0 HcmV?d00001 diff --git a/images/outputwavfrm_mono.png b/images/outputwavfrm_mono.png new file mode 100644 index 0000000000000000000000000000000000000000..18d0c4bafebde3fa27bc579b11fde867d815b63f GIT binary patch literal 89625 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�sd-%n{PQJCmSzwp-C)mr7I4?~8_j zg)Qt~>9D4a=4Zks0_XhZpv0vgA)h<#X<hZ+(w`N*b^N<K7NIn{sHEg{Wv+AG{w%QQ zB->>1kLpJZ9XW0_cVyZ4#tr1s*Y#qDXGeN|yAH=dY&qLTIrK6&;p{~&g_*yqpl>fW zL>7xsCz^pX&LwImBjm-VOQ>bW2}K>%oiA%$I;_His<z?!#{E$Z<hWyeK{mvQb>B`b zaf$~Sv5Zv?YMt^>lGKY877Cg>c|${<od)@|N?<S}g6xaib6Nrzk<iyON<mXgS(JUx zLp0N&mSFgS>zUSe-A;VUT{jmRw8;eDY?DqeL-}YPk3^SU4_X9nHHOnyRx1OGY4n|q zbR6nZdn8P_ArFZWJs5^=j4mhzZ6~N5t>W=wr`vKq^9=eJmJM&goko=#AY(CwhP`@< zo;2l|^)?R*e!EP15zUMJq;;rP+8iGKcR(@fjEV~viWCjJpMFMW$I~%OpUNEb)(gck zV`n$==={~%Pf<!LAT23v^k=RM-gJSb@vjjp-{%G=9XENze>^N-9Ib+;-ekC-EyHc} zPqy{=DjYuROua+&sS+%xOuJkX4r!bBT$Fx}q^)-ISfT!0wTC<}Y-zm<(@u`y6a)xp zb@^((nCsJ>^J>@@I-EXvp~~6e{pKPIGEwH1*Tt?y*5=>FkJiH9oZrQV#*W@jZ$XLf zaGqrCUEj`B9aVYONwCcUT%Otu<&-}>*6ax<D|^p&*T<$KrY-PB#}zKv=m2=FPmCDw zPhu7P5{=QGfgN|X<GkqPpzLXL%Qsa6DF7rb8S?jd%$l3UWJOLYO@Z*|-DB}7R{gyy z+k*3US`Yl5+-unfGy?=7qqA%Gy6QYux@J!TH?HG*%rzjTyD4*;j9&4bpG<o5n}u~x z+I>19-qudXZwYIA$;Mc*k``i)U28uFgON3P5Cyx88JRi}fS97omwZ<L>UZFgS|ao@ zGHOmrZ8iYI<U`HHby8jJZFp&EbJLf@QCW8adWwvit^I0x+5btNq=XTy@Ye41owd2| zqp)LV9gpVjgMf>r9eltsGsbtp^UWB1->^cFcM)B;L>c!WizL`5qM6kP?@UZqrTcY$ z@aZ)<L|e2RWz^zvhiDyEQ4uisYzRtQ$X{myfIiq9(k&EeB`v6+#dGvOF+ynA;Y!@A zHGZF&D%H-}P?0Ogn?X-zjqQ4c+GOeyXO!)N_y0_@A%D+19-lUd#kv>Qs=&H8rYADO zw;%Y7#DinkhWR_nFzGxNHa@z<OKILkr!!DOe7;;Q1=>c;M`M9oPeI5l`-ZgP<YqoP z&8<Mc?Hx}mD)@HLrl3b`cXzSU(028hA}L@drrvOP-_>Vi;s5w9+8r5{omqJTVX$p9 zr(It@K2fB~EZNS83R!cME_TniLg<D+R@kh-)=J{{-57XVEwZK<1RDvL=ABD<Ub1F1 z7oPX8dZ!1$Gwt;RM$`>N54veXtkpA{y^H{-|8(P`^>6ckiFA7C#GTXpI?5FJAh1KR zPS`v`>+Yurz$J|Zia9Sr|6tSkJA91e+A-^nrghQUq3|mZ%K*cBc`4+{YyOhuzSF35 z_FW(OcU<P`Zz-gjbpaESXR^E2iMzoIx#LQ9gGy!Fq*Y9@N69Baw${*{V1weIIB|e7 zL!PHV*9eYPmBC94@bo8tIBh}DGe)9hxMeazTJXR9AGX!5Y~f;16Px3Y!!_>ZFkV%T zV=J*v=N9MJ!s^>U<LtGIK-6!z341Yvz`$VexbG<d#kFd2EYFMlaLXI}cHFs3wCu&~ z&w15nk({uWK&_gUV$!ePl7|m^>BiEJd|kfDQgxXji%Yen&q8uK`r)@h5o<u=_SChF z-!Shcb@}Q^m;4Yaj2<tDf`G0he{A`5yc2%aRDHp9ZKQ|dzehNF77sr^)4kq3>XaQy z*+n|y#k_^)P7k;)&{q2G1R_OzojjU}W5ko4KNiR~8R2k;%|z{92ikgav#4u29M0iC zG~QiyI+=z(JGHmRifm9UQ}9zzyeEFFv96KQQ#!rn%fH0i=en4~3n>8#C2H<%U1A#v z#c<FUiL9c&#_6yzsU<R+P5HHE`^VT{4YTEY<Ygi6SUQK_>+M1UbYttK&xo1K>IRZ+ z`FJz<k>**ST*rnIQF5MZNmGZ#ikwm@KK1rxd|3gf7Nu)EsN|ip)z_F4Rpa^Gy{iG% z_Nv6~cf9lMjLgOtThX&Cd0;Iil*`BP=O=)lv@b<LU#pId1zTgvwab}uNfHqP+Pvql zT{~HIjFdw>YcR4+Zr;QTXUvpO62$Cbvu^rv;-dUq8l_Q?2a{2cWtu<7BSo3(RX!?+ zc8$epPQel_&3qn(4U!Y_rcudu(2C*QG$wqhXx9rp!|DAbtNz>-CJ>WC$X6ytyQ8AH zkSEEYceikq7_NVP-~I6J_SV;=A(>BM==8@&1pbgahp*rL*AU2oBo77;4~TsdBF9Wq zx0^R~>ev=p=NB%~KkoO<dMq+=f~D6=nfJc%?ykpY?02oG1qe@4C1H!aYK$ofIuNE^ zmfB?%R5$KxSg&c;Zy`3ZS}T?}t}8Yee#3orZr_aAh_c-9#x<Q8e4)%!haO>>QGwgf ze#=f6{=7^~bTs`eBNm+3yi9F{LC`l<X$pCeOpz&%G8p5~?sR|i6(HAy-~69XE1AJs zSP(fOy|$5Tnkw3`Lq`;30-O8k&2ajN5eWr48yp;O!><Q+Kk(f?XVLjF&4bsw@zkq2 z{1PfmO#y3^Mc90hm}7X2VZENQiB9>X&%h!l!<7C%K`!^AykBk?ph6ex)JUa{?k^S6 zThu-_sa&0f2fQ+-I6bDvtgIdFq+uD>;k#}}yO!sYa)QIr`aU$aeELl&CX9k>s&9ph z>dpl#iiXYmoV&AC&aKyYW@babD)4l6eH;X|T&u&@xgpPt3ksS2AbhaRI+{lqyodi1 z-WAv|I(RM-BIKAoH(%gW^MK9mWz~JUH*h4-13SuaEH<>C2r#bYdu~5Qvip}H)~K8P z-+1+mG&?Rjm3lHE$WQmsm~_?q-=QwoAULU;8+JOn`Owkk1V^UUDkk|>Ch;en3DJma zbf+yRVldixeYp7P*4|F@)G2XS7xHx=puKD6^?vRS6Mmxrgf<o#FC^v;P&zrz33kEB zPUit+AbMO!^fX$rQDZiIC%gPz+<Lp$`d#(T)S5BV^mLgoQ~v>*_#!<L`6ter?K-qD zgWZo&TA_AfbdC*9F14E8msfXyp>4^Z>>RR8Aiexc;?4KEQeP>GnP<*n#vOVy9D4}r zb#VaEH3V{qG&W=KVgnQ*tj~8O3mB~c<MKdXh2$009klycm}DhepW4DG!<3`O-#yg& z@cRsIK{Fj!G4?HrjFho3j)MVENQ|gVPVn#*+kWJ`fB#e?$MQo$IVWnc@gM=BPsA1( zq9q3OsIo0OUGhdZ1%Vzls7{8%Po0SkQ#-$p=#MWBE6fuR{W!YzN8qVF+bF^1?Q${0 zo5sT+B>JD~Y;?yO1@Uf1CUg2Pz4CZge(@Ht&pG&y$hD|==LB!Y=wN0@rqRE~<xw62 zm6#FIFFEy^u8-ydF%4c~XsedVibrr{ASj3y<`!vl+$y>1?G39=ti^T3#(B~vq|WF( zA5xng-kVZ;@HWd|_}Nk}ymM^@y_9U5f$J*msuZtkeP(N%%8DJ4UAQFf63WO5xUGHe zy8Nr8a|Uc5BZb2}M05;V96l-V1r0}OzK|8KF=diP4_`iE)af3I6VbLV31i4&bYSqj z<}DC*`f#eaVN>LA?(mI>$e_#AVsc3wuMi{ZL3?}uxiq@b-t-SsmHB$7_|#17RZP&R zqSxm`y|9$}0K(5QgJduH&mR`Q-u>MqmS5b|`vFcPI7XKpv%V`|PCZD)q|2>WGPK%L zNjS$gN}(;MLFdWt^BQuty~auyhv5A%&#ME}!`J|LrH^suSKxNv$<yG%!;&WWKgA(d z&o4T|xGw}t^C2Bskwuko>l%tlV@?fGKr`(o@5zY>`InUDk%R;_LSg6ahVI>EX}qDB zDi?CJ@#~i<2~5y@jX2$DRF3_AS8f*O{>nH_^CswF?vZ(&e+Z~W;7&>F`S!4%V7JA+ zkWITx&#$!1<q^ZME5Dpd-v9cLxj!<HPZ8Fu5Gk2&Pd-|T5gu|d%gFFtTjeQED0`?) zyC=F!U{ct>mjCylrSxz1!?jMko@$IHA`WD7@8rE`Vn*1~HD{iq&3Eghxm<&=E0JMg z-jo6;IB0MbIm@7RC7aibm;mSXJi+{7FakM{qUGp4ukc{=^(QS$z4<vI_@7P>H1F~6 zUY<XXxcFYP(|l}Og-Xk1J-=%k52!l!I_{VX=H1V3T9mQBGOwL_%y@2ZbejD4TXWwd zPe53Hi}vr$rG8b0N{>KsYtV=ZW7_J_U<3%wdz~>8$T4wqn>M30fuc>{VgXo|BzCKY zF%p*C*Gz@RRd+XxpCkG>v;#KXgElQju;87~VT*!-jpp*=1DZF)N1#hV176itwXalf zJl^K$vsShEGMU7GQuiP~;8pSc-CJ|YuKlrR<nU%uv2e|o+Isa1D<bYQ)1wL}UFrii z^s`r-kuQC$n@Q&TTRpX9r+;Z5lO%%N*M81#0={qUX`BGvJiNr=1VTL4AY?mTY5koM zz`Q#+J4e0y<udofnyD*d)&CrA6SD6Bbi>57Z<lkdDp+>;yk9RGy}Enzc&nt_^90nx ziI^Y~L_~khL~I`=-8X*55&>`87)P}67BW-hXTv;S$rhiRle$1~Zx(p8A}(o}&m@x* z`By{m@|z8Q#IGhm3cBy~Xsz3H45VYs^FFQ~3mA>#&!WE}HBIHs%E-Xj;p}|TZ-?+7 z_(k5q=J`|67VILWJ%Jq%?e@3DKBKW&)NSIm-jof!FNC{v1-cB8UlV8RXTDaZSzkJ# z{TN5tI$-Q&zMutSm%q-6$S&@miWu(+k2*O}zcV`^^Yi&`cl&_-Gb{m`4!#oI=~?d8 zX;WVouaO*dFfXGp8GHcyx38`6Oz7@|7={K~)ewDN7DR$bPO-7UIyK?f7~Wu5PB|#= z<FKdmJl2St;TMjq!iXO_k+%IpWJ+*4X}E%J@&$DrR3_nnrQs0XLn{;|FpK#o_Zpw- zm^gUD23Dp24=FwY)Z%Azq~(H8DREumq@Y@kW(1~S=U3Ft6wW`2&(7(;k20j@+1Mn_ zKX|rrNM_D;_Ms77mw9&=XEofI!M@GUZ0qM$_i=K!y;dekcDR$k-nvQ!5y#bWz&t_V zotnYU4wI+-Se6`Ut9pUAq(HkSTO)0Iy^Ukz?=$-n{ICPv#ZBn`@GLsYsn-yjBNMMu zCuw8~<uUBk7I&)Lt;Igb%$0u9%`k|RfXF*VhS^3v>29m?S2fc2;|^o=nqicXiQT-D zR?ZqslAY0O*{i%u-lIyqU2$3?FD7qx!|ju|8%=p=SOIyHX2K=P!n@8J2|K%2ck~5d zyIF8Zx@U!2al=7g?f&xI)0WN=#7Ff6(~kNH-<bOVu|~v2^mGNg$ZBunF6U0EZd?@C z+;PsbWnEU|CGOWAOh*jAid#S#CBhDylyltqbT=8C?~An0&D{i!E#E0?{+>~mRT9h@ zb_q{ULKXxv<R0z0XbUy0Z~#}y)<R>RtvECE{59?w;nIfNap3K*(3P!2Wj%Gi&79by zsYA(FDNIs*m7JIQ1;H2<@1aPDmzXgYxbLP=b^1z|GsDI`h9)&QZF#cc-YFx76dT#G z$;#od^EdBFt_C^l2GD|<c32@9nm0)YeFsxJRxOvOcf6^utpLU=4Tv8MQA3U2vP}Rt zGMmAbI%Cwxt`LSt+GE;sxBe@A93<pE?Mu>0Q;evgWwlU=RPo&hA62*>(XWk-TCUyx zNEb2N-)!9DA6Biwl2&J<=|@is6m;Bi35FbQZQqR(o}9>82}nLw{hMm3KEvezw(P)l z8x)sZTk<W{oZRJN*@Rb>mS;+ZogO46_B&Zie(?;weS9Esbaa{o5!si)u)P#qOSCP{ zRSb|U+gPgATN#>|HMv78*D*}<R}0=s1VG>L9AbhymT>5qAkvoNKHGa)Afj(P1vk<X zm=T;W{Lhy7RP-Xkc3tDeS^MJ2%k1@!KQUoYW;;fZ{{aJsI*sm}VIk0T6v?vTBXM?g zf59c#(47Boc`CC`oc>;ZIwiA?elXzxuU6Ao6YB2@uS+kYV)j1!UzC_)aX$84mvs%8 zyI^ds9#`M}6WG1dd%0mK78YyfH@%!FpeFr!cwT**Tv)R7)A`8fgX{KmaM{=)E}9LW z&q4U=TetLXosv_vz|+L7`586o+(2df_a8#a$G>!ctf4a}s={c@ooU^EY6njLRvKBf z>>FkehcSF7a3d#}B*Q8L9O1^K?U?}RUZ!(qmW{FuTgG74$3^&%Kk_B}xflIEGtVxz z&%XG#mFU5d&HxNH5S9^TN8Go#7xMD@_wP1Rm6PM@Y{mxXBhrI_9TwWFY?m+HlCI># zXgj<byv~pyBXSdf4dgSuS&(z;P?etehpQeI%KVXM&dHh%6Og7B)BT?%$dMg6e>Nkq z;baYFT(;`k)x24q7v`r*3dowy@%;&|o{;oz%IF|l*>>l3?lXBh?RmL&onJK&M>5l} z`uaQtcB0@mJpLqk=k@Om&Xm`gz^jU!T7&}1E5fU-gB$k$`fbkF*1DPBV=-JdtS)<p z<t+MMlkhZ598~Z+_-f1iXr0H=H}P&Om3lY*AXshE{zHZ4+jb$ueunTH`o4|M6~ouU z(Ix3#4eM8!>g+)diGkko7n@1v>gQLIajN&Kj!me0HJ$PGMW}?jf)X9qC^7Us^>de) z`UhL-G4bM#{NSgjuMRQ$0L5|@(*X%@oxWJQ-2limXQ}cfUZ!UwFEN3p(ha75_Qnd5 z2HdCAUvp<Fhnjg*{;eji$t1GSEiE5V^|)uKBbaE7j@gN)=fT6_Gm8cW9AGv3{QB;^ zkS90(*7d6mH`L=!Y^lHI*WEp!#?9YiJN1R6!hXYuA5LFp1#$^OXZ|v1D9Y2Xs`}P( zu`xh#vrD-_+ua}PmzYpS?bl8+ZQgFN1@6XQQ<E2$N=o=JBZ*+K-w$Yh_R}GI*lmi* z*RVOTJ4<3c^Hxn2$Vlq9jQ>-Red6AiDe8k8U5-3%jm2p}PuGvlT~lIe_~kkthA6b` zr5^R%F~pyO?D2HOqt^(E{Z*EhqZ~J{(vC3y|NZhxG+WVz??F`?oiP^yI7H;o{tyJ7 zQ@pt0`-7B+f586)FiE{<XgxL9Gr&mhQC@p_k(Ty%A2;(H@>;`U)bcCx3eq!)t2%j0 zI@Y#%UZ_q%FgCf~+f)X%R{=flzr=L#@a{%4+i1VU)Q#-`^H)AQ$bs^at>4s<S>NQ2 z9ZkV`-AIgq^<=6_wDP>S6aXn}w^D*d?yo14%<A5IZTN%6`HM5aJrXM@0)xRR%`cmy zI?Bf}KS`wIvVo@ONlKsVEx!g@k{#0(+^=K3Awt^46OGsZIG?<5-OYZ#+-Env_Me%m z*xV~#`?EZil+trA)5M58S#8KhLtK4uSJ2+1V(huI(U#{CH`okGPv6G-8`)*J$`*b_ z7;8j~+RjABWjx%fzcD!2K?uHQ{q{}&HShgg1;Qk=yF*7l^Pabu_P#fpt*>_1f8LWn z-_Pl+vl<^Hb(x-@Fe3pAD$RIoq*~~N^`j$NjQ&CBmhI1D6Lxd^YKn%vxJUg=lvL;= z(3op_4wHD>GQZETNew0dN6VAux0e6s^1I`2{r=(VdQjsLZ7a3*!Xp4@{|SHDfL$ay zt%Pi+O3thMP0h6{BZYOf=%^1jeE;-Sj^!mZx`p(h`DyW!&>jnHcbuVk#P$F$f(tq2 z-O>>DmP;L^R;dtC9azoyWb<eKu$AM7WDX`k3}<K8#v96qmc=E^H?MkP9Nh$vUH=Re z*pfFEtGkgkV?&U^ulnZ<h(fAL?k$<~WUc8x?P{H;{krz+sS}+n&i#K73~?bcJ9;ko zAK@$4>ueCzi)G3}%(us++bmz?%R&aF|1P})I}UtCe(|tDk6~HtYImy~48enTx2Ls@ zFMbFne;?o+Yk+j<1o(G}1~A<q6|uub|CS)xpt;tkpK!48f6o(&@0!LI&gpgYXE{Oe zrI0-(mxwwjb04Ea6<edA_lfAOZe49F|H;uK?3|Q^v>@=MjC|OBWO{~t^ts@Ke%^v} zKNIdMDkz%9JN5rYJCTyOFFwO9`X#uL0-lXJ3GG@UVL!I%7)Z2Q*iBK!b&HYI^eAoX z8fTBR$6@6R>VIXwGiN+hA3Ta0p8c5BUv0B<++G~1%1v)i)DSC_DePO-+MCfqKp1TM zT3kr_6I<Fzt&}%wBLPr{*lecnToqgPmb20p0p8e%Wt^{-qDbb{EG<Y1VL^TD?YK7y z1oxI~bAir{Q+|xMO=Y%$knLPR1+O}*mT#E&Rzw(osP+ZzC4q?a4;RO(SznE@ei@gY zAJx0BWDp7n?0J+4pA05W%Iz#C#*s!2?xSy?IQ{vmFmoqb@kDWca~Z9)a>Z)p&V3aB zFTOGaM*WkqJ=bltBX;v#05fqdA1|kR(W`4h^nMdcXvtocWt5d1^+ffbHm$Qa1Uy;P zoHI-^9oY;GngH8nm27cO6h7v^wWi0wrSUJ9$li5FG+yWF!Idn|vD`r7TC~ufkT}e9 zj`q~4gq`{W^a*tQJ76YGdj4q|#hBC%5B88#W0ICQ=OpRU@DTV{nT`E=QkdO~=V}R; zOGJS;r%)qs2U#VnN0T=#%B7Kf(FVZHZ<fY4jxKW(5BGJK>`ATef`>2XoUB;DrMD7l zCaO&)B6HZAG_Ly0kSJ(Q^F|Xp8sp1}R{opvdzLMpX-5Y|1MoJ;$+xuaA~4H+6vfQ~ z<#^vX_3U$5;Z6gs)q-lSs)s%Je#|VcjsK(@hdlJfVfbx|1~mRVG!19u4mfNWIQbgG zeoKhb;}>h9`42H$|5tA1v!b&HM7$(jYZuYJSZ(c%Q@agsmPjeZq*N9@Iz8&-c&e#k zy%z<^`s2PiAG&U8ixDFaL+gNk#VSLvFWt+GqLW64JFz~u7E1W<;12S|*hvhciGFDE zuR1>)hWY;sS>VcgF_Z%9%{|r7Ja}=HaFRmF<-N5@^^fFJ-mY*PIjtjB%*!U%IM z%T<4aF-LCbe$a=5r!Dr2DnkY>WIze^K4bOY#-Vd%OdpHH?j>(-ben<PV3RG)CE=g; zBr?NTOF7ymPe{^<V05C1cdJKxS)a(QsD$oshG;JH#QV(6qEd#EfmhBouJa4X6(&he zQhhf81w(pZHY{O3kx6i^ubTM{`PHHj)p&xon)rwFMZF|zpM?Lv;`@(%>p05gNBj+2 z#JrE$0rx~<mB3)z5<>xj<h?e<vkG~bNVw~qVO)Rb@$q{v0zuVT2pQ1E3Lt0e88J51 zcfKtNHn8f9GNw)@CVP$^NB8AG-LdD4Bzs6|nhccT=_PSjK_jrl;C3C!a&!z~N;C1+ znsgP?9A7;)Yecv(cw=>w6`6v+pL`ze84p4+ZDhP!d<@Eg`+B@MyZ~0W1GodK!IU`> z2`3><&8=X0%1_kze<{U%q)+W}bYBC!AaQ5xVYPKj=DgEDT?{IY4IUz@1>VxTVYl=& z{Pao*sZB!)qk`s4nS1;HS^t;4kLN)uobtU!x)=Hz38f!)LJfg|1Htl-ZUE=$;G}03 z@tFQD_pq-h7DW>8ZrRS4pih8&|K|#Y+BT%U370KV{#WESq4Q&q!Ws$Y@zXyaj*`l^ zZE7N#;K|d~{8)ZVqhv&SJvIW^A}3~Uv0e>6Q8J*Pk$dGJ-}ru();OzSCMkf>mr6^U zXZM`#rOax81q9}t2DZ0B#6{<c*}w~uAtny0g(v48Sd~jUD{w2?@cd;^X*pv4wFJ3& z18Pn$Px5_H4PDLSlyDTwHP@63*huD(`SDH{9KhRb6&cL%j9$pL;%8S4kgU=_$V=Q< z-ywLk<5s_xkUBK9q-R?i*FFLrP+D9Z@Pjz9Q*BP3lJjSu?CnbeILDA&(;lBfdjeYx zfT}>k;neZ2fQqm2!HQQ2zcmB0`0@bXPP0jvevL00XgWFR{zjT2G1-wA!aMRsDV}}z zXVBRR7ZysZrm$!E)%?Q0Gp!z$dNjr>k`@(lfNc&c2_P40j$V0$eJRF$nyj`xj_PdZ zB5t?~<`al&RnKyCHPVooz?Dw1t4rVg7t-)Q?v}9HW)En7mBu1)v{?<N9R{-CTW>EI zxNk1mHGL1bd^tK!45ZC0X5DSIT0RatJaHUCe_s;{x#I=htpZdq-Lc)MWf0%9ye<I; zekj=tjr<Hk6b<0)WdMHye<BJf494$JfJZ<xChs|9T}6c_eBDT$+^$NO^IG02Aqzgj z!cX5YwCv@aw`8}3k#~_4HPAQ(cYZF4w=$K<V=-0I@m>nTXpu9l@c7Sp1E5qy#gvwt zO8m?siCIpk!ElQ~B^RKLGvbr^-3owDwQc`uu<vzS5!dSS>qkgTt}1gdOVTkws<4|2 zm+wg3fb%$YMQkST)(?bB-+-;V`quJ3-br*8pU9ha`tdoarq;WeSmT5KfeE<n=^O7y zTS(j?L5LoAk8+{nH=nGJCgUWJ>_UbAFWE6ahywck4n`{?AqQKElD1bOTg^Q)W%jy? z3%V)K@t0opWUkl}saFrC9b0M_ELsdtna2sg(?WyZBeeW~vcDK)_33f*?E!es5%pn( z4Gm^$b4j6fOdwh<^x%84#tcO^E3ahohV<v~=#3rT=8{zK7eWeThEjD`;GLo7NWWtS z{WUnY1ioZVJpBYw&i8nDBu;y)8NT(L03rwrVFv0<WWRKa92Rwy?LX69uMr1arQu8; zQwypR%4g0Lhp;8g7lf_2o<C%?4lF_dtFLrjF3nR|Dc@Xeze53-oMa`FwN(8J!`B>6 z69*e!AdV_h?mF9@a7?b{XNaw&hd#I{bXQ|(f+Jt75FbIeq#SPt-(V1+CMkt>E()A( z%cwLr+fP1Fogah#m-e^0+Wkl?GR}?hO+x|my2+>FB=osrt8(6dKObd~pYzm-PFcRl z044OY=_Pcruzlf8eFFSkiAT3K%QV>5pk;3r9OPi(8;Ns9PuAYt4sLxED`&V>o}ZO# zv;K8%x99Ht`Rk*uXJ21&mU|rVnLmb+|D3nK{E(b*kuE9+R>}rm$#&jg=blE?fAA%9 z)O5PZpsZXoKfl{E)9=Ku9<#q}AMtjFC5X*G1b-Tgo7#E?R{v~|D37S|{_Ql3VQlS7 zBGu7cafY0K6;bjsR%W*RErF>v?xGFX7)Xk}N4!1qB8M}9GcsO{nIgAvYx+r~+=%AD zW*hfw2+jx(vVL{%8RKr{9PvtRS#R=VyYLfFx?Gv)<=<rZerL5+FRse>vRE%<^ao!B z=PlnKz;I~!Po#-X8t+jkZNhXdz3l8CnmCM?vp;$krsiwY9UOP;-cBnHwdHX?e)Slv zk!qXtou5rZIe!4TRXw319g9kQk=)QfZKg1<*us+qWq*m4k7NC+%Vck3Frjg^AmbN6 z;MC208Pn&s2^z*#{?!-^SE9GRZ&v}GS3b{vALi?9RPS{(eM^{Li*{twNJQ1hNSmZs zxA?0$4{c)gwqNlgc3KV#DGe<rzBc4uAyOXfA$BRgt}Nw0c0Wvm_`X=+ZW(<!FoyJT z%uAZ4zrXYA3kNzh(iZ;-*R=ANssMyyCPqU|#bdiMLMQu$wLFlXQCj5t$@teqC96zs z$YyI?ej0a;^+YS@59?b3R}6j;l;S^W$hdd^+ljn0;aiGQTOAS~!L3v%6n9K9xJwlT z2JgDX8}NrQV>A;g;QsqTk<6$-m}N(#8A2>^AuF_TRU+^JbEJ9ctMSDn^fjT+`C)R1 zRoX(0;<|JA;@n!x5kF0AmTes}r1m6oKH|u4IVBB)e@*@x04RXcGn@*@n>7Ln4ZjAf zgvPucxZ3YCaGfT_cyU&n+dnpdRfTRD93+(Qas4;JMNMhocNkkM7<X<uJ*i1E&y-(J z*IKfC(y&<xvGM==G?xjmPw9F93)Y>7z%SScmHOHutUSL9*$UxisbkC6_8AG3s$Ohp z=kCG|za=R*ouRJCqA@uiRrihZXKkXw_folaFVx3my3!nvK~XBT_+Kl`s?*SJV^u5_ zC;<X=J&47(QB#HZ3FOVm43L`ts?bp?nq+=@vVcO{pY4O`)|#f#j-=r2j+|cBmHfpV z=qC$5xAJrY^#x5A&S0(-+&>T%`aEu@V$a>m7*#GQ4Y3i(24`Fv=9SDhwGyZpUOBfJ z#_;E>ZEMQy@NptGwMkOiIQ{Z9uz*;5WGtNt<btkTBRh<xKTvYrPDoL5)S)X$W&YnO zal~LhK{}0*NbvV7*Yr*Q&*$dfX+Cy~5ddj`Xs;f}2&+iwHL6N~Y$m%k?oO9d=Cw}! zCH!J2D;zI(nz&+7G{V=tP_vVSMc5(eN`6M*OZmmlcrv-I!W$ih$>gh<_P03UC%EOO z^B!;ez3G@jY>1TTq~KZog*<+Mc6n;P;n9zRjf*z4UclN}0q6Xyj(0^+8tj-C)8GpQ zwsiWVl-!m)pAdJ}tH-kLM1sTi&Rw~(h8)X)w%#>Kz8f!aELl4Bad58l>Rx<fx$lSC z@;R@+;F{^Ghk&~5yMGG3EnyFtT?jT_@cI1UR?s(Tz%1XcUZw78m6icgx7U5~TOJ2= zwZ=Yu>JlW-azFV@7N4SKdN>OU->g`Pa83?%Qpx1Q+-M+^LY{Zm_NpSy{O-wyiv&>% zK|M=lry*&Qt6|ThU5>uiDXH_fzh!<;Qg^mQH%BRhKwq_4s|8RXU>CD#20*o2%dhh% z<97{LX;7j5{M5to*8|ne9aM7ih&Oj%YTfnaWyh7bHcy6K<YR0DXG%_Q82LQA*!b=s zZcO_^d<ndR<Covmk@ZzudJVmW)P|tnTJ-#Uhh>UqG${m*#kIxkIJAPd6#Aix&lAXL zS?V(Q(p#`p4M%v`t=D0V#DfB;Vo-jC@3!jzHp80n#!4*NkAa+hg1F+&VU2$0eIJWL z5sj{Z;jgzhU8K&NKz0SK?W+Z-3#$VA#FUW}w=fE^7JB@L>;KtBtyz(~<qoTj(tL5T zi$7z(ZFoiAIqQl3TlXV4LbHaZ-mcnQ=0cOy+1O()Z|78(<pk~#8bNY_vu<Z}&i2V7 zg%=x_jZ{}LRo~w{l37SJ)liO8TcoHFcJYhz?a0`zplM}#P}93(?ri3N6rG1Zn{6A0 zjp9X1Ta>DzL+#m`ji8FEineNxs98m0?+9ILtG#2Z8nJ3dC?Yju)t<4XM#P91`SSe_ z&+mTj>$=bLIMgsyUl!NG$xa~Q7bIBm;>2Ykb~nUt+f>nOR|o&$+N}?DR<6j+*h7O2 zDhAxAyzSx!VfnEB8#R>mwwy}LA{0=4=sx4~_s6aLh~)4rM6g2)X^CASGERFF(fJ^z zujG?7toCC51?<j&S@79Xm(oV49r3{*-igFb(r}{PLMwY5MgS^WKN&oereK5-2Zjt4 zm$k0i$c$%PtCl(y{FlI!5sv?RQ1Jk&l-K+~U-wx)%d>Qz>zzHiuWJ{R3a^B^FukT> zy~<K2xtq{)u#&k!{M=HhL;ANY-XFj%{C!Ngy^MinAv89{e$Tm`x9+!($1zg@TWm;| zw#GF9DA_%1j<F^3B!Js7yhf0F;LO!R$<N_Mc9o2FY#L83$7Qh}rEv=(?O!==SQ$CC z`Q8zug{(}{Mwp;D9@6wHHcg)>r_5erm3XbQ1>MLKeyGc)7l1CKsai>dD{oNW<-Sr~ zeC=<5DKD<e$vfRv>-u$icxP~gv_xq`P-2_Qks|;N$3T5-#*VzvoS~|6qSaq{qx9s` z{x{E`7k&P$E_jKyBeR`l_p^>*R#nG;>>anl+&hAHTUh~@G%h{8bd{Q8F#VfzK7$R| z2|}^gP$uy{GrQ+I#2jj3(y#TJM`s0lmz_b|bqG>kDkpH~uyJQCXn8(7C$<E>v``}4 zz2Vp0{UdcD)(IXWFMTx*O~l4TW<pTngMFi$o$SDy$MeVUs8#B1k2#-)wOI#`eckmg zBN+0IRO4PkBkrdQE<?>qV8R+^mjz$et0dW3LbtDY{FN^U-&hB`zsd@kzFGa7@fIfC zDN6veCb||+&mPsut}KQ+T)0q<B^?rcdJEmBZp>`@jnl4H<PL0Jy+dIM2YN#RHspR~ zLIni+_<{h3UA6ev=oIW%aRt`~b*eCRdV1qyj6xh7f($5cr7~BR;pN;E()KQ<;er6R z9S}fpFAUo5!!L*n-IN10N(;$=vf0*cZYC2#`gCYJAU_cYJHKeI9@e%%->``O|9S9G zS|q5;G1HBjV5x<=)}zO(2@fo~8Sg2?$-^2yM3YV&38OxWk?``?4`+SHu=pzD@?V32 z)xWzlyNWX*w-+d>^2@N3V~Pdfc((7;?B182i`+wj?Oua@F7=SmvS3$1V1@sNutl<g ziM6jj;An4|Fik{YED+JL-0&bt?KV{@s<HHHqFVZmL|}SG$qYd@@Su?g&K*;|42+~U zL+{VSU{7A8%ZV2oz;7Yq0)>ISztX3`N)X-tobSSO%!zirg_{8?1F9IbqD9C-xN760 z<GZj;LqAUD!-;*)uFuW2z0ekWLT_4PID@-LC99)!1eN_F!OkA_lZNOJ$qk2<U9i8V zB!Kk)Koi2tsehYCC?Zzvr$DP%kXMW?Ya?lEm=Sqp`;*R+;!DY`qqlTki)+kjqX=~^ z)1ESvLIEFK`15Rkhhe^$NXISCMYi|L>&*}!7P)lh8cg})J2Z6cRmRMTB`nKwz8Z?` zqX$uu0h>P&ccb$Za*maf-3M-VJ2T{P_ot4>SrF&QW)IiadhWg5LZ+P&$|d9qmWRWw zzxfd#JzQ&LW?m+aZ+7x1?kvA3k9#=vU>vRxdz<*GgXDkycbL%q<Cq!>pO0YLg^KYv zu9y1bhPkN;rW|SiwbEB+<<@ad#G`epKAE~14N|IXJ&JAIAwS*%|HP_NYLxK*qKKb8 zKzyEmhN~%IZ4p#`0q|nAMQ!l2We&Mdkuzc6q`UlV;-qA^An?eV!3_1cw9%pyVibMq zfwSseCB#wovPn}|ZF}0;`wAy$V?tC6@u{3`?d1EiZCiYW--}6Q-{}Cvqz@L19&Fi3 z6wWHZ{aN74-2NW0uPh(?_+mxr7#USFWPM9<*4x6;_r%D9`njS98fI_!&3Qp)eRf+t zW^Vg+XCKdUG|UA!%~FOmJ(l5+$T9@#!H3qvaikGanm<rbnucACGj3&?TFa#p13Uv} z1Blxm<cJb9y`P#Tw~Dv$*Ac6iUg?R0uec|B4=W9<iCFHH`t^5KpIxL27g8jw`PpYF zrbq(0<&XlCM(vp+GtkT1iVJam^L&OfYjYBh?9^hbcc}}r+N;omr9vLKmeWDYE~YlX zGlY2PS0kg3puD>Dz&<Zs=I!ezIgV;sX$=$b6;Z{B>&5!;+ldbbevIzUnz7a@Nmiyw zTUOP1o7KB&<;0pe$}Yuz(&5m<6-j)i>MWnPB(JY1EL!dXJ^Heich7UHH%^u2#ThtL zTmx?O--{2t{F<THANMw=I2oj(&&!?b?y;BmLl%)(9BPa2P)O^ORg#K4I8UKtNU3HO zBFzT4H7^+xNcW_>&zj0?w^jl?dV8F@MTN7Izs#WJ-=3IwtggZ$+b-~w3?(nGD>HR$ z8!Kh(NAH9RvOmg~9Dl4R`wg_ouD?i`UwqQLozJi9T{170AN_dNbt+BFQ*2~$yd@*~ z$NhQ*_coDnbBNdF-CJ1Q*F;eZEZfq0*Sp0+If1w@3*9+ou>K9c(T!VbYr+N@H}MzV zPtO)lUAo&sc7q7)uw%c!7aQOZ9<}q~>FPmq7Yug%#M$-N=7VaiR13PEYV5H1pd#lx z9TGPgl9|2S4rPm6;Pdy-N@+01+zxR)Bj-|OAoL*|!u(#(EdwvOJO}})-CW#OTqag$ zn8y8%GF*a06*Y&bWtpwfw$_WsVJGJK{1!aGvjL~70p>{2ou=ck#`D;g<!Su>=QMY8 zvI$0u+ltr3+CzV<5*INas}nRPxL9X*`c0@}f*kTNw)?;=aY60kTbohuK(*X1%XQ;b zNrf6w5LsQG&}ixu5}e^t2@JF+Sfp#YqJJ7Np|RjSbpv>Q{BGLbpD=jK=X!)47#7#l zYBVQ27p#uq6Aa3A2`~ze7}1mT9KP22oKi=h-hp|r3Kyu=(6P2AVlr{bsq>(7qWu*R z;cs{_4QVf4byCzUuyUq7kaj~{KqO~mA(#g*6UGLx^$LE|pX;_<8c;Ssv|YQ*$<SA| zJIj0D5ODAyi5z-zudnKE)PGFWjtXfVfR_4$%>B_^^&EBr_RDGyRoEU2_srmqFB7u| z<do@nXYc3{KfF>4otN(T^J>Y*Bk5mKsut&-#Z?l0h7Pq(={p<JKpK_zLj$QxlNr}m z=!;AhwJ3?k1T4d94+b8qC*35MBH8m~8oJE`Ot=G6Y|XTyv77nVgrZnBhLOc;qNE{m zje9j3TOLn^aucOL4GWdB7Eh!>(5ZsrKcos-v{}hRmxvbEd2f|_-x3cX17_BY`m&^W zDo7dgi|ajm$A4e_?g}uIkeh_R$jT~7W49Y0OP7^~JWiFe<cwOE?)5dByIx`4(~xTH zL{|*@6Y9k1xMxQo{bwcmWaDcLKwI}@->$xiZQJBmQ{q?K?zV@Eow1dBo|>ufvX}Nz zyJeI0lXsXh``Dotj|F55+PBrv73hMT0Y7G(zMaZ&h&cs#1$D-{3j$gDpU=B-4UXJY zo)pb7QcA}jlCzyRqHZXMvPO?jrWJ`RB!MPlDzjD1&d^{NJ<;~5UdK(XGGKkpnvbd- z0wB3Sy|zgYr9KgE{hlWu+;BY4v|`oUDg@ruU*|o6H-c|ue>lOPyV~am=@>+@Z@I+| z-dH<v??pK2?$$d#-uetj9^CQlgN{#*k=zIgT-Eb|w<adKt0%N*_{?Vnt&&)GX4Ljg zW;CJv<--W+2ljAjtuu*L0%Td`keNFJ6-;yc#5ETcA5V<VBeWoCNX0ifRo?yH<pOid za(5s7wb`iRQuSdO&+;};mfJxc<|v({aV%%_AtFQrm^$u78TB3Z^1=x}1}2O6V2ljX zB!!FHZI$Q67wsnU;gTagA%(ZILZ`Z@{>$WC$!kbwsGOh@ONM*aXCJZNabmuq3~hq8 zhVjs=Cud(Dd>Nnok1V5Qw@H`Q7LYy;<&M2j8QQS$R8CW3g&w%-99*I`)l&aYo2mlZ z<EsZjxJ(K3&nY1A<Eh`dyS_Hk451z7+?AFXKj!_zmvh@p3cM=&@<U<$`)_sNvT~K< z2ejEza$;MHm)B?1Duxv1VLdYx;r&9dsBSa$t#og+HoBNaTt#?;PT%7_WRT{M?RKri z%R`6QktW(;M*mjScu}TLN}Q+EjM{>?!E7*|zVwqrX_}&%3+Ox+<(;&^bh0o^m0?yj z^w5VNheBFbf!V%6)rQvJu?fqK+*stZrJ!}jM$}8sSB!pZbyP^vbi%*B^>KQUvrDJ7 z5COL(2g~&VD^A#{A|>8W!cZ*M@<n0l5&wBj>9XC$c`GiUj}zAO=JJ>ch*~V0^e@|K zT}JE*AD^n{xgChPcJGc3`3)N`oYpKcb6c-em>=uo5i+0fokKs#?iN^2mzXGUj<>}f z0do#AU^6IN-n?618k*PX)$uC(sx+F7hto#r^#h#`k%6o@y$@b|Nxni}1UEN5nr^m? zPtF@mzdm9s-aV*Y=N!w+jJ;x;bN=}e1t?YFJ)Ds^09{rlR57I2L7Aq_IuUQm38e=m zx?r~lEhNPp#%>?a=SU#?F+TBpjG1rwZ?-m8psW3erwe{);PPp^z7Me_FBlolDt4}- z>-762H8FN+%}7oU;+<eEWjvl-ZF`a0xLVw@JUDYg>(A{@;M%Q(D{H*^t$<Zj*7PXz zF93(%JHHLvjQB8F0EqukzI+R6n&lEvyPm_;jZQt2J$!vlD`)k9Rc}BDAy&UYGhS<( zz4-Bp0oP{R%3LojZh_y+6L9pWR$1EWd0bA+j`;ka{-&<v1@yuZr?+e=UDanKS6sd% z@F=RgZvT~Zi6>izGL?V=BgerKg-4j@a@>MUEBtdGLj6CDrfMuy0d^TrPYa|?h;U38 z6W=us|5SyjG|=w~rK!~Z0PDct0zi_c|JtU{C)U)7_$fBs?zdKpAMw?Z<*YwR5(9>f zQC?hgT}$$HfjL%Mv%!*|Y%A95p^wQ5ylKY~^NmL{dyRkDYszSxt~=%%)z}MOx%4IG z<(Het43pO)X|AttuC_-$xRaRO5gRSWVns*e1{(Zg&|{zixl6pO!K1lupC_#;(=2q; z%a=|at~?wiAo-}gRy(So-QkM$B7yN6sq<c*xM#{P>ikh~CBY?d_;n~P{Ob$xY+#v% zKICHLo<~&W8W)^8OI3#)`z(EQpbumzSa$v~dBwj@-*FyVbs4{TSEEmHV5fO`>0jC2 zwR_p#9C1<3io(Ev$MYwbL|U8E#+4i<oaLQ2YPIng!Nvbl8~p-R5H)`_G>B)cee*%v z0;yIh3`)*EOyf%rICqnz7Yf;YhMu9|CDP4jV{daeArzZ%TjivMQepVbIJJFCF4$<O z6K`-Kz-ab;rBq}<ylBn<_B}@fvB~Q)6m4>#>0_(U1iw+%H4vPw26-Ed-)%F56jgO2 z-xU=E{5r`SN?ol!j-Z{26$+w!=D?OqKa{X|?lEF_2|v!XcEyb!aC?u2dkc7_f-?Bc z_QldzM19YvZZ9#^5SjiV7cL>W0_Av_l2>958|uzrd%IuZV9q@tZzU8}{jZpP?+5x( zFVo2lKJ+I@hXdWX*TReYxm;7mSH)>{$3JwwsS5g?^m1<NKedyUo=|zn3!;5CO+KgY z!rC;W%rhpKkr4|!MD{XGs&e}o?Xs?pa`*W~24T|zHE}s7)oQ!W&FW@moDYvw0V&t+ ziK_I|-9bpPJnEAU*!Q>IvLYC!7*ap~E%5JG<&{1#pwB?fw_5DH#$catZv-gxTsw-} zA9TG(19f;J_M!D;zVW=CNhK#TJ2Kb)+0hV5mR$|*x`h2YoV5{6KWTj;F@w|BaFb(^ zbMn!H2dkYvVpCb%Yg|4GiqwYCZ+v`l`To5Cd)gJ;n}s3#hL7wfsG;a|;;`hG)ry=i z*!#Bw;ebPWC9qbrSwjb0Hz<$4!oHr3D^)VRLB@CL6N-EU_~`A38>9C!5qF7|_{M6E zASK)~$vjoN1W1IYcN2L8g_9l+ZSMW@mu>r`{{8jRn^&XOc4sg~D8T>dRLcF2jWrq+ zciEiwhAKKevE07XB=A2SVJmJ+E<@Kv#di`Mj~(L9r;n?BiVl&hk>Q~E@i|Ew73?h@ zKjFp8>J8~UCiz0~{;$=kB20RK6GJ*4p=r?0<;@Uv`1~RtBH8;0h+_sa50O~N-3NrZ zl4ObDhYF}GObBU?9La#MH`air+`@&YA5`NkXCTm}DgOq2L4j|^+_IYnF3@*j#TXO9 z??&cof_A3E(4o_}J-H1o^$+PvTq4f!!2Q+6qpg-Lvs6&!K*N5bw|jLW<v>?Si8`S? zorUe%3AIsQBw7|4Fi^ErU)m~E!YE0QwW@VhhXq=h319nTsM<nhma$63gbM@)hfdf> z3D<Ar+ud3fP^C8p$$ia944BIv)-nDFcX)^uC8C1(V|xU!KU6y#QSnK^5+*fVkG*XY zRZ^hY<daY&D*Ir7bqb0)ABPS*d6*HLv;20bWWK?VmK^NMIKTZ_?-W_27C*G1UEO*U z-Z)uhuF#(7L#{Cl>J1%;E!|F?+sf1tz&yg~4qqzSW?*rLMtnJjQRhRerVr+8?W06f z{9kiIk<nX6#F(zXV8f<M)A)c~XvntA0mfPYq|+9}Sgx;^KvsPwT*$`|rocWZP&e1} zRd$G-7q4Y_3-Rzi$5X`Sk9PG=CUe{rr{;r9_<eZ;ruXgQ7{+cM-TWYZNzh-saDP~5 zu)yaT??SEEiGDpm*Jyq7Hg-a?N|D$OB78)whOx(P{!Pt>-f~VCkb>=Gop@03Wb7d9 z8vPYX5-WH4HwI>EWLyz-+zRg!xNz6%Pj8Y~!&>Fw#XchS7fpV5-8+0?zOf41JQ(_9 zKn-^iE>99Ryi2M5I$8Fa|K3!WMKyVLG^>=na02)EM&4`6zqtBmR9x5$W`lg64En2b zc#6BLO5@*GB9^q$L^Ic=$#m7##p{=_$`3=&K`0vUwUL_14cJi-S^V_4>);DX1S>hy zWZ`?|X#8ah86{J3y70MxK4DE&2hQ3gy*8p5IK>@(8cde448POdftX1wVm-+!=|)G1 zxNoEcNvxC6Luei4rO79V>f?+f$C*!8`mrUZ!*7OH<R4lqmYFPkhNvk5>uB~fUVI{z znqspH*wrgC&kheehbDZ+GTgSYP3$oNfiVPLrG)%Gy^Z^(*^Jkpxi6?3(f{ib5nf9c zU@~$K%uRe0cc*#fpFbz%#T#-61M{8=ZTt&&d%%7g=9P%6Dp}C-m)vzG`PP3lH!JOJ z_<4mD@zATWq^asfaoxJ_Ja#1pG09cgyM+yjT5JuYUsz)gWYXGJpD@WNR0I!mRa!1j zy|vKGSm|`J5rD}FfmFBqm5Bd{%N<dOZ&dHFIiXv;z;10UpxU+PXTHvZ#t`9Axq&kK zLRbDo<k^S|p@WD>iLGz&-ib`cN!%j8lv6Q_Et=pN{TUyhCN`L(_)TZMAxU%Ih<2Ne z6)^6OY@#vd8)?{B<uhJd{a|o1m~k*Zk)%fnyy2=`u|YSf4IEv!u%xcDl;hDzXVwOC zLWSC@_s&~^`uFp3+e6u?ZNK1c#nU`=5mD7QxnkcWyZa%37CC-B;NbPJ5s++49|ugE z2=$w`vHS$z4uVy|rJ6UUk$<of^JQC_zkJ2&<{}Z@(8ZNal<NmOE)ZgvY4MX}VDO@k zebU(-lAD_n8@^k^1dD%K?&Gasy^sT}I32=!e4f6@IJt#|x^G>2ajg`Vx2Vbf(WvK# z1%Qh~xlO?J<I1I*^ShAexof$*3{=!=qIa@uzHm>g$FrAfzkk()2ADAkU)I%ID51j_ z_-<@A7>HkJ-rih!J@W2hC`5UURT9-%IlcJTgjRuVi2bYoKHzopdwqtYDY-WS=6H5h z&-DQ_PU`6GknP!2gRd9!NW7?(z6k2iX^}aa3!+Rq;<s_TlnVj7aJTxn0yf~?`WbKg ze{H9~1Fl=&ZLV_?LP<e0V>WUH!iV|xMZNhsbf(IcM(HjVYgoX3VPOI)GpPq*xY1uJ zx@~cv4APuhaWg%o^3!8)PkOPo&Rdu=H%|1vlWP7ms{lZJps5aJ?&Ye`7v%AD(eA}h z>W<Yi?RPC`4|fbfAom$n+YF%kyM7x{I`uxU5v@Y-CGgbUkWMIVqd{NbW{&40$WU{b z&(h0a6Y8{ko4TPoc{z|5eij>i7;yzzH2P9iB1(C^9)xASowLyuM~9qRyN4H0>a84$ z`*qQC&3!3PsY&qFOP`uU_GIzFjuON~*PC}1RB1QxGJJP=L=5)5ui1w?_K?$hS>6(M z9F9HQJoQ?5x*LFSpdDP%)tP8%NtUsado5UFAbY3uwl~x0m(Qpyeej~qlY);)$m;-u zj|rE`4c|dMKb8cXnqZP-Doj6?*%l47Bd_Q8I9=XQH6pkM7p3~hf)R(=U8dVF)rCh- zKi>l~TiT4EPy(iSVi7_=*Y<57`G`a5QcU5^d=v8LLlba-IO;fCo_Js3F@L~Hx~UAf zEtY{_<y98Y>fEe9vsG~XqQ}5)y6&c#3@W<mA$PYh6{1`x8fCk7AauB_fE+D<{Qbb; z!Gng3(c=Ez!vImkOq=<vq8>#zoOf!-1o}0>=#GnUcQcL2HI5wHxyXp~4HQ(6Qb!V< znC1!YNdkYbRXNq693?58BK7bl^=CimEqiW&&sF#rEa@>N>XiQbk^yk?EB6F#Zl0d} z!!}QK*uk)HmtCBy1*CcsM04{<qxFG_w<LJ$ZfZ#U?tM)2b8LztXKPJjYl5e9-x|nq zb20`^Ka1E3x4T$t3u)QcY`&8Gh5cJ9MjehgVZM$y`sv{*by%j#Y)z+jz3w!Jsq5gT zS06Soi$Q<J@7&TCOjGGOQ*G?R+kJ4WYR%TsdM60p*iL``(LgWE=ar(gx?H;9+xkjI z{H3Z7X6MQTNKJY}@M&jVU9?eXi-nvJpKhnN;o>v83Q?J>=~F}F8ix;zWIbP=3IaPy zIaqY9Z#n+BynK!H{DHp^L>PJCV7*{E!YCkyY3I3_vV8azYko?0;3{~3>p!rGFHvrn z)~bX)?BGk!nKLuXqaza`FH8YK02zPp?83B8AoldW!a4en5}~nnS?w&G!ifc*YI7N) z(pT7@hn^5`ppPl57}=27!nE{~`H~!e)yg(<Wg{;Cmfh@RY17+azeSSJ{d0I_GjQC@ z<-GA^{M2sn%!trshbW9T>8qdq#ys=~h@-ixx5`fNkmX%5I>}po?y?F;sci<$*^!Uf z+tY$)d{UvyxTs1AuyXZgrjvlcxt=iY=?CF=?DnzWP11D$Y*iP@nGDVMy1Huz&olv) zS#h)lH$S1Y1>H4TYJN6Jzn^H{&EWIXc(^nm*c9dVlALF_Uvp6hG!<M3877tewzzr* z>=BewmIgDEk%cCi4Q)d`anE?&qAUo{7KtC{eANVj<TT4(+a%=;9DSNvJ8}YGoaf?2 za}J!}lRws%ekT`BuN4nj4AUX_(C*;vc%;Jl_IZQijZYnZ<n*81Uw}7U-UY`<I_>?} z5m8Wxr@Vo$zlk@x#C3^*;eoo44en<y*|(hG*Y!IdXS9E9a%36cp~ms)6Ml17tUukb z+Bn|qFJtjmWW=Bc+5^SMx7hvtym{Ffu21>b!>hr+=rL?XMxoP|%i^l>18L*PuUK6_ zLKQ!om~d&_15n&9)GwP9N5L#~O{<-1Wrge{6UJB}-7XLqkD-%fY#en9uNt-c4?y?; zuq`7E$d+`&FM<uu4q;~$^f$O0fB0>8@AFtGm~)*!;b)q>ok#HgaCF*3r?=;mefeMX zYBqozkGE0aGf(Wf-T9$HZ1@iBk-_j}cAzg|1*FUEj;rjj;9fL`y!6U;t2dKmh+FyK zLKA|I3qK84`qKvPMxFA#R;!W(F7|;Jand-G0N^((VgQ&jqB>z28uqvBq)&1+dm4f3 zV3mqX1qZ8cF5Te;b?1i}^u7qf%OrSKp)<$rq->C$YqErTP);KIo<(0akf(v2+8v6W z*}chuF%Zuo%_B|28AIorRy%2PJrcv+P@SbA!x7w#BtJweTVw=>Ft=K+XC40WjhtP? zA*OCaV<BK3{4fqE{Y$JvMG}_X5WpOc;ty)HVPF00A38HJH-urp1YbFqCwGUj6Az#X zm^c>^+GNY-+kG_l`~DwjtOy+hnfJ_s+Po!uJ3lKq7-;WLjmQ8?E7$vZa%tXc+PATk zew<0r1iTuHFve%eiEU;-(nP#u<gP-6EKV$^RH{#QH&Z$J<Ke<iGp0CnMgZ+(ZkO{d zE%G1s5gnCKmy5N$U)sw)Gfb@?g|f)N;Q9J<LYyL+a!A=%>!$3foh?w`^I$hD+*%D? zl|3<&j_Y&F?F(5~TPRz5la8mVTO|Su&>+`;EyrQ9ww;o=#}q2uXSJ9KH|+w6JU@C| z_#p!BkDDSp)VkHr-#J>K3{65PpKRgaZGrIH0p3~uIA?+yMeV}sOqy~5i_zhKNn6=r z$Zd&}SlH;8AsUg>ZU{WYHbWgZW+LV$4HgI^5qjP^hL(ADw}G&TPi%m@mFJ`SK6D(} zo{TUJCTKQD9JpWNp=4_FX}eu2vcRA^1Teh6+Sj;W<FfpvM28FIX^M<d+taMjHI6Fq zd3}~%usF&z)Kky0aFGC~p#qXpZvWkPaTCWeQJQ_DDT|3=2#Hh_;ikCGuh@`Y4J#2d zrn9A7*Q=b;8@+Ad@i|OgX>C*rmQ&22cBrbD=h@ej+Hq-1<OSLk5ys4PCT7hnKQTNL z2jwG6wL|xsHPBeCt9*pF6$tq6aFHoVip<XPg+(1r$ZKQ<gkg;kP`=b2P)jm){o~kc ze@8^}>hqEOzWcR;?tJ%&_P1Z&G4>qq?nUiQ=Hf7>EDb139mp5dVR>1`wvqmM!=<$s z7^KgbWNsvbid>u(4sooS9Xd|G*SJ|wc-*`Z{^9y*pWVq5Zdt4ucvHlZUd}Bu@tHsd z^jfW>bfmacn*y84Min)Y30*drnB~(;MMN3_@GmHycUBq<n+CWL(#u8M3*X?Cs&{>- z-!>?be=Kyb=#Jtg!;{6;`Vx0Pnl`&Sj5vB$THo$VMSN3SxXE$)FX$!TA-(|DKZ=c< zfh_%M7;6%*X9Vdu1d;32)Hp{5qpO!~+WNHJ0@qG~1@Afxzcii<1NLrl|5@M<dTr@N zW%F6r^xuM|BcK)4v=^2l%}(vkOo4Z6?bic0)ApC}tVc|{2GMaCgNoLD2i$j^i$0+_ z=6AcMQiRb6Jr8Z^wPEy$__@6>dD$*o1?@z#x<ezq=hABbs>&E`Z1F*W3OkkJbL}=> z)&<dT7Jn?{bK$115ZBf`7qK4EjH}9psQhxus;gLJ4p;6o+;NczoGCfv(yNuhVjtHu z=`m7Q1aAGq6Q%X4E^cRC;V6r>_c;Rdo1o6g0rFmAoy|tp-X(hLDV-1)e{-b6x|2Hg z^MJHL`+dF$4CCvM-_<1}NM9atv2odC|HmB4)ACLE-J&cL$zE@7Ym_iMdp{kXtgAd+ zzyr!f1Ps$2xB((-zdOWVpCVCisE6~#Re(3skTiIGabEn=rSY|s;-?1%-<FzNCT(33 zhe?_9y7$a*bM6)&<-iSFJucmKC)IO*T5Z?*wGLaV0EsKo##{Du_IL3nQ-#911RV7| zXU4$!qt>J=JHkMFcZ<if=?1%D>)Wz~vU3<Uka+wo_`AxS-!Xl_%=vq+o4B9sUthy) zvxY$NJ?ud)gUVWj1i(ziq;BzA64T-Hn*w*u+dAArihjkVg&$MBFkD!``RmHn!2JW2 zmlwOX<4h~ngXj|PqDh|%<A46q+B<#(J-)WpT;y--DKuY&`f0IXKxlYQNdL#!1O(sr z9Db)6=vAq7^IFt7pcvA|xxxoTJ9#-um-{C+EYb|MGu`Yh@qL>TBE}a3n*lGHIbk%Q zi)CboM&$s(4I=JV#t7uyZ?2d<vZv2<5|D0Ks!y}4j$IftMljrpDShB4!k&YFO>>H# zx9iL8zFagMS7UhfOTowTiP=I{;L}tf#C@~OF+$O1etdi3eGkJj`~1fr_Xk1~)$eCs zkNbRg^V$7x$$VlXEdQzJ(;oWYiE<ql&dDyaeexuM=HS<+a*x<z#_?Br|JZ0?hgS_t zsx0V^=vKIy*szCjfgj!5A0)3|Z^E3cRPb-|RuWLf4s1-c2d!pV-^Qm%#mTojO6!Tb z+4-LOsH@L(-U%&u_n#(9PpL2JzWylEG9Pq&P8wf;Jzg6$ODg$mfNyw>&t61kOgO#( zaDh*c%KVR}OmNg7QWUoBMY>hA=tr^k?29fDJ50&yp>VFzWmKfcayRC5H)f#8*wi7M zg<beruGC;pCSCsQ@GLjjo=;4B1arhun~)wn^xG?IZKD7dbuH6O_7Yr{yx2+ZX^)n7 zp+DOxv~G5EQTsC?_Eo5b{=_<jheX$W$(63^5RJS_(EJCtGc?)z?V(W*AXKZ;ZI<xJ z75l`B>a2LJM;IXTzq`?$XkR>=*TOOgc{#nj{8{{>_~y^3a|^&vX+FG@$hl{XG4S8G z=Z67-%G(f>Y;lO*?`AWpMY>fw#>U(*9gPttyL@p~M&YFc*p{_l2s7FFPd6CpAP(iy z8pup_un2*FeWJ(uGWhV$ZL(-;Il`x!kLdO4cs2ozv{M`NJyt#9+vaW768c^n|LU9W z(@5>XWt;1*38L#OXKxB0_n2$&Oqsg9b9?^IR5;@OsE_WBZAZo?^3H9*JKe4nrRSVN zPlAl!pCj++OY<%r)28n|5r#a$ulr=NKs)sppTtX&#&4zL#LatBEc@y~9WFFr;wC-v z1qALdk<Hmoy=2Ay3aJBShs-$MP-8MhO0e^b{i`n;(1RyvWwkspY?!plGrA)L5_{k5 zA1UmoS@EBuC5iOZ<Q!z&0}5PElO7uXq`Y~zB`lB3n|69PMdC!_hNR`x(lInUxF+5t zws64cKHhe2U%y^OvB+-K7`ND0)3mRr1irshjmhCrw1jz8_V_BuazA8oUs?esAii!{ z1V5%qk?tw$3j~k0wQp3XLFp^ay>F*zMzo2oJNBFLM5XMJN~2&sHzb?x!oD#b%(wBn zK+JXUW<f>WTMsb|6e1tx%;}!3ZO%(kn{rJ%R2^e?ju$*%Yep^Gn4tdyW2L@dXtO07 z>(9<a#J4RCftTYuxMQO+6Nyd(mVDGj*w42Amf;yE)qa$mOWyQtN9xG%Er{~Q*WlsE zd6yl{W!ZQJ)8DV?mMqB^-r$I(&u+ADLAgySJl#UqZY!-ZF>5cXIM5I{Do=3}ZU-Oc zkpodcIVDl<4~oLmdCdm_ld|2;Bx@Z-M8h~V#v!#kL6uX-_h!Sc`)N6%>}*jsWOzHz zNAW+COoy$cDG#!!(?mti>Y>J2CSZqC<XMRK80M2ejk5mVY>l-rRx!yFS+}k7BxOUu z&;O#-R8r2B5&0DWUQVe<>!YT3pVlERuMP@7{bMYzJ)q;ZIwdQ>JUZ6vFl|EMpgA`W z3cbODkm;99kvC3h+s38>TWFGZN(Gw7L|e(t-}ZPacaY5=t!SXuNwLaDpZ!;sgx_P6 zU{$rXrBWZXQk#?8EM7P#D^4?QXbEHj;##F*U5!uCQ1z4hD&0nxJ=tc~2f%zT6}1`w z@`{&R?Xoo0bjdV#@<)2Hk))h5qFL?cHj*T%YL)m^?dGIs?f3uVS1Z*cQ^wKBzVGth z3oqXJ(h%jgnT;ehE1sQT6}f=p4lscQ!JDK4LNy;*j~iyr{XS&hYwh66AxB2k8X`8J zHgz4?+wv?#r~-KP;NGk4U#QEQORP6a9H$mLAOJ*EF=6xAd7{1Pe*aISvSjaMo=bBj zUoJnV1Fb&)X&--e&9bp<(Ge$O(yse+d9^8I#FW|nv+#U>P|VEBgS`w3t^{pi%RV`F zhUd(Z!QJI=IiOj0fYbK+(wm_uSH|(Lcs5CYzyz_@x`%^O9KHsqmmn`brZr2I61)5% z`z+rs>wG#lfF(ypX!Ec^>CerOz*ho56|IOi+*b8L@(%gAbX>eh1}7&AGuEyxnsu;E zLaObbfzXUr@~C8ul`H<K>B6G|nWAVmtX3QyqdwP9smk$Nd<z{W)%`vdH@(dtEcN*@ zb6&FFQzSIZ20KA>MKXspp);mli|oPA-(G8#;+^&I;2lg`7VsXFA1+Z1_<88HOO2AM z?zDtMGSbH{a81?zMsNAM*eGHOy;r#8*V4VDCI#vir+hc1EjN-(=u{E?z&hu9yR@*= znT5DGVUTFX^j?o9s{gTxRJ+f6i05yDb-XLyVG0^B!kmTmd~uDx>2OdKqCHqEY+pjq zXOCHzz@CvS4qp7ByBy2%<LEy-^M7JlZ=u^3XP<U6_{acb)0&O{mozl`(|_Ha_uoEO zT4}$xyhtA#9fhUXoo!}3w(I$rB(FpZvl8AcSSWOdI;+&crnNA2`r+N3E_FtsVbe*j zA6-|UF+`?xtr?D!&!?r-Llggd8PAy(G8Bo@Q|aCkcYYUk(LC{@@4=6C+ambh{n45k zu9g9D-6+42_xD6a_P$HlN9mm8Mt%-{dx9!r5O{elez3f69ChVDeqns+OQ%KtaX^~l z&~eFcf6#xxM>w#sKgUPI+<?nPeX_nL!*=>AjUs=8g%RZ2+1@YN79U3Tnt+Au?_A9F zIE}%EuCao?`8@yUZdGpN?IZT)?dv=I=AT!cPF^=B$1)EJ<no6LNh$3Yv5d3}Fkj#c zRF5a6D;uLJ7{kH4*tjRIwRU!y&PCiLvBF790VG$p_h`6RjlROU5R`E0zZen%)yF3n zbhgJCkOT6n4@9kk>Tf=pI2*!pV9Wk&+CG{D_Zx<COT<v;>x#4kW`^n+O)G1&;!_&@ z-t}*74i|8ZO?tOpC0y0Q+T3tf79{w$h7@v$`?feNh~Zsh7D_5adq&zCDg(reg>q_b zd(6!39Rwe*sV#7X^Lu({`OO!344QFw$H7R6N++L3?Z%=YXttSMF6p*M%|K0pX!BWS zpc3e8BQ8=x3EW*1XnhtSVP5q!#NlPhVjh`XHQg}N?teug9{8u%&@u<`?2+&bw_;1L zj_Z7G_ba}KF7^(~xX~6LX3<BzMBJNYws)Z6WGJ`Kwt1N6Vz}P@l2%^&*V<dNgbL+j zXAi~-LY@hj+{5Nhj+pe%5O`$W!1lHN`#<`#uHw`<iCZ((qm3~-qhCDKa-&;MaxG+F zS`VVVKWP*H;6XN<ijjKRfZ;acC;vyvbtu&$@LA*BP9$?l2XV0FKGp6JCMF@j!1W^7 z;pT>j72m^FUG>UG@ZNAvDXw-<TcHNivMGECdh(xzC+hTWr)b;bdmq}ibG8(-jd+p^ zHZu3cFyF($-rs4$QQmi`ZQ@Vk79PJO!49XVquAJ%-9SN)+%Jg8<{h@N-Ba#1k(`<^ z|C!y%e9KpPwpPRe>(w{hsje|hAggbT2jDSSM@7?`0hKGGw&AbHOFTfc-IlNr3`W25 zO2KCR4oU*zv1*DxQ4EYgNR?@dn-^=$hY6p2pQT5kP8XcYT#pFV{UMah1CO#O%}QZa zuRR@%ke>11iINkGpo`)hX+izWW|3I(fT-;Iv9tvIXgO)R+XNRoBM`}Tu__PRh#>xM z?D1$v#6|~rrIesj;$m@kfcoo8RbL?uB6YLC>T0pYCebaH1))0)V4ps-9#P)wSKcPO zw_aha;An)2|EEN7f35Z>Bm^f&Q~Z_<^~WP2EtO+N5U|3+Zc|&JC-e++%aUmPq^!}! zuqHhNn6g{={uUb0lI!O(J^*r@_ocu82`;OlQziBz`vXmIg@EU&u701v`gRL;DFCln zn?p(dH~4^Ck^7bEsJ%o^h`lZ4(adC0N9l|kC{Y(9O8QqT^$lOyQgrs3K^)3pO~A(_ z3y7V`gL7q@;|&48FvR}z5Gi0!XR|2+Hx>2R23!d`e}_S--2tB1XZ*uQHW_sMp)c8c zsPjF-byY-#aOV!UglFsV&zt^MeRf>ry_K#r>U(9+=$KUzYmkPD826mhmB;qda`NkZ zPbWt15z<S1qBmLlOHQ5uHp(ibMcz<*B_n8Y+m`Q-F*+P2z5!#w%#ahS{ZqLtNJ1X+ zo<VjSbYoq_&U3<7)Hg;uK=NWu7>OW$9{2MJW#M+g6)e;j|0q?rU>{{)f<G!tOj-YP z$bHC3T-{ruZ<>Yasl`n_Oc}oy@qhh6tP*L%R0-xlpaEku{??cXG*Z4REw+P&B@ddw zi3_u4dbTCmN3nKsCswLz)=ieedw<29^Con8Lm`A6Z-w%_D@BPAu9?f18J$PpkG|t5 z%}sdbY9kbuP<$PA%Y^2k@?xi>J%3in$CLuY#*Z<zGn$Z48|B6i11$!2>HNnYL!<j! zPmQ^62<ckc)Ib910h3Ah6_4I)(r0kwT(AG2A5<557(Xw@S^xWpuAi#z*)CJHbC;yI zoN6}(d?sqW$N`kG?EQN|ryvO5A1|}>@p!@OJ$QH7Fo&A>IWM>2E*Uf!u@cM}6LQ`| zQ$w}as57DM(Nxz4qm9?rsJL&ZSMi3Sz<TOB4S2)yz$i3He1mz6`Jr<fk$FlbgWbRP znuh9)XTe+_q&^^j-2>3@hk{ygV7X>n*IOAV<%y+5>?;KF8X_jJ#D3Z@r6go@c;A&i zm*@SwlC|B7nYL$g#gKXEt)Z~|!Wr1%I@V%(l|{Lzg-P>7WIIo&WYOVv^fI8pMno-q zf3NvStSQU0rHQQZ!vWll`vSkQkt~&y`SaaR_2zbmu#XA>FF8;2?uBGtdK`Qmog>!V zqoanZ<oGdep&_2366Tn<?m?sEOzAa(l|tg4*Lz!~lq`H9nxH=u9^!^H<6>Hm0D?eX zwTG;76#pEuP%9<pKQq!Inp+!fFmdx5ajilmGgQsW%jI9~?ps-}?%<{3xj$yVo_uLM zOE}mFugq!>r&vFQa)5et)RRe<(w};byrDC$sXciXD|M&YUQh(|-(LE?F!MHeA>DHA z&eI{rF;lhZf|#QGu{~9th2YbQb!XN_b^8wG05U_YGT+-<?>UOH`6o(_bPdFjAV;n^ z)D=yQ1F`l{=iwQzgWLaM+1F{6Y%;h9>YTlBIxdx|4E}G2jXZjJ4h?d|^1Eu6G0a1^ z()807>Hanpcw>JVhpsS<|D>7FdQQsvao;eYfb=90+00rCEuH=Tp%+oO8Tre3fSWg4 z=~pFA3~=(fMV6}v9k4YjDdQ{p016-yd0;2`#*L+^Zs#hO;i-cvX1&0v;*Yx4oK;}Y ze`!y|7es^$nF7AR>llHJI~IO~?-$m>OpA6l1)oYR6GEbY|4lP>Xq#c`ocNas1V?^_ zb#<TUSSUqvg!>^<ot9R1E0ugI`!BL2>>n0O42~+5=yC~MTv8XX)}3(B3xHVd2mJcZ zKJA~P;(<F@LGU$5O+Jkskz;CIQxR|+{!r47tre7tX7Dm8wmws_T+=owFXM3xvqmnC z`tK7`?OJXh#TtTIWaa~omnFK1%ZYI*U0Lby?i#HKIJyqhoZa68e-SqjQtbvf?wB!p zSE6t6e>A%tRoQNlEw#}n3Rg4!%g~|n+yJ9%H`Ac~`0ah~F9{w{I&0lA4Y#Xq+U{bx zzpkN8X~VTMi%32ZV~{J+158?3{nRDzNBUR}#PC6`f@pI?q1VUKWC@~idy@ACEqga~ zKE!xSc~dx>H?Cg!9UANnMJ4=wcb@#Z?|M!!Cd*$B1{pDaRLFj=>~(|s9bN>SOUc-M zG>^M1_W<QD=h$hcMn(mByd`Ehh$|=$P7;x|xCFc4k9;KV-OBcka0~Cb@m{78!$(4G zqccr;7_$*B6+*jW#l{d*i4@r(%KNVhvE~|CG(d50i7AoMlU6k<NlN9KMR;B5sJ_RR z>(0MCNmPV1_*q<71-dOUvHBrMV>7Adx<O;Vp0$;~2o>oRQtszFYH~P3Jr8z5rQU2y zjSh9IyxpvPRbsemTASI5PjjvyT!j}m5X)B!JW&UiUZ<S!{841tYxPsR?v&;GD*6^t z7kSo!_aMgjb^E}O_bO4iaq4~;zf8S0nYE2lg=5F75&k|sW{oz^mO%qC9=}ggyM<D% zu5p7swJd#Ce|Zc$Oms^&%vuOP?<;|lOSzY$N2R|Jv8|5=m6!7yH<04EFHYbJ`4bLk zTO_jpD54gNtXk|^2E`S`0wjHBJt+PstFi$sYhxJ<Dh8F1wiAuu<Hu^zyD*Ayb>~qK zhDx303fhG}``2{5M3~_iENywtve(<?^ZV&;5cMv?rhL#)?M=<c^k_|>cR>K*6e&w1 zZa4$cxI5uXkD5n7QOtVh_6j^mX%p}9YD*$y-#I5VdC_guk!HVcdEJmxu{Go#;CeJL z0x^-qdG&gO!nKI;r9%T$-T91|GDzcBLDO?*L%|>sw>J4!=dcSE!6~{uGC;p?GOYVI z4L<r58EprY6dAFo|27Y3w@Vy~q`V|QFhO&u%ow3dmYvT}m4+nD8Ua#Giz5Jsa=szj z*pf(doS{-L8~RJY-Zw2Ze)=F$!7fCkdXAW!hZ_0ad&~Hm;uq<!JkGN^%+R&8Cz_zk z2Y)OV-;^Q+)tb*XS-yK}F|>O3@{J<Oi(0d<phS-I_Qms9>~VLG3#m2)s#!^vRg3%s zb-(a#jOsW;TM~Punq6>wJxzp3$g^De%eJXV5%06-vp-%zy1!60k67TbCzs&62)$OP zY|nponwzr(Cai4IWi-#8qQIsF@Z6Yh`x9cFJ+~TU6bCqP?ayp+{V(?Loq8DLOA3nC z;yWt|KUH+=OXKvIEbBbgv5DiRmYFE06q1^Q#<>@tfBV~N>czBci7N9B@#?DfIP++W zG7LFBrE=&Ox|`N5)4uox5HeI<G|qNbMs4BHqnJ<ZK&6Seh=S|k?21@jWSkl<b=JNw z68R@OaPyFKsG-vp;ADAK(b`ATl7hK~Yi+<hFBt@aa^b;`R4ZG_UrD2XC#WX7bJ3`y zDUXBi7z``6&04DlG(R<%h7#cqI!JG%%nRdIxpgoPu}I!HAlVX-6f)zGdcJ%(f$5gx z*Yw6lSM>c$C)yDQbh`0o?TRz5;r`pJ$6K$uMgWHfne~tEu=@2b>hbGwLo-O^e2g4u z_vWn~nyr<E&C6r={!2)+?cEl#yIf|!r4SYN`PJStskwZy>R&sC^br`|b6he&YyH0K z*QNzXy5IHQp662JP>@DN6|LACbH!{L;6~|FIWV49CeBqYTpQ>%s$ruHRbj$-r?A5M zk_0kP&=5BXm6<!_uj}J-{xSceko!cVmyrq3r){vu6-tdFRcu#vFi&6BSy}ix{VsGL zOsiHJH+N|z`B8Q#To5DywErTQMUTtxq?v#{sjRvp{j~XA8Km{k?fn<zn(lC$4N1OL z%i1d~_>LTxeXeC`+?e5Dbf5I89hW<Zm%c@0Y&CPuX$^lVJD5;(z>ShJttmx~eQ)@# z$Gy&IeiQ&WJt(Ut#s*>7QEkR&5Xuq)mn0zwFJZ$`=e=XqcI2}2g7FI#xDCBmr^adN z>PH8f4Yy2tllm2%UT}@KR{2SR&vH@f{BuAb7pU*yDpziBJ_0$;pOn)v&@>C_C$7;5 zBSjzH=;DGkD@X0t%X&s_+ieR_B)XA`8Z}Bje%v4;9a3%MaX44FtD#h!9O)rV_P@h# z`TSIqfQN{M|D)<B3cowC@6OLMrCm9tga`k*T(R85>Lxt_c$^)io%Lk-A8$tx`VAo~ z%qQnOhg*&Qo9JU)kFa%2!#r7rkbrtjt7lx_vzzl+;9Eugyiom=W2&hVL`zi<Maf&Y z-38y~f;DbTAFu}`dhS2!cX68l!*pi9`!VaKln(-McXL%;Q7-;=L*%DrPckK4Tq~un zz36IG(BZO8_>!0uX~_`Fak<Cf^@J&iSjy}4y9DvyOVA6a$hg}B%~5YN>A8_3wR$Nb z;!|1HM&**Jz`zY}h8%B`Cv~4)0ry9hQtq6L{DQ=-=N;a=O_GJk#H=<!ZeJ#))ej3T zjNOKkG`qy5Q3`8Vvn=9}(3?!M*Q<YAEx#QRJTCtlr}<BM_7f>ia17J3FuJnkHV?HV zv=G@wflzq790w*^7H=NYk?9x5-UpCx+&-6XTakanH7M5HxiOT^s^Sv7ho>{<J^^7+ zIg?^QU2Nd~n)jduFW~y(=dZ9+Fi;fc6Bk_-H~IiMfH)8buPaSV{qwQyjd|qTPa>^K zop#mFoXhbCE><6$mUzrU3?gnpkOl5&!%(-45AE!|SRk9rAA5lwZFGeNHe~a&8}lHH zj1rW$+>C}ETKkVkTA;)fX5DLl-@EBa+p3f&UZ20co^+J7AAi1q;br`Qp_0V7ylNL` zJuviybC}uV`ag+_)Mo16Qh&T8j4Hy&K4*j9b#A5U``5=qlEM^mH>UfQzj~+aVB%(D ziGJggKV6uYw*Np=)o<VlGds&}i8v*JA*+)U`|0rQO#<giDRjDH(vixn?xK3n8Pygf zsAc7+u1dC}lM?H`3#UVqjxE`CE!)0-Z+Ar=J>aNWs<!_fN!m1k-3aINd_fI2J~EhY z=u$9?2M2Hd^7k3rP*L{!9kSG<h*y;Jo%7k9v|o0^b+VVFfGjzA+X5NOFY(<EIZD3I zk^|SGz5hru_OAQ=&+1zJ8tBb=5nQQ$*Mm3hKC3kztH?KBIYeAE6+t~>C7CodR_D4; zHQvxihSNJ&N$d?+L}=3ykv{L}WDK5s6b`JoDX~yrZ+uZ@-T(HXjg>@0g`RMztPCgi z;yqc$fHmf9DCkmxZwLJa>zZ^7?Cf-x3ZXQ_bG%y<zhO1Ysk7;JQWq;Ldxw8fET;op zW#gf$6MXUI6(P|lgkOh0!16^p;2t%>@+nQuS$lKY*5Pp<xGU|+IAQ%n7IyGlfG_eJ z^i|*+kd0leVWrQx7^?!-HSag~QOkC`M9)$+gUZ>`$39$*9zyr#N-}Wc8Z^<0LCH-b z#OmUS1-kMq&!5zpIJ_H6{f#K!MV)5DVlpYg7B`mv7CrRiFM$Vsn04>0pwEuK1K#kF zCw)JK3W%@OjK;bAqxXIXC}eF1+FN>OFN7|kyuUM&lzU^eU2hgx2ei~00QNG8)XFt7 zSnwrVjWi+bOq~)1SgnX%&j}K)pLu(13OkRn9qWUvGDHewhh0clclrjQnU;Z4C!{n! z4aT#I0@uX2;ZLSb*o-w~$*Ievw8{i)_T2#0e^I6hC7%9&!(ICf6&5}(7tSuzU-4DP zFn#Sysf;`!rWD1^M|85OO4U!=VkT`mC6{Z;J`7TEFppVXROu@@d=vZ1T!-LCEejYb z0gBgfpR;v)ye)d2>V@7k7A}8AftkhKR^YAH0_+VX9?lc;C8nvGoZ3VJ@BPs0RVFfC zpok>lH1gfA*CUieFa4}P7K&Mlz~%Ne1^)U0l4|<uP8ZF=RcMU#C~nIuuBKy(b*7Es zS_zwd?nro~4;J27)Lme{i_~_qdJzsiP-VJJ<W;=+T&6<NTqu7%>vO$s#F9Z;(Weu0 zgPC{yG^D5-Qq)#-ssMT=uB1CMmOpE{|FEC`D(Yk;aMU74%6b!<wQMgNG?=e+(a?r9 z9Au}8bKyT1n5>(<9nQ-b1xR`92l=;IdcS;5(kMTCr`OaO$W`UK%6d{T;1YcW@cf5U zhi=>zpJzW>s7m!j<UWT*Tcn4b8a0&iz^^8`uY3Y66ma9sFdFpFEu`Aj6<p_UM4i<i zvH=z+{@;i+@K_4q?mj3T6?*L9{ryBQ%XdrJ<FC;~3V;RW$_-ySeWnGjcKPya6fvp+ zl#N?6&}?fL3+K(o)O)S={;giZD#jdZ!<5qK|J)o-<j#1=zR{!QKIWMk&%JyiZr59f z_Ryc#rr?h!BE_YfexjUpQ2(RoT>P2-zc}uad?QqHDYwck_gr$f5t77|a%XZ0x!+>g zkfdBgZn=zz<Sut}H%sn!a=#99o4IT={64?GV2|yw?ejkG^Ljm>J;?3ka@$q;CJb@6 ziwWu~4eqW*rUmhGx5>;YJa8lm1@kNhSZYA&V21WC%ofA62+FoV`Pg&+A!?M=@}R;z zI|PJ(#4Enu1)P*k>El>1{hxkBA8~4V=j`xC8gBTwJG1ZKl3nlab0*lH%pFGq@$_6? z=ragZ0{V?E;QW9yK^i!QpDa&U?8U2igxpV&z^6in^ny6gUB)h#Sd2c)e8%8Dh%>Ug zA;?;rO=}_}qNJ$y#WcBIz*N~-UHwUIikzf@H?Q~C`<yRYL0{v($IG0HXmE$G<Wzn? zToNgiDGYUH6}vy7p<D29eTcrLk?u!1NAa2^y-9r)%aC*X3fWk{XG^#R|AR&5Z)%ND z_W2jaA@GKL6Zz~-s{J=>iW|~10i71x3VgV6=|+w}phgP^897d)lgbX)oAOsI?E3sN z!ls5N>wX@-p0V-=^M+iM?xC}T&P74zPTpCzu<l0Ro~Wrq4hw9LjrE-JFPkOE8cpB} zfFnEgh2H9V$$Qf(ErmaYnf@({!kdCw_v^{e9;uG)QT}ru*%Ah=`IC(Bbp}+@<&4Zj z({6kW;JYwMU@B%`7zEV5&=}-}>!{*M33#<2^TmOntlv{A<ngSJB;XHj{7oFApWrr_ zlG=oFEQoslh!3DrO`)b&?w+9L`Xo|%G=`dJTdVx+>Svv(K<4=pWjEk+=ib1K`)@nz zFG5WFX7nuIIv`f?*Vm-50*!d0_TG<pKCmD&c-z17*qp1|!lOkvvn(LleY<WJV&O*W z4LFqm-83rui{UZAyUDm>7l$>~g5I<`>!Y93v+h9%55Vh}eqE952wYW%x|o|}EhQ^j zv#gX}YEJ3?ERRodR5Lv=vm{`^7%BgGmGyqBY?o4bCW*GGjPs@EkCqKN%1{UYreIjL zm5NRT7oeVc{tQ{BpvVi~*qpLEIa?{<+KbWI4XKTKh!mNU3^fs^2mi6=`Z*&P>Ml6- zQ(`gs)8d<J>4e}T*1_r;(%TiWwx?9~|Fz!8%jDM~8+(snd{jD*{{B~*xiIWYtq!9f zSEQ=?#WL8=opXr|>1#7z`{}Yd9qRB2g4U|(gTxsti0ouO>%YJ{M^C3ax};Yi|5d(m zBlKU6NTIJtR-z<r;lt5hosFfAwt53X7V<~&c1qdE3B^ZhU?$^7;`8$gmYcFxS|T5n zQX}5?m)F~B3K^?mDWXYsUYTCqXnYoGuH_{AR94s6fue=c4cr`A!>>G?jNLSPlgjkx z7t#3c>h9x)FiI56YRCu)`J6lN`rPaNW0z!MXXIII_E1u^vQqK>7Mp@^f`?e7BB!rX zl&i20+lK>~iSM6I@lQu5M?4|nk^<@BoAlX?yzoPjBY(mkii9X@hX&<R(oj)Cr<Pw0 zRF3)pH5-N=aXHF^)JSh7`BOh@YatCDW;ol=XN{Jc+}7(JVC{}mAxvP-5WSG(_b$!p zzr_#qRWrl?3<N*9Q<(ZDEO4(`#LIZS)7+($ha)@08JPW_FAE_Kazm*s>xZISF}Ibx zQv+H(UqJUZN6Z><XXB~8kq*1KYjoMXFw@Jvi&X35P}#OlzfKp?4P`cyy927w%9vKy zze%2vgR-jtSVdWW)+Ucwd~pKBM%Xt2a(b`NC#m_pw&@&-Y)8h?mx0YW_iBoS1rMu` z!Qbc;SuZ@=q&pw-rhqagO9G#cF?tQ$!gk*Ul=6Vy`^CTy_pCT7%E6^s2CDX7t@4}X zWbT^J$yEQSES+np&jKFxj0xVclh+l>437(Uo*v6v;N^3?I6pA$Q}J1Iy}AZvI)7<0 z(%_TwH*~;@tz;m8P8~fN=O3-nq4z{Mcd%(MCK{lsiJvNewx!+gvXjDI@p!!Swp01K zJpqV@q|^!fuV$`FSyd^=scz+)`p@ax9><{ipJ3lN*~~|!DcL>mnIO2Z**Xn9*G-oB zZPjf1N<2eW0W?@cwpXwa)@w4l*4CMU$uLlS+EIJGrXh_!NA@aKr`N<^#6H;YVbF0R zr-FMRin!cViC$MhuLDi{yagBpExhv5jbjfTojP6@`lde(Nmwq@x!MKt3Nv`jrgjj% zoQ!^~?9?A$8T|B86mN55M>xXrORNrGwsNHlbIVZ;Y4_d(hY?g`thiFTOQNpi8w>fu zg%RGtkbi5cbZeW1I%xKc*ciaB)TP?o_lvtbJ2Blbu+U)9hur;fC0<2o7qv2<`TK$` zDX|C9?oJelUHMN^Id!2?$G?CMaz}O4Skf_uX9m%yZ%5Y1cn|_wh<hn{oC|Smfd_)r z14FjIP6guTYzq^b9G>$)>HOAgJe-kVelMm<_5hP~U9|uFd5*W0f7O1MqlBZN9+kn) zm5ru{N7Iv~HYXMnku5(2ILkN`&r~dTq$lb}d%hXPvlFj6IK%|{xyHaRR_X!E({h6& zGz!WW_zXa$uuB6C-`_;Z{$+;dx6y}(*<~zh2|d<Ydt(|t8{cWRzlC0Gi4AAPRa2c8 zO%A=(O1hum*l%@%6_jlpre!0>%wVa;h*Pf{7icsWj0s&Wvmm{Ew?u>Z&CXk-E-J4Q zox(GqU{o)&|Koi)Gf|(t21WNo*sC`*DL9BGgu61JeaoAwj!s_d<M552Uo%i5yeIQV zp01Uf%+emrds?DXMumOAwsGQQ1%Sfp)5DVsk#tARFzf7(EXq~wl0C(@Op4Qgvv=ji z;|r55x&SdRHy<P|Tiaj5S`8eVKAJi<DUm8pyhp9$e_SX&Pq#|1TmZ3pS^E{T#bqJd zC^mxZ9TM4Dt}UP>ROyAR|9vA|5d2Ksw6HYI;kCLB$Lf;w11Yp3Y|S|t+Gn2rz<;-@ zp2#vev9o3dOSZ1Hhq0%{NYf?U`-W1A^}exs33UvSe-gyb!MEytV@$VJtV1M^&D8Uy zr{3OO^kaf(j57Wnun@`52&|`~J+}}aG+J~zn&>j|+MQ1AN_Vt0Rmz?5-n=BWpv@^7 z?*oTrA9ysK?M`iQSYT=<=hGT;j4n7-g@DJ=-$cm`v4&lw@ABUNEe9e&Un1N}srW6b zxK$=_Z7&c#69`>y^XbcOfAyQ;l^al}A5HSops#!Bv?jq7$qIL^gU;s2RyLzwS#JD- z`sgMFWrefDx=lh!S{KJNyV0=<|3u@I$X#i&aE-tH&FKxIT=o!n?wzCM9Al-Fs=E2N z*Z@N8i3@bX^1a_f#nfJ2@1_7zOewIO%DuNu%RrS)p39Xuxm~}p*DOIcUVJ)XlU>Ox zQ31iOQrj=US>geGnKHaaW*$z+tKZudUJ(YH1JciLui{rzl9~5iWV)pMbouTuo|3vP zn{7XOD9=&zI*e(^U@iZYBBRJ0!T+U(Vb2z>o&%zLZVT5Mcu8x!5PqpX{+IV@Q?KHG z7|Fqzlh1qxdcvYhm%lu!FBQYe3~1$`P31rG^ot2LGUz_Py5gY<oaSNH+8C2IjsdIW zIyECZO5`Y`zclzHh08^Q{UF^a)nUoPToq`tThdvZC<;cc=0t*aX5CWZBbD)v*H`8J zUd?(FXpg=VXT{^{=8gkg>z7g*t|-KJGOIl9N$G(ByYjA`hV}~5S>=k|0vy4HD`~b? zqgNxgK`}6_rRCm#Ens(VZlAHDN}NG!6m+-R0~qV-wu{8JQR6UMOZJeK&GUfeB9ns@ zL00i2i+WE7)$=YNFD-Twlqc{dY5>}>n0i=hp#JY!t#+w=qis&*>8$w?YiaPT8`a7c zPJ)YBvE9}o$xO>2TB3GJejXtPY4)Re<yAy8%cdBLp<?8aETchrwpWR=_pu<v^2Ovu z`$X?aUd=9cEP8cK%~;YV>5jwNH<0Sf*Smy~p6hU5jUn0Bo9)EaBm`e!R-p00he+qj zu!&<mp*DreIPlWfsn?NKwtX8cqU$&B??kNji!_baP$9p@-bQB95yMWipMY_`1J10i z^~48Ke@qpb(VC|}4cdA_t`+Xu3d}rQh-^9E&;N6JuaFccbcSiYcd;J{26EgXWl;{B zRv=Hr7paYu(+4b9>@d&bdXRnbzabZz+o+W?Gg@nL)L_$~M%!cr^ssuOu;pt)aNVpo zW|iQ@mJy{fpm({}0z8~iNIIT8m2t8vAy*%!)4v@0_YK?MOO*}jzS&ET^6DrqN3k~T zG(xuP2E)AeL6Lwkar?T0b%;^3*>k!UhH|N^%S;b;IgE~_;su;yEeKY8vn})1v|E~r zASc-VlCWKIzkdu%cTDdLK}6cQqmTSBkb&o-jPbRSD5S*ajd-a^;uHJK*idw|@uYtR z2BiQ3mdt@y>{$~p<t@O$yoi0gc&1rSm0~OpK^MNql?@m=)hz?@d@D^0B#l}BJ$~2> z;Wg@P{X_j}oDS|fO`(Z3t{(qU1$g0iQD7@S$7h^iF-g?oFU5;ly^*4w<DZEQj6&^# zOMLKEASTf@AsBDsC_iW4H0#S(a86h$1W(^LP+VU%ec<?-;tiZh!&!tl;xpWVHFN|= z3Xtu*21NOSEMX)jKkqxR!Z(#Xl|6sz_bC95rz_oSR=Th&`~++k;z7fMK3N4ob|J*3 zy{`EnAb1b0egLtm199@p^WG|NK7I$##iqTmJ1hm~n=>)tjGi+uYw1s`&60_Y&6x@3 znP8Jj{1t6#c2oc1iu2U82VRe@Ni3f=nMr=)=GAhH`s|`n7LVrU3z=W}-Uxo1p%#QF zNzeFpffUPDg5YsTNs;_MHXfJ#9zTW}hMx?=ZJExl89<;>9Q4Py@~Hf4<;P$)6X?|e z;u*|qI3m^moEob9aw*KD=Xv(PpQO3hk=zy`t*x#-QN%<>^@BC!!_|v8`ORRBp&m;P zDl&!_{$gD;zIKS?)~&+t$x>9OMZs70Ml@YEB%uBg|B+|K{O}vDbr+|qY$hbej4zPc zXr0L4_QMCnfw~Y*k5)Bfx<r(&DzSI++X{r8y?-!#AjoLtQ>Q_UCW~sd6RFu*l6M1o zdLP!=ii|hMF*yI74ah59IWk$my}hK^d~|6opCJw#<!=(YIV0(Giq0@5%`r%{WrmV+ zT^4V1p780_Q~6Y^bSfgc-X2${<9nvARC*qNR~EoKW|i*Ob~q0OyGRsDjoMB0G@Wyo z!b&x&^s`m-tV<98t{J!BJzYZigf4}d1Ak{(wp!UYNOUlSyW2!x1Tc!%eF`BT``gX= zO#*z0j5;y1w(Jmm)|AtVn_a1@$T?9MHyPbWAawZ>0aGaOFyho%ElMh9LF_MK@K6Bi zhL#9fzut!R8ki3GB<n+aMgYU5ju%ct70*_G+m-T_^DUgt$J^rc{bK+)tSso<{@rZI zWG8+CXupoe)(v*lS!Jv978@yE-elOJ5?yRW>k2y#s~s-pEg$HWN3&oIVv*&o&f=M^ za@IUY?yd^nCjlo%_@meqU<y}M7&p?r&<2<oqeXl8HN`Sl)H|QEBmZtMO!jkOpums| zu=N&@fr!4W<`RmZarU=()r0(9o{m9W(=y<Cv&{5aXY)EXOI_b2_tu{d=-755-L9KJ zN!TgpCbeagARcZp;`Q`rcjV&@^hF=Pb)ePl$yDIc4zt)eLNt2Ca486``G3x$OR3$} zYK%36W`;sX;%+HOLz-3Wm%w64i=)*MEN_9~dNRxDEV#<R^~%lPK!*);89XEIX7$pg zZ(O7yD2V!;s4r)g5!g7iQQhrh1q#iph<co}Y#2e`phOQjNbEREZT-35Fx7a+__+b- z=DI8*#61&1R&po@=ZIyD`tSeJ&#FCe6X1Q784%o^@X%Y$B1B!OLJ;<I<5$3zK<W4R z-QZ0Cx`vc$i8BKXuxB3(;t!lhJ}DIb%_TlWzB|EE9dd3#<;xf{G5_|rR#a?T1*Am5 zly+r&w}qW3eNI>_gJ&Uhop7LfW{{~U7DwvW^&;;L#Jn=g@pWpyNE|*7roPZiJ?F68 z3hz@D@kpUh@Sk5kiL9Z|koZow!N1^BeR*?yyVec<4KeJk;SloTPWvWDod?bCYFOZ@ zD5DhLM}p!Pl}Fv%kmI`)k&cZ&)+c%N0YekYs=xPO>z4MVK74#R3n!ZRCqI#Ss?r`y z?j*vF-|eCC#0Ar=n;8__rhv5{{>xv&<Dz5@nsaCrw#MsLf)>u6XQS3Ji9dRmSzrhC zha+ILmvAN<_D$|m?r{Nd#=pW^u)5QSt32VQ$L<iT0=pXn&Z9U_mxL?**pD`k_+AvL zmIvqaAOFLB2_W~RJ}shUR=ig`=Zz)W9Ol;()+4u$KYj1cV8!tGKi;k)%;TMv`%MA_ zKhs1eaDHOCd_L&fbvXlbb^_ul%nUYAzJx6YN=~Z4lHbl&+`3WbJYY>9IMoz=2EM_B zF+DFzWufDj(W3pqOD*RgXO>H3FAO!l*F%uXD(_~UPwKaS;a1XCAhCR94ewkV&~f;6 z7ryTI4SKdos%)s^gS4sFt7VlF@reI33%O4Bf&wgk&`e(I&RAfRf#MxKnDCf5)P8z+ zNiZOF_R3*pPrL8?7hix`^Lof>-32Fr!F^5EAgTg)82UidI147EZEKiAvPGNYO87!h zTaAbQ>}TTFL{pfyzNSW$wOk-^H+dNT#BBQ5M)%joqZw0~qMk1KH-1m`g{a9OON8tG zE^@t$IeKPt`2AJ;mO)0tZc+iC+L*G;3wI=vk&J^Ww7a}ezH1kK!LHkA%i6l)*$!~g zT3}5*LH(i|qE(_L`$l(@;w@SkoP;yZ@t7=j|9P*F%}adK3%2XVEzjVMYIN4EpQ@O% zv6;Qw?TtU*h_ycbIEkB<S5$Iupyol6%gZn@y9K1FOJ5M=K|#(JRsvQk9=b!o0hyTM zD$epUop&9>b8L%`%#|HntYcaix$?~@VLXHf_yLQRXazaV&1d0ExA`#<F)bS8r}P|h z;nA6l-`WEXE5lmcHhXCn^~EU1_p7sViWq~t$9%<FvJi0V!y=}myOwwtx#b@XONXIH zG>%LLFM@XQ#p0KOqe^m&Ja?P0J@u4jF5A8tqm^I19`SI0a6N*AJ&)x5Kj7!Z?R1mx zY{e@hvqL79@7ywj56tj~MuQljw-g8Xegxh;%isd8GG9=3iKDpHN;xLl^;PG$7jWiy zwrJ_EGqfTIG+Rg<S6LH3(PUEWpgNGGJvsJ|KOV%|3f`fJ2bvjH*?83LlzBb1en8{} zg%vCshCTtsyr}A-W+rkpygSKa=>j63w?Z1%Q?8nq2@Vh-&DU@q70#}WNAK`?e5I*% z|6m<@EhejUYYD1LHy+^0s=zEk1O^8GCMCgD;uT~Ue>|8+Dn5|Ez#yIdbO&w-zatki zkXXMzt7qFf#}Z?7&{5r=qS8&2PVzom6rc4WRO8Kr&VHFDo@YLk^}rEUxAITABfyLO zns>}jdSdF&h&s5g>K@c>p&6IF7h^YA%$<z$&*MSI&(5+tfmm2}tuNRj9X%d@$+v@l zH%cv{KFWcO8=>l8O>v!zJ$TeuKhbtQ?eXEw`{o=mRnCSlYu4`>OVG)B?Mu`BaAGy( z;EAXhEfg!$B>8@EIp9E>DDG3SsC{0TcC_MbI`b|^X{H+qBN*OjEbWV@HiZpf9Uuoi zMto%aeX8sf*wb~gRoz@_eN;L_>voxfU}MMI4UUI4cT^@hSr)z?t~s*Jg8rD4KFoUk ziao!RMNPCjWM8-RHA{VoSI*+~TNnR%?cdb_x>S@h$!G9}eJv@Hkv#PoYelq(1VP2M zE@(Hll82?&Mf<<=5pB8Z?BClH^5%nFiw}bb0uaBy?+P`YwV|v9T_R>$42K03lpBU} zAqu?Aoonqnsw(99Zw|mJg)fYgUcLMw`)bj8+ZhY+V@-MUF!K53J06+~frPVqBC6MR zcy`?DoNf~R&SEdK4%ju#oq%sFkg$ARWlcLgTpo?unTJi{710Fy)AJ8gj!4>rn~E|X zzje9@gE7AroYhjhfG0WOT~qg-fnr{Z^lz*?{Y&XWD%{&6?b)C`RxeB`%S8CLlI%L> zdL$n!ms_nvFgDT!xSNfSm6G*T+!#-t|3v!DVSi`zbtcUXWD;*^?xpe1r2>DwM#@ZU zMR!!?vIE~+U@Y~_8OHmZe-pOOtmmzz?g#tck_~*so*{@XlzgHaAFHUZTcq{qqkHFl zC#ZvMIUqa^a^B}^c10;z!@<XMxExi#vM37xzdJ#0|L3*k%+VEFH_IBygLp(f9tljn z*03yg_KKS_3(>HT?bmP5pK@&;j}v5UR+RSAKITvQ-qVob(JCw@lYu$S!=z>hJ009Y zf4Dcs1~6f=9`#C<_#HdEUcypOLQepl_F*+I<xV`zu;Q1EA(e``r`d{Jsbjrp3@yrh zl-}$R?dZg}u~Mw~SK+XDsGyt@TP?b});cET10y94uAqD*V~q@y#Ms3xZ$QWLQkcsb z1P>0Q(xR8u-Mi~upQu9R(!eW+J}YrCNFSy~^0mqXeJ|UV;IE2NrTeCi+0p?8cU$I5 z%=KofDtc3wosr);P;IZWVR>TUWZ8c#5y+NsVYKZ*K5R3-clqZ6Hy@+VUNmxlXk1zM zVt(Z#^V_|z`l|)Z^cEg9a8xo~+S%;!r;U=lO|6+I_LYKS_+8$c_g8K|(~RyXz9$8W zC(x_SOO@S2nYXS`u^<x#H6<eIcH4FctDE3k4g*AZLv;xo6G$>Ba)34k3p-&N(e!oM zZ#56Tj~|KlSQqGd{7C5a{9nrXn2+75+sP*&p>y|m%58y+AUzCe6e&X;ZUqp=>i|aR zEs;=`UpKj}*UYLto!S3HR4RISdD8Hi_Yce*4a1@p{YLr%<B0p=kOFE&>j9mf|0}OS zoGJ~HG{H2zze|Sg=HsR9y2r;$qv(YXU6q<ey=1N_nY0E&yG0Z)Ewq`E;YENU&gz4s z`ezno;}Hb3G3?1@wP5C5!eGm#$Fcs^b9xVP9eIyL0hsTVIu~X35`z{C(jM`jT?l1M zV<=B6KlC{MS$0RNBlYq6CDCCRvl*JsDxX#zX(UFsLjn*xjG8A=d~!t|Bsm58Gho*% zI&n7rSemTXk`k4*Sk$&@;V$Yc8TAkvQPo4YZlAE=6kfWe$G6eV!F5&i)9gXCRIn?p zAwoA(lqT6icd|zE?Kj-?!qTZPbGDZmZQ*i;+|garzwLW{(H^xohgQ9&e@u2$!<Mo@ z5|Eb7mE|Pgp;UuE-`nuxZWP+Re4esm;-g-LCCM0J-jH`Tc~n{U;f&w>Wa6R<*2xXy zdq9VEX;Vp!{7tyfaLr2Wngq+Mn6A#YrfuZ<yu~dJXn;O<;QlZSTazO>m9kRH(wD0M zucMOrdU~61i)AqMh?PbZ)%_4kQa@!NxAaf6LTE#_-s7n~Z?Q<djiH{epb5~LLi!^y zjKq(Xt5N=&2{48%JUxM@9067BY6_v*T^Tus-HLJiIXPqvUn?c983bXLBDp!RNIzJn zPq&~KB|#XS1xrTCc$te^Ro??q7W2|%+>A3}>m>ZViXBePA~Uz^i+WBb($0YIP;B^$ z`g_Ju5a;q;g$2dyS<tfzTfc*nF1^|1R2Qo|OVjUXXk5&N)$y-EB(W=U3bWTc{6{_^ zcf9W%MoSQ@FNIC`3>_f$OK$0HX+G&bnLRSi^qk$(^B<iY<b3z;=hPGWob{?wBaVm% z(Gdn3f4;_k!w5~IAOAFYlc>;mFpsy3Z{ft1)_I|l==jo=#|y6Z{!JMbhHk#nc+?V{ z&$Mv#n+i{N6{KpZ7@~{*Fte|$G@%<uqm4JFcI>aEI&NaD2z#{G5+(7@n~Dm;!Plw= z&?God<rieSn=ibqW2`02Hah7Af_wL3Cv`A?-2CH2j0*mqAJiQ#-s3+@);q2{yT{X} z`Nkwz<=ZGkMcBP5S<3dlb=RdV^Yi-#wR19Z6WY2YA<vd%M1%V*h{+8tjX&Zyx;?6l zG|OA_f0VYe8`A{dAWcl3ov89yxVKobFTfs}`0HCSTciXq14Wn(UB3B_@qfk^yVuH5 zU0}^mWi0#jZAs-hC+1>Lk0Y=x#{Y>NPkaBgD_M@*)r0|1G8jvS!O+H5McM<)I*=)Q z@a=Ms?#)hxQjO^5quaO37sdN#exL5a1SFL&4*q{~TM1L)i*ZIiGr@O~KL7R}FT`i$ z#YF?VTl;;RoYe!ie-T4rvSXH6e`P9l555+)J-P1rQB+rhwfyN<Ns+AvyEwDrVh@wm z_V9_vHCpU8nrfn)`-!SJq4bd}87OH%jCPrlp>kUjK_Aa1g-F>Oi7t;OnT1|q_DIZx zb!#W97W}wYw(iHr;8e(ZU@35EAHy;wfvl&R0r@WP<|N*o#KD&{GY;{6Q{KhUZnYDT zW$;U?SH8d6zRv&YGD#do{*GfS7dHl)$e*rrxjy$-xOtC(6*rR962<27ib@43!fuAT zZ#gIOB3?8{Lzqo7pr~TYwsQ)d*@0uNjq=?}2IVHB%C}CBkHWV%X<Zk0qfB_}20Gg4 zeSb(%L{9`ptK<CG7Be-4HzQox91ywsWKl#b_-wX*ZM{j1Jw^=kE7>E9aaHWy7;kSS zo(jzhzg1@$na!THXlLzr=T?bJtaOXeU>}ksorl3X`+KFH=pwxVA;(+S+MWsN^UnBa z`YKpRx{4{=>rF`nZ!~hbs0Dv1v0;U|X%cNvFPa%^Y=;}zd=7OVLMR+MFnPFSb$rU2 z4vh2D<by_3_Sl3FPp@iveLUzW?@Lc<KrHy~<3?fgcHw8v;G@Z_Fd8A!VM(ETk5A&L zM4cz}&5Hv!1viEk;g)-Glz#jXNP^kz^S!&AHWljTVly<6`|Fv<ZmcRaw?#GtSk+YB z1kTFonSwX@1D)<OOh67L?mlxocV(Y@ZzOKdSI@NY&e!MF?5Yh>%Dh?}fC7FZ=d9OS z?8ZWOe4H#pc1qI~KPSn5j`s~^v9qrr9bKKMa*ZV4X4E=yK#{tGq#aY_Z>z#essiwT z71uwlto#)#H`0)_awsJJ`ax`Zphv&W2JMzi%cLrVWblBk3621Zu45$0WLzt6wgR+2 zqFpj==r5fNCcaX&BG&Kd>?KYT9#Y<d7;_=5k}ZEKTVGDK{%l1p^>Th6y|Uj%%N*ad z+Xx91d;q0u`K=q0TK=fd5|6Vn{OV%O!RTAt@0jJK(abSWzgax%c`kP1tC8mbS43!R zMykT=*JiciU@6c>MQNR~#{U#Cxel?|91B<F|0l<Kxb=3wqs5lLXd+l0v2(=)OOgPO zQ-9>dsYd;`lW)$?FqAl82FSBUI2wMSS{iXQh-ew)nms3Gke3r={=kk6YTFF0<US(T zMkjLZfhwC^Ax&{*z$VA&H(-%ODd8YYwA-!7czjz@4vc|bb*aed+IMELe_z_Rg8KI$ zy&6Rzl8ZeGWvdJYm~k{|Vy64jrazNOfi!_UI#bsKrM1mW-i?YBC3Koz{uJqu&L{WO zCf3Yf!;vZDa^r(k8&x*?sK;ggbaZA1u^V)76}eie6bZ9i{tI|@ZWyuBYXo1|CCpmb z?Px_a9vRoedK-7=;-1lQ<*~=KF`>bE7*~jMy$Jywd&4=Y`nRX`R(^?jM8S`zz(6wk zIm*>%Iz@i-NQM|_joNH_!YuOmmcRAN>2vl)m{00hV|0!aSICK3@#s6@@JH&qV=m4& z=l@ESI*WtTQV;~qZc(q{Qs{^KEuuM4G~YqlPChF{VvaceU|s@D60qi9r4J;g+?LjF z*>s$CP)VLVbgSD=y4t@|o*Q`ZYPGnW?6Yak5vJO<@m(NeA2t&@--ev{{9AG>OQOrF zHmaMrZ!=#w`d7?WA;v#sRBVELjExVec8>{+2<b9RI30bcfOc=%;nF+sT!d3i8Eo_? zO~9#cNrK?2I2zX)v;m&-8}+(#N^xV2^QjJD7e^J)0;az&#kwJ^pY@(~kN{WZXa`kX zhOSt|O`csf^+_D`c)TAWSjr-S+C6DMJX69=cuezMCRyeHj8O0EHi>g4ZfxJh18-@y zr0B{_?15k2<D~!S%4{IU@biNlmNWl@Mn^hks9j1XnSWKWU$#)Xs!IocOX4=ymY=$^ zBK0Cx{p#9}I!=2=pAC=fKEi-_9VrpJyg<`COV#Qld7KRGjl9y6VX}0nTTFZ}Y`KA& z{y~3U6aOj9zEFHW37ZNP)X!#yG1|_i#pj)0xq}B&JfFsJH@G~@kSX4MLo`k@K<-DR zC>G_IUiQ*r_Ksw?HptdZtw(*VomX!CGYUk>^6pfn1n2hKn#b!tg-$Qi(2k+SEhv`| zBsDyv@~Nd|No4SMMi#jFM1DEEkGnSbdI;)(thl_Nr#GPqI61%<Bq>|c0g4KL;VD8N zL>#)_JiGO>w2sd{-dw%$4`g2lOtCH`U21`0=9mH+hn%c^on5dN)6{ZVf)?oPO1`y+ z7U<6EDT~tw_$kH%ZCXl^WdWqplE>vNU@pL6%;Mq2{058d|1n2E>%T}v5L-+@4UWP} z;o;l61N9ahITiyy;3-XO>nh!PQYdLoTsWz#w_e41d9Kwaz}<=3uD^1xoXMb7U1tI6 z&*zChRNdKE+M=ebAAXzF05Q2ZQ6Af1D(wzuj679eV2(d+JetW3y;$p2rB1ScdKEY+ zRnqoo4SVJ;e$DC6yX1yuS7xAB{SZ!L&HBWq=We<T>4`hN8S?%OIVA%*0qjuQ2^&4< zi5F+nLuMK0Wcw|ZyKR1zjstR`(XG)AaHs$D9d%0ms&ciZ?A0yatrcK6Zi458es2n< zCN*#TfNmz&zq&NF@#mgbQwy>8SXukU{gKHbU|rKLy%etN7q;lJ<v(-Q7O*|+i0c}{ zO5GB@FIjO|BV_fXaQ?lMuvXTCLj5cb6^~X(--?=Z07cM?7{={1QkIx3U$@*HA#CBD z*DJhgAy4ch_-h|&s(g;mii<rHL5h}lF{)BT5s8FXeOa=th>LgR>IT3UQCG&Qf-5$L z|C`=P>n&d`Ze4xNHLNGE$6}>^NVY5$jIUByqWnL`<X+!Q$coC7x<7%ewM{py)O@!Y z$4q>pdNv@Bs;^Jrf}5YBSC(1a$=Y<ZFkL7eQti;pwG#a&U_Ct**B=Q#1}VCu&L=t& zBs=`izX`*M&XB9)3%;5s7A|$Y(ZD7Y^}-kBqMA9uXJ{^O1IrZM3>Q}WxO^uGF{-aP zp$#%ju)E5vdg@c%ml1g?`SaU}&m40qtp(PC@H%Ucdw(Jsdun4HF&Ufto7sH_nuB1{ z@A+Y4^4$da!Aqv2V&-a1rSH*)i40oRE7vR5`zKhO1Ot|3BU!0qQoNU)ExE!qU8xA` zn-Aqh?KY=Y8y=<^)7?@nUwizQblF)?$>ToDjMD~Aa1K>g4iat9!Zb!P1TwE(aUuw_ z$cunVmpi^4X@`&&;v)+jbIo22PPBZo@}E<XY}tr<DzLvVD_7EPgqRFQr#|{ZSnnY? zMkTb$^z{sSi1ww)OCk29aDX5p`a==`Chmo?8eZ$Npvw$SXgR1eSRlXq#vtM$O_jx~ zEvCGd<?5hXUw@LbU-imMAPzZ+y)kJW<dYeI;??#f(_zr#wf_b$XL+`kv_eMe#o~^i z$9|4x0HFqya2@sMjTTYD@BY=rIgnI$-cd@V4yUfhp0I#!X00>Iw47UB4rQUI!iJIV zMKUTY(erXJd8cESJX+2*W`jqYy_T;O`o*JeMn{<}2kq%X*L=VVYzn0=sy87KP}MrF z1|QX<v1q@9=W#*cTGf+)`)SB+nLE8f8Gbu><JsFGaG!qV;p6CXto~ljxiY;v{K0?L zr+;NUtj1j2)Iik~8x#2Aju(dY)_yJ;bNu@hzCp0;{9JVDdE(2kK5gOay5a49V$*Xn z8kQR60yp}HKD@f-!tcPyR8_r6B`6y8AB%OzFhLFf&hVS`A)D!~?;wo?3C(uhG3<{P z1}?a3eycaBa4s^=j9a-;s9cbh@TYrPeYD?zBi4a|o?OfP1RO>&sQk*ZFN=_|#y`Cv zBJXgXekX4IRIr<Idl#ooNL_o}uM~{Tur9oZE|YgW`9ZI~A}M6mjxYLB8>LOt$|NHU zX>loQK!~S7r~xM!OYpvbp^EmOLPyO7UN&ouIcIq81)})9g>sl)LW*PxKm3LQ)}_q+ zfVM^TMd$*DbkM~2DX&O1+liP4Z4VXwa49RTQu>2T!h}`ee~`m;m2eu-CSuV@v?Qu3 znki7gokpo6jdY-o4O-q~DRc4gYY1D|$%xV!*4-0r{G2zbkmNs7Z&>*_;Uf#3df{+N zA!VtpS~uG6G$9BL;GDIP1npF%4couGDNNr^Ons*E)rJQBJ*n);E@TULC7JAig9g#I zjqySWuBR<T=7?1z5N@I=TzfN#a(b#4S#4>@!X~MlOPk|2BXA~{V)bp01N#lCK`jU> z;fJ)cEMeQn)CsIl_|APt1Ka5<JZ5RCq5~A>W)*gBU-}_fpOYA$fA4wId0SCB_ZwGX zF*D16D-56Wm$es|jThNg|6Q9?jRK5|PN2l`RSgzN_=f!_qEgY41`ZY~t<3DZwQt^b zB@yw$P+89Mq+J@UGP-!_@}ixU<*H)xzok&vi_l=4$4`<dr@lY&%Kfseg~YuWGlJcG z$B)V$AqzBDd8-A~YdsQ3X|qLc3x~KdxVf(X`nftqspJ|GF{SGz8(t#S&iyI%FP<FA z_ZR!{1HvI2l?oXYHD3H2zhdUAjntNcWI=tkArTefU3tk1ude<`a{VH{ImnIv%z_?J zJfn>Kh__1*PlEYhzX37F;qHl7^nKUArvJz~Q?luBtDgK9hepDeO$+n~{C930C7&#M zZ<%aUpCohfSQW}19^DsVjNy%VsN6HwT}CPPH$8<NylQ5E{b|S8FG0=TnNX5yy$ih+ zcXoXrAnykHR+;XNDn`cY@w&I3N#ZGla-n!;j9Zxt_-BBoNzlic(=DSC@2p3&qtvje zMYz%6+u~0`0;T&okj&jxhMRkr*fe~p=%<y7j-&bEh@7lek>!xtmjM<U?2si3g#b_G zlxNd)oP$0E2|OK};gi(OA5(gaugo05U9eidiLY#Al)nCP^-TQX_TarGR|DgBT1P|m z8621i685Hf^-Hk8v(y-a)t2j*u2~XlRKr<q?)>gt8q=7uXF=0v`U*sP#R7@Ow{Hgm z7fqeM=Er`V$oLrhms@_xk%NsACgorft+TWo&)d43eh%IN?gPIX4Sc3ORuNAEIXKd6 z<c~({Vmp^7k3=2~&0wobOrAf>s=ssky^r$$=2q8WU6j(asPVE%OIH~;V=C#xK#J&N z9#eV4MuBVugOPTb#(@Nad_Z;nrFp3KyQxyz`J&t*(N3!CGS0&~1Z@;ikTfjy^DrIr zZgZZb=%=3Ii(3nh<Kbhou~Ii(x#%2FU7_^R9_lq7-mNqV9xMO;JVa<nzCd!U!-Tsg zk{i0N7b&TOdX6q%6K>h3ELIyUrAOSE;jj)+J0~H}YtGlGLx?n%2yvd|z0mcqlLHp( zD922GxcN-38sXI$JFsa`O+^<GG)ldK_As8#jC2o=*4VSLU6iK%?{vj>OO#}3$B7Zs z2ObW9b+CGUT65|Vb-^P1V0b$X1Osxpjfy^Aurm-bF{0RR^LswBNi;>m;9?@R@!yrY z^WfhI{8i9FGN05R59H*YZC`eS_?u@IFD^dLGAK7jmj(Y@8a?<EdC{kN*{+`nzP(g~ zfVS{#xvWnv8Y2aaZirG>U#Yn(_S`2f){0I5`{c!qD)|7K&znrSHrMaCsYks$YN8Uw zkIT@57(^;MUK@bT=iDZ~_I^uzOmXEV>PyOha&+s8D_bvSX)WN(fpPFJZ3*9E8`4M= zGMFQO-4<uQbsrpJXJz7Z<JpCLrDC|=J`VFy=F3oMd2G7(mt;_hWAdi3JdX^?@UgO; zi=)TZPKSGj(!>4J%NNL2^5Bu*n{CN|UBk{LY&TB1xG^zP*NpHlo-c!EpYd~p4p-C` zm85OYBye0_8`faUq((8}PkiA0P7xWnHB1A?{iil6X7zxj6U74{yqEaTjh=Z-s`K;s zaU43JPLGLchxp7iMa1KMs5Rx`O=+4G@xE9UAKd}?ZH}|0Z&R;N)kaQ`%&yb{WjGcR z<yl&bFB`MZk)i;h@#4uNSQ)(i^IXKYBLJi$a6IjJ;SSB8cg8M{6&gHG-|Ncks8Wo+ zr1W}Gs~5{S1(n{j{Qw$R`un@AVpx>E2YCoh<udoD{&O#hF1Djr%11(v0$js9XgNAr zh)b7U7iu{`S9bdkjWXL8lz<)-l4_-x`kJ7HBYiv2T@+;YqD@vh1Qe1Pn!Q>=6obm@ z-1t;;%(Ngvl>0wZUDz;7D}4p&lakMpDjfe~+LjT#c!bCNw(ICJllI%{NK*#*H@&vH z_|=&>Jr2TEg%h(~30@{~%WBb-H@!Ifn`Z}15jA2I$$ZOMVT2+-FY00wsDPU+HxDPt zyfMp>Mb`gp_nFUR(_UeusWh#((N;a`>K*scHiNtRm7Lm<a;yy13QBdZ38X~1&(vS; zeyZyBV4)Va9Xk%;ejiR)(yzpE*spM0m~)gd#5ir;a?SdhP;Af18!UVUzWOcoaInUm zzthL?k4sXBTG7xP+9db~YevQeyck^GC+4b_1~JPF4p^u<_e|6`6@IFe!X)i*kjW`a zUU^o*20O}TH4^UcDL(#-Y82uttGH#!uw8ic?Q8Z?O6f+b_F}PA!_VhwSA_VkZD0ad zJ1<39E}yUeWL@z%@2#_SZ{{taN@eQl1-VCPo=eWWD44)Uubao<vnXh8{JK>Aq?wCW z3>K?A+P%!^MsBqKu|qXzCkFOLIFLW_HCbm#QxRX)vYA~X?j*2n)+udHp3Ea}`*^cT z>Z8`gNLCZCv~}(-NiBl|JiJk$x0b;V-o14*$aXsj;-|cyjB#ch*+l~vGRwsN>%!|h z$HSY25Iu$PodStgFAd!g8>yC`tnR6-Rj+d3cS62E2DsWyytYIfy8xIrXP!<7=U!a) zH9okitPmuf6(G9TAS_OkbY*P;^R2Y=!8Xx`vdVce{FU>xJ)h{=G4?@3`px!-_mzCl z`i?sTz%y4q%eok|r;=c|Gg{@?B?pqM|9ys2_RqUi=i(6_mMFsRRKQjdb_LML_9k8Y z#&@kq*`EfpCt_BHb+V)A`2yq~$4to~s@Iia-!qZ0B}OVbji8%9QG?tj1GOFMt;f%H zX;;XeOW!qc!7FAv?`C#y018^u%%EKduXegrv~yuL7dF$!YhI9Y7vX=P<kfM-vC9i{ z0RkS!EHHeds)6Epbs*&Q!-|0}(TW?nVgylBF;FHQcBwp!QzdsP?k_HMwMX)>((`)T zyEgO>RQA`ZU<xwaxOA}pc$@Ytpw&wF4+|JNtko^-k69o-T}`$d4`)_xv{`^N$MX2k zO4Kgwrs8*1D287a;&M1c66h$=iYJGRD;GrE#SND;qT`W6B9L3ScT&Tk%n<=#+3O6j z$J8936|DJyR}Ik0%HLt(ur)tnlI%L(*>89_<(c{JVrRKn>8L>h$MJgU6?K`-uUAyl zl({!Q+I%x+bu9^2)P5CKs+WgKo9b`ZEig2G|Hjq4TGg(cRh;G@7|8luoU3$WDo50C z=+nuvI1L|mJusxND_|v78c(*^!>HH^by?(rKbb6W^2CGima4=*Nz)+KJWNdd@Lv2N zlaf5`xrX&~4EAGy(0qWOFN&}pgg?;p=vGPpkMeic!UJ(_r5kahyjfoPajVMR$IS-@ zfRWP04@Vr)^XQ6}YUKqqhi_F$hk94ay8v=f6g_XC=x!r6A>a`2xIC<b>|@2)RZf_L zqhobktqZAw;|6FK3bLZoDb}DTO$^E*|3N_ec8q8V=YyA@Ad8(I^sZp<6UF173+T_7 ztZd-{F`uL?RxC2aEYoY9uEEP&Q!vwWS!DVgWT3d&r?~mm2e`#Bh)Ob0lQK9vi}0d+ zcI?JCTxS6<*H8JkhTEkAJt()@8QI#Y_0&qzgv$RViG2J%sL_Gb?y@G{FSt_-^UUt; z)+wjrDW}eU!q*y;GuN%MrtMeAM#717>#XzOl<R2eipRw|AHdPyMdGlJvg}$ah>u>P zYq#}U$G&+7?Q1?FhSg+_&LIy_cckQ#6@uH+15z!6wJCcS3m3O>WzD)Vvu{tP{0h&0 z|F;9&nAg8@B}Tj1X>|<hxL$Al^S<)@V+Q&$mj_P<aJTt*U1&iydVJkthjS)oR<L$9 zFmlR1+Rb(j>A{V2uh4aEB-J+5TDcxXOV|-4bh>u|>my=8@HKYImQV`B?`z{EZiE0{ z=XgyP6;Wmo@e^?zL606#niq*?+5z6!t&79>g&tONx$SU=1DnNO56Gr9Iy71{WER5~ zpNmc<Df?ls;3w(%*n)OyJuHKllD+n<Sh{!W=D1Gg2%fV+C*gQGj;Ox5NCFN1PdH?a z?q~<_WY#U$n9RqRSR?oeXEn22<qq4AvBV>?6_z6#tEDXYxS8?>sP*rVchc(?0))F) z(T;t9-mzDz#quJv6REk6jHBrAg9*wW$BBS4FM3*OojyN6n*bz_N;(r441Z!6VPyDb zM4er+eqDbiNFGSiJyr#Xvz7YY4g=fh&jjuH=8~wncXLwi&1>g}v6RkPAmhnBxQ598 z5;VV<RFNC<^zt?qRFeCF_MZ>9+3}aa@lJ{76MI3dBhsts*9XB(3+hp!kF{AHmKA>A zuVvF%Xy=){)I*F=$0Uo3UX!dgU>Nq(t`ob{XW`M~EFaqGT!%DW=Koee9{@!&Da@y2 zy!|~Zu7atZS$jO?TsP%#(rj1k_U=<Fx%fh@<!ooKOBq+f1%`%bm5@4XwnA3qZ{wq{ zt}=UhS_}HmIP6UcG6HR^DT#N_c$*yBiEGCVy6<MiUdK<p#%0;1^1O?O%fMKsux*M5 zlRD_K)>-~=6m+|C#=7#<J%}B+U844ytrQ;LyMy$k=)wYl|3BZwT>Rbz^1@}iZt|R5 z@zE$4ORGt$2#ycAAq<y<7Uf(6JK2|mGOLgbQeiWD&ZBPt{)sjCcwsMeZ0ReJaHN1K zRai(CE_YnsEQEe~o;Tl@G&Kq%2MSmR<HrNeNzc>AJSL$}o6onJ8k`T750C3PQ#q=N zkbU=wP81BRF(Wm@(fS$LDX=e7Sp`x}IIvfdRTxC6QcLw3{T)eD@ptdbRN{w3{;tZ( zD#TAW;MY?O2<s9t&PIip4gdMiLA#AADdJ|vjduQQpHyoe9Bcm<<a;Bfe2jcYBU{cA z`95oJ4dN|!=5u0o(ya@tT#8I38h-LnLL^9=_KSrcnO+7Lwi?lcbWb?EU(R~-Ck7D} z2uV6}D2qnXy{pDptG2CI$nL~yIH?L{_jeT3daHv^FgQUjI6czw?1+oS&m`Ta;qg38 z@?;Nk;n=!oC5@TIY`}kI*k5`FoamD<&Qrv!4Y%Y-Or*2Q4kd+XAwo3Kj|-c=Z|(<J zd>_{BUL2?=^R!;#Sypa#!ke(`Q(~kVP7fpB%_ew@u1SZ5T(8WQ^+`>y%u)Z&T3>n} z!3*@P2c!SFdtIEx8;b|HcI8F-3^d+n(afWlD__@M-pDif$tuk^rbgM9^%{F#XrH}C zeww{UFntd0%QKlCQ-Ci(so*nvUhFo4X*cu>FEKp0qKj<E%`pm#68W6LO!@cN<V85- z`{<;(N$77#C|USTck&af*VjrJwnIbWc<!v<8nt~gY?8>YBE?P#eVXd}%Cw^J)F#)U zZH`V|H9vmxRd5@BF7f-P%%~*Yr}F5MTRt-P#bkB8lZ3(9;S=C~<B`9cXyHlX(eJ?* z<^M8wvC5^bR-br(*kOySl)`GGTsANL;XqxSt`~b?5+n4I<Q>N7Bw=rm3!4#<b|0bj z^^Y7YxXGgO{d;lOSC-Qc9G@Yx<d48@H;_?~_ZxB^)_zUUsuz*WIS+Z^9E}GW|8$1E zuk(LgOI^jR&<2YIx^AudpXbyt$4N+ET8QWQq>FAyl9(Gael5guKl`DF%Bo54gB(3H z|IxAb9BKPrK2u@;8^hhiRI9MRG?(vR4CzyOI8jq@ER?9S@PD)W5cAlh+)6@rW^%Ci z6N39VhdPcuTX}l(y(LKGd;~2sHfinKUI{N@!i0rvW+=L!2FK2nUs-I+fVI(;4buPY z$nYJ91baTiy;p4Ow>=;3a`u|Ki|L|}D0(EUbO<j8Y7jU6=-l;H1ceaj8ZboN3TU(g zMT8J?VzmRbqf?bhThmowO7+#8tSY*cE7@LZ<qhO(aawl#_8C3abxumWjo0bUD#MLF z%LEksgoWC_cyI$usv52?yR`3PJ>e;j>ht(=f4@f`r_byTRu|1@upQ24uF2+lB)1$n z|BbbbHA|W}feB8a<-rw%A^&mn+vP->;}c5Zjnw*+3QwRjGo<^B2GilC8<V834^NAi zJIoJqY#Q!Q@BM)M`<od&AI0V)iMT0<iG3KwG!!Ki*wZ@oCPP3^`*XB>Jsf&!phFQc zHZOnw%KLDMvx@Bha$jOWkmZoQ%)4T@?{8c#>`M0TzkH6iZ<LRNAL;^YBr`=X#p*zr z@jqE|jS%SKXpP<(1I&kI2(w_zF$4Z4kA(KqjAsqf)k7MEe6k~GA&0d$S}i*-o-GP; zePL?r%`o9oy6Z3&FS(Yvb{Ng0yx}Lgc@O@F%lFnfX9rqO{*F;$f9@Uf<3hOP{1#)E zQQ*+ApDoX=E!;!t)hgzYr7O>{k0zzuUyV5>#be14hQa7?=`*02-;Frs1pqRXM}3(s z0(<o-=npK8V<x|Z;WDyr=XzN`Nl_Q9@v1;CqZZ12o{_Ztlb;|L!@MSJJ7jMz)hm+| zeYA;V=B+iM?(RY5J)vGl2en?l^koqs8NJ8MD<(gaWar5aZy*1vZu02W3%~XsLs+3A zq-vkm??>ojnlE8JOeINTy5l{YIcyJxZEp%coUn9FZWA?6{xh`NJ(9{@@q;a-^x^z% zmoj<pEdxGEcQIsgo#{`R$AsSs_1*#P!D!?fU^du@mYm#oIKyfE6H!x9i305yfW7ZJ zaoqGER=0wN3;U&8%D(5lFQj46KPc`f2xz*~c%Q%b{1&muzR2_?pOvVvcUgdLs;GOB zf{$pGIyq-$hqZyRVd4u@v*+R~)%3dfBn6a!Cfc&rNgr4BxdjveAgr!ZSTh!#tXgbX zZ1Nas=+aOf*xF_WN3_0OTh(DvYk*0dVCm-7ZTf#vR>GLTab;L&nK~NPdoeaBvvgMl zg%Pkg)frk?-L7fj?v-&z7VhT~xP3n-fjZo6CDN-j<^MzZ=cYb8a+bizFikAjy`?J+ zmJFU5mU6Go=DJy%d19*kU(5_fXA&sG%hXP}HYpNA^OlFg<6{$Mwr{Y^Uub20z+Jz5 zsLE)4=*)cq<XMGX&QRxa?=ieL=aYM9L^zcs%TgBh2w_>#6-ON)S7=^l#+C5!P|-`t zT@ty??Mwn$H%zI$4b6;X$ntdAPuW-M9pab_`1so#`n5m7Lh~`NJ2!!Q>5vG|1Q|%U zJxgkN{s=$wQh=r$cR!2A>A@+XKtb_tahgzUyWPx{Ll|tX(3A>ZBN@Cx^Yoqke+L4; ziT>4+RdFU+6Wn=+>GHu%aDOkmmbqhPju-BK@nTjJ8ss)wDidN!g37EF%%I8-ACZdf z%6N!34E{*wMux@5i5@n3+A!X+_{Ob4kd}aTpom;L@_(7xQaYr}H~w)~-v73oY{<9V zGm&Ui9|f*_&D$~%pTZ%rOFLb}>b1DMruNa*N}!*^^5_Qy02-VYTK8&!cZ8P|kyPC@ zY>)5;&;rZR6!;WGuVhFC18R^bEtlKMRy)ZnB?^LX4azZD{(08P9h~MfocAy!)Yeh8 zZa0IkGF{a<P?d0~hd)e`!gO6RN`i<TocV_>z)!;gJzs_`{*fBifyXM=VlbzP)FO^| z)}C}3vA`Ee*<Q`eU>^RgT{!>Lo8eJvMW3^#qv5ZgB8s#&vu@mMHv;b4C=Q0b3^lxr z-nOKhE6qLJA{WS}aSS>o+i&ava=BrH+1as<QGgn6wX{V<Byq={5@<62{4eJi80W2{ zLAD96*-6{@(&7{0h_^Rk9|!%VyT-J(#dxL#Y`2R})1A4b$vNFdtFUouR2+pbP;6_% z=h%gf3zzt(%<MDo#}AbQoi5S`o)mQzByzy|i%#?c<q+Uoe1nRR4gf_{xg`0;v-pU= z_3?$L{9QOnpE969fBYnWreBi3!H-}7`*+|!;+Ob!H$^}B+a7-8M<+kq)#;w{U33Tf z4C6Z-z;g>P7hdxuXV4!UY;mr!u`3TdS^t&{^LHHSQw*G^!*Kylb{=D|*L9cB*_S?J z4@nOd7vrIeiw$xH^o55W<Z-jf^adBKK8Q~P@V=?I(P!R8*|@Y`v+pDy8l7s*OZ5IQ zkM;CPt(iX`a2i*56mMi2%**`5A9+JBGHaj!4y%{Z+0@zB$%tUEMi9D<P>G)jmB5-E z3%CH)hJ#Py>Ld(pjyrHtHpeigFtr3?9e|&B({=^5^pOn7)25)U+qJI9p)+HWx)Qr9 z%&b{ggXiJl3x~((iGH+z^hEa@r$g&&qQy@j8rck=zCD2D8BcO37}A?ov<;V5MZk%z z4WcB_22eo~uY%-({S-47Ul(8%z0NN+4}SVSWAj<Y%=i>Hc-a;eHZIO862iAV$bkku zJDn4-qx7hPB6%+2elHij`!p0j7vXx8(Z!G))O@FlFBn}e2*d}u_+>Cx#aDcQD!N@; zka+T`VBq(fSL<SkZ0z+qeDN!MlrPwtI(0I>NT2oNjb4tS@=5cRvz^`L6Lik`wytNp zHCJ|8Pp!kV?~5iwWBPz?WL?D}i&e+RdII+0z#rILzUq9Kt@&67(=(5*rtO2~nm+wG z)6lw5(o($iMJBClt`#!Rd0wZ?hELmHtMLGmuJ%#m;o_?{>1s_yoi|p{nY|}`bdc`w z_6Zz&#EUs(V<*L2_5v!v88qMaIDp!8%w_VFV@WD+0Ftm3h&m;70Vv4CfgWJp1-(vW zmAFa_IUWZ!@Vt3>TyyX#`i4V`p7iTe`mO+@W9iu?gzOQ%c@GD0C@@Yu&x?ogIDIJS z%;7(H0@mO9Subr|=_Q<@yzwi(DVoxu#i4lBDGVBI=vL$;)2A-SNO8h`ZDjSCR{^9& zo?@;sd==MLtW`Wz6k6N(qm%Wt-8J9ExAX@m@uj!)QNGBATI*sou%U9L#Srk=JUlM? z-W<6HFZ|*ddTf2HlkkVegLtxOtPic@=y4UsPL2vFI(Km@Jkf$<yOp;Mnoi2m%FRK1 zbu!lp9omk*WP;PTS@h;dpVqmlzI2tok`0hIfXDK^cxf!V`>k?Mpn2I3cu%-*Us|U5 z&_^!{nq`6OlW6}NYYkL@S$9#R<@u`nwC)@FJXjk(F1qwV|0gC{qxkAEgip09s)nJs zT|rM?e0j_3_QP<UmM6YW)ZHTpZAb-}LSd%>1Yf651-(v1T|zl2+AW~K4kb8BFy`US zIQexaV{jdmg5uQ$IzjR^rr(0C02<Hq=s7s4vsQ^J*{mZUfEEx<lZox->3QL_<g(Mn zLrH9Y;wd|&`%qqPS!aHL-}&D7fKI}lK52uVaduxCsEsEYwax#?U?U5MR)w<xG{lj0 z7uuvB6eZ1xmRL(>qf`8?gX05OA74zcb9m9Dk1YNj!oDbfbo0oN4z0NM3vizYEnvOm zSNXv4@Wp8W13LxywSST~Ev;$lqL{K}i|nI?H+D-Fejm!G_D&U1a&;(w<H4uw>U4Kp zY^UW)w(OP8-3NZjTe6_nUNC<bf_{;;PmJ5AGl1tc?_tTnf8x{dv0sJO@+3=prN3WI zr*&v3O!}<|>nUCoGx2JmLMQ!I>}cH|6w|J?E&zScdoK?l`B8i+ir}_&POq}d^85S@ z8dF#~<?`DVLyJ5BkG@X*H#YQ-7?to{QudOV0C4-{6Imq_PS15Vr=KU<se>fyf?5HD zS9fKnI8r1zsbY`<>_DgSiRaS@{94cyFgZbUf)-Ts;I@{e6c24SHU<u2&S1JeSZAMB zJ*Ka~$obZRHCp3Kr=|~ho;R<4k!KCSzv$@GH?oA=LHRgk;>Yr@)+MXifxX3}+o%-H zue!piBGt9IiTHsTVonSld(rgA-J^)~rwf3546l@#ZC}3h?Pxna>HCp~_=;!QL}BW5 zs&y_pRouYs?Cxaib+hytx+g!+5Ae!<Z4k%7e%HKXk-5in%(4Mnh-J6AGq#Qky4x;d zQ#K{Oo`K2-l?R>u+*(qM@B!<!7ZP9gDK<XIB0~Vr)GKqAO)P)t8G7C3*1l1JE<JPq zSr1yBe#NifN3T{mhWf)m9uDoR2m&gE%5(WlzO`TMBd@uzHF^~qKkqa>{NN2pcB3g@ zcKY=B7zY^?(Z*YIUS}TY7h1sc#;5O7wCU<GMA_SobKM14r*8RUxNgE_O}NYJ7u7U} z9@fQr1Eoigb`26k$=qFu9bj+%3=Y9{vcrHNxcDlmlu(s?BvBV26!u9$LA8UkpK|SR z9A#yP1_FgqR)wFr7I?`;rVE!68kxca2c6A})_vBUg!G{mA0?Q<r*2xt;M*_sh0}C$ za*1bKgGTu3n-^nRd?Q@x=#5wQbU5beKK`$`^fsSx61oCe@y$8O=oOgcTLrobaL!c@ zq+Q9gHhbbzY;@An$+U1Nl4ZYaaD1#&wTb6E0(6pwzs8!=x=)jXqE)&NEx@$(xP);Q zC7sTNSGwk$imH5z9*(i?wSH|*dg#K|bZ4#Qd&{dT*tCvM&U=%ar*q7_WgoP%-G>9o z?Ra!Wws;l|MYhFF{()9>inDE(omJe8lROoVp|(pe^&K;SJx6Z0V$#<8bj-o8bnfQ0 zpXCDsbNymtJ*-RP-SGQhTAri2aG@6fe!sBw<rru9+BfwF&vmmuTo2||c)@WCJ-SIh z>nU8<HC>3TAL|A`6E?upbM;kZg2xHN&w+i~D98k;jnP2`F_XuqB;(N^Y@lA?nbUmE z<y!yBYdqh^*f7A30k8hduxQPz1r;#=0nbcC3Ou~QCE5G>6i%&)#z|ouI}<&I>ohcZ ztfzQrtbXG)bnHHUaH~0OK<TcH3Y1?n2H;w6_Z2JJ97CI%nL^<rQMfr458)VeD)s49 zMWW<U_=$P9@pYnwMw=Xbou2VC{%-oX^-0b7WZAL@|BI$iN3kzGs=!Jg>#DH|lYW<h zQ=;@k7H=i2tgrDZUg9TTH~tzA+VqiLr$Z)oC>JV6i?{NG;#Pm|+0imbU;48SZ}C@t z%2pj{WJf=q_6Kc0cZ$B7M<?W$yz;-GXlovPbijW1#cN<kj$K6I4|v>gox|j~3JH0x zqSAO8jLST@E<OhD6Ymwz(`U~8{@ORqnTPivt!25u8rOZ}_VGP7Z|3+#J-$St=gnU~ zsS1cW-+bj6v&Mk?RhYrgyQcbwj1DNO$gy0@geN*Q8TN6#2b>Pzl#{_Az<>*|H-H1s zPK+dr{<21|tg%^0ur7hS<PnglO2*<>n@{U4L8P=CrC`}<19>DOo253rHwPOsFC5)B z$oiXGbn5rPbhIvljE&Dcay2g<e1WjjH1EwWU54{fzv+Q2%fp^}?2v2dTmQmQ8!RDP z7Z&EY!_dZVHp8c{XPtnP#+!T)w{CNm4k@R2b^NudY28Oh^rdKNT>O%M*~)y<si-y` zDK4_rc8kuZX6F?6F4(rA`9t!|TYlitS9eEJw7NBS3;uv-mlwV`l0S-7^MC1;Eq)VE zLD`(~P(0ID@GF0O8A}(hlzyGx>4T$UCEqAlS!+d?)2;zOaB-2pv`6gQ(xr634laJ^ zrah*ZvL@fvML20op9FB~aY)T+Ubb}yoScKsKC<qt(JFt`5(n{vxAKZL;Ws+-z<vN+ z>C^w_opV8a;NOo4z^j{#Tbv}@vKSkeIZmJyE(#oTrt8!9!E55zcnRQ@^0SC~4jl0N z1=xjl0QJQS;aBlaJynFo6Z+wLnP*=&tqB;{&r$Y+RU0vZO+!+!DZp{iX}LA?CSZ=D z0lqf{PFJwxRK_aS-H9mqIlzE}WyPhegQ4JChv5KkHWa#25Gu)Y9vah`he65H=$Rvl zp#>K`&_PKt+<DediO9O`^|;ALFZG$T4d`11IAzL4WYd>k;M=FBtGIN9*T5Q3znNg) z*M`$65~vN|6}thS1bFlK!H*y`r-BG?#>K0Xp%|$Mt9Zx`{AT|em*=V0MLKk`Nu1)1 z9tnM07%N9~@t1t*R(?Px#j^YgANhm6eTe_1i#NRE*mNVt)@``n*jT(%4(rYn@gEA{ z0oYnJ_@le%^gp=NocJj><&!!UCvWEK(L^1B<Ol0x-O3LX;BL<I9z*AO`sgP*@ESgC z-|wCmXb&pqWwY8wYcPNJ)k?Pc$d{=@Pfqoz3EeAO;IW@vtSk>`<5qyZ_gM2f?eKYU zJ<nf3dERp>u5AuJmhJU^5jLLJh0`80s7N<EtZQ3$%@AIHuKtvhAQ3DQ!^!SM@U74w z2)zVm4kjcAiN`ISHya-!XoIrhGvLL)C8HCecy^A27cFA~=wNE@>xoeMB@b^>>E(n% zw?+q^69*6vIlg4o$pl=<L#}iXKJ>KKr9QOj@$Z9pw}do~?QKb`LgpW1v0w4A?9n`h z5x=<rTMqq-Q~Dfy-HnJ3txi6Q7dY6)g;Qhrx=5>V_yi1Z&ugv8G}s2|Bl{TJR_5ey z#hQ8lOEGe=4H;ZK&>b0!0rb<H^kt48JCaP<ZP}JDUs<M3EB!pO-pGeP(ARh1%MOou z^YYlZ2G;u@?v`HVZ^Z+UJo(o=xD)XY@mKuI=U&4m@iJfSuc31dS9$H0d0Ol4IpsQb zH~ks=(BO5S*yuM}f$7ZO^On`m&pwUyti3=1uEP~{0u>{Q)zIPu^vBwJ+Jk*yeK_>z z>0_5q&;s!T;Mw$G9vS2ib4`wQ02&_^?Edp%_<7Cv!)c7WhMni6^yYB!v@^K{)dnF^ zwJB<2vB7H7$nnf+EPjAa(X3Id;jK+M;N1lig)CEZa*T>tD}D|ZeV}+%0hQjK2ORu< zzw~AuXC>%o?vNw-^z9()rUYvKPyx2i9lr$Q1IG6$m^HvWXv;6?)GI)J{}r#?)Zm$) zc~#+|$aaNNMYy{dbuufK$wxfd%<$KI6^TwBr?r~z>~sO?7Y{ZVj|KWR&>x;F@^kX# z)SdY9t8}$4=;^-gl@By8`OINko)Cu>E94@J{PRV|k6Rj`lj8<%uIJ$ZdAc|mdb(#@ z_GMpl-ta0C*k=CqSO>Xv=Ow=Qin|Kp;lm0S5yqV6u%UQ#x@aspeLc#qnwQ_oFI{Xb zA3!JXg#qtwO?+uZSD%aI9QhBO0UXwy^OgafY27EL!j(TP%V1nu^D!PYyidz-2-nYe zW^9^oweCFyc>f!$9|f#`${qe_qK|JHTAfUFIyIP&L36awn1^gNAIsCX-;z(S_yVl? z{bchsSgyzQ8k&+{n_>7B5{5M<xQWMlZLBV_w28gxwRx1_1Y1yiD>+*7^kqm+3+B+I zkirC`fp7qLg6E*4uL`o}0X{^*A*?x(%C5Q^YqMEill%4LGA+Ou-L!ESJ6TAq#z(eG zo`Eqs`gdX(gNrRSP9L&4YZE6Q+iBV07VqR?e>WgT@;UlZXnbd)7{Q;y&~B6U7@~_? zr^j%<_OpsA_BP#sfxY;?D?CM)Ed`{%Zl0BU@Fho>FIr>?r)X1G6<@8%=Pf4k0X)Rt z^zMU$4Eq%r%x52;NS1V}erKzJO<TSk@KYQlTYN+duZ~~IRKH|opB%xS@>lvu`$M?! zGjHb-V`P?`oQIBnJ&q`Q$&+R`vW8z!Oz*MhtUo-xhMly`4eaam0_cNle7F7h8^<(W zV;(!}(31s=zkFx^(PFO)5`Ek6xqh+rJbelw{r;CR0Qw$#&zZ)+xIahVxE}ZMJoY*T zx*k)c{`Jdg9ZsL#G^Xp@#T+_j0cNuhyp~AA6R;ec!5Ac2^@Z!?s?ANnl1H6*;nO82 z;9J|T@$CXb-+^-L;Mo`hMhxd;dJJ>l^Ln<bWcWJIp;tHPMVruV{66>u0F7k%Dz32$ zgf}dkOfu1h<ZKCQ+19lZH2e4qf7WTG;vt_DzYe4e(EO};H2?Q$*r?!$b~ugj#j68k zXX^_=`J!lyC!OTG=2vtgr#Q9Ng`mbw5AjXfZm#So*|sPBTYd*x4$v<<I-9gn={Met z4bT;Ro%&>F`6TV}nr&jP?lN+{Y|MG*%TSqW+dRBQSMka@^oKWoVoiNy$VcoO+BzNQ zn(e5$PIt>1p66bx{Q~bUe)w7Xqx;wObl?2{t@-jvH{b7@U%wr$?{HkxGbYci7X`Qu zK3RlafZ03P+6NaX7gF!B{$6tdrav6|r(*cgn%D4o&wUfV*G<cs_2MlEzQ92N_Pf2- zz0U((OyB3vcnv!IoE;9+$(F=aQUUc`u{InIWHWY-&ZJe*#o;7^TIPIv321Yxco77y z-tck&nRh}sSYA^RQ<B;!ja$O>1N}|&0QyUBt=mcBi9_TRL-{1}3O@lJeSX|VS&nIZ zbrUpu*yQxhSGdB_dg_|K(}}40MTHBwo&MQ(@h>`fb_D>aB9igZX;=Kv9bD;&Y+W4W zAK|E=%E$QDMM$~{z^OQQd7<~X!O@A-_S(MEv6Ejv7>-S)i+o+WXNzrsZK`p~lFto# zua&;-0KbZ4>ciOa0yLIR8at2BfkKP!;vt^hokBPE$zJi+Sn`y2!fPjS{9>OCPQc|) z__Pn!sz7GTBcI~e#S}g5Gvih~liuGJL{49JU6>P3a<K~?p_A{xbu5%`mSejC<(K)= z!qYhT#c~a%_1Hgx1u!n%dpy6XUpi5ADMoqw&f~xS-jUvlA^kr1XB}P4XuW1yfHglp zP=9EV^&HTr>jOAdWIGwwarnH7@7Hz3zu-fM-LhSL46Lt#K?Jf2V<j0^^9*p#)qECE z6<RqFociD-@l{-fLrZcK1Z}D;z5||0bhSD$nwMdylImlu6{Xc?RDhsyQ2W4|c|${6 zwopW}uV<JFHtV8O>v_xYg~_rkPn)k599jpJv2g+GL#w3H#<i}r_*QsdPvFwOeA*S! zu0W`-=Z=m~#i%QqY+mscpZ?}xzHd_>$GlW{Bo|PzR{VzgNiF^u*q-vOmoE@ipgKDM zy-9;C(bRnQ>v?JBPQ|R^)^fuDt}m$7PkQEUhj7Fb8)Uoqh(>s(HIxoDhaBwJ1*gAG zfg^^M&)_B0hotzf%lAImX1DO^>q;!-Kh4orY&&55HAtE0g}>Ny74vRy^!E&7_BVZG zE6*hZK%VnaHaES5&zyLni|5OpwAD1`X<CD646<K(SXX#^Y@OjHnF7DfLaPEu+dGLS z=mRt1sQ5M+<_*v{c&)$Q*TwkY^>IBmejm>`%we<FTTGiApxy&!Bj}w=ITj$9NE#&$ z&LiN%o#{>6zQh5ZgUXum8;t{?(*d9$O3A(ffXAMb;=(r#EvM3E<j{hkP40Qq4G)Gs zRMXgP>X`wB2Q=soj`+$J@EBX3@MP~d^=XIp<yXx$UnmYPLiS&_K=#Ydx+CemF_E#X z+y1&6kzVN6m+wO07Cywn{A*)%GGv>IHJiS_;YfOZhZ$eB4Iw^UBvee%E9p3?)~EiG z2M%jh+^TqVdKIqZ0RCXty1Ngw!U3&bM?+udljRs>r{XU^s<_H7_$oi8hjIqL1JD@Y zW6&vAc|Lgb(DCSxjUzeY;eA4%xPzy4@$Ba#y0Hd6`;vaes^bZi-km(pwVY&(9xX?$ z2W_9;Yg!jrhra)`*X?WZ0vs33e?9kf7pHv$KU&t@w=DWPW%lz+Uxx4(BHC$KdzE)} zmo3dx=`#3y{Y?b(XHLA^oac@2ejit|G>2?j)6=5&H-T{A+jKF_8rtM?Y8Bo({mQX8 z#sMWMak>+>t))|ot`%(u1|0AeXl()orv<ZcvhA-~X&Yr_0i0m@rdMBMTI5Ry&FfZ) zHSrKX=|rDf8=T1)dz2uim9yM89sm#VLJuVsa`A(7(HKBS0${!A*M}a^vgtbe8@}i% zhTLvr13w(n<WhVcGh(0^ntweeNId4$Ha&pa4Cq;MgvXqUpX@U*?%UdYs6Nm(6><}} z{icXze$f`7U)sVq>0I2<sd6WQ9CQA#QPpqpv~AX1d~+`6`|H>+^aCaI0GEOw`=D>d z9$JHVl-;>r7q*<kUg^QQ`ph?(olnb$(nox-TlyQ%@nfu<%KS`!)uV*u&zk&*9l|pm zV4jxkv1J%XvC|=ezT(q(n6A&q;JALe8hTw^(FJ;Zrg$pmfc1lxzSd-CU!G)17l8fj zzI@@LN0Fo7zJaEqtNFe@qJy5I+wl8*X@~kizBQPSaEO6U(_S;4i?DGG-^8ERg&Mo< gXUkr_>dW~5125!yiK&W8X8-^I07*qoM6N<$g0~dbcK`qY literal 0 HcmV?d00001 diff --git a/images/pin-configuration-555-timer-8-pin.png b/images/pin-configuration-555-timer-8-pin.png new file mode 100644 index 0000000000000000000000000000000000000000..0dc835c3c93f85065379e21a56c7b67e6628ce1b GIT binary patch literal 2577 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 V%)-V$;@I*KjLRW(l{5a@zW@+Ri;e&Q literal 0 HcmV?d00001 diff --git a/images/post_quiz1.png b/images/post_quiz1.png new file mode 100644 index 0000000000000000000000000000000000000000..8e5a01f571a0ab9939c1c25545135c8af90af22c GIT binary patch literal 27888 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 XtC^!Q><{devNuX{YO>YRrosOOmP>At literal 0 HcmV?d00001 diff --git a/index.html b/index.html new file mode 100644 index 0000000..e0128ce --- /dev/null +++ b/index.html @@ -0,0 +1,437 @@ +<!DOCTYPE html><html lang="en"><head> + <!--Google Tag Manager--> + <script class="gtm"> + var dataLayer = [{ + 'labName': 'Virtual Lab', + 'discipline': 'Test', + 'college': 'IITKGP', + 'phase': 'Testing', + 'expName': 'MONOSTABLE MULTIVIBRATOR USING IC 555', + 'expShortName': 'monostable-multivibrator' + }]; + + (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': + new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], + j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= + 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); + })(window,document,'script','dataLayer','GTM-5NMQ9NQ'); + </script> + <!--End Google Tag Manager--> + <meta charset="utf-8"> + <meta http-equiv="X-UA-Compatible" content="IE=edge"> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <meta content="" name="description"> + <meta content="" name="author"> + + <meta name="experiment-short-name" content="monostable-multivibrator"> + <meta name="developer-institute" content="IITKGP"> + <meta name="learning-unit" content="MONOSTABLE MULTIVIBRATOR USING IC 555"> + <meta name="task-name" content="Aim"> + + <!-- For iPhone --> + <meta name="msapplication-TileColor" content="#4076e0"> + <!-- Chrome, Firefox OS and Opera --> + <meta name="theme-color" content="#4076e0"> + <!-- Windows Phone --> + <meta name="msapplication-navbutton-color" content="#4076e0"> + <title>Virtual Labs</title> + <link rel="shortcut icon" href="./assets/images/favicon.ico"> + <link rel="stylesheet" href="./assets/css/bootstrap.min.css"> + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/github-markdown-css/4.0.0/github-markdown.min.css" integrity="sha512-Oy18vBnbSJkXTndr2n6lDMO5NN31UljR8e/ICzVPrGpSud4Gkckb8yUpqhKuUNoE+o9gAb4O/rAxxw1ojyUVzg==" crossorigin="anonymous"> + <link href="https://fonts.googleapis.com/css2?family=Open+Sans&family=Raleway&display=swap" rel="stylesheet"> + <link rel="stylesheet" href="./assets/fonts/font-awesome-4.7.0/css/font-awesome.min.css"> + <link rel="stylesheet" href="./assets/css/github-markdown.min.css"> + <link rel="stylesheet" href="./assets/css/vlabs-style.css"> + <link rel="stylesheet" href="./assets/katex_assets/katex.min.css"> + + <script src="./assets/js/jquery-3.4.1.slim.min.js"></script> + <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.5.4/dist/umd/popper.min.js" integrity="sha384-q2kxQ16AaE6UbzuKqyBE9/u/KzioAlnx2maXQHiDX9d4/zp8Ok3f+M7DPm+Ib6IU" crossorigin="anonymous"></script> + <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/js/bootstrap.min.js" integrity="sha384-pQQkAEnwaBkjpqZ8RU1fF1AKtTcHJwFl3pblpTlHXybJjHpMYo79HY3hIi4NKxyj" crossorigin="anonymous"></script> + <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script> + <style> + h1 { + font-size: 1.8rem; + } + h2 { + font-size: 1.4rem; + } + h3 { + font-size: 1.2rem; + } + + h2, h3 { + font-weight: 800; + } + </style> + + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.2.1/css/all.min.css"></head> + <body class="p-0 container-fluid vlabs-page d-flex flex-column justify-content-between"> + <!--Google Tag Manager (noscript)--> + <noscript class="gtm"> + <iframe height="0" src="https://www.googletagmanager.com/ns.html?id=GTM-5NMQ9NQ" style="display:none;visibility:hidden" width="0"> + </iframe> + </noscript> + <!--End Google Tag Manager (noscript)--> + + <header class="vlabs-header sticky-top bg-white"> + <nav class="p-0 navbar navbar-light d-flex align-items-stretch"> + + <button class="navbar-toggler px-4" type="button" onclick="toggle()"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="d-flex justify-content-center"> + <a href="https://vlab.co.in" class="navbar-brand"> + <img src="./assets/images/vlabs-color-small-moe.jpg" alt="vlabs logo" class="vlabs-logo"> + </a> + </div> + + <div id="headerNavbar" class="d-none border-top flex-grow-1 d-lg-flex align-items-center justify-content-end"> + <div class="svc-rating-display"> + <rating-display spreadsheetid="1x12nhpp0QvnsA6x-O1sV4IA9SAbfVsq_wiexWkutOmU" sheetname="Experiment-Database" columnname="Experiment Short Name" columnvalue="monostable-multivibrator" imagesdirectory="./plugins/svc-rating/images/"> + </rating-display> + </div> <div class="svc-rating-submit"> + <rating-submit title="Rate" this="" experiment=""> + </rating-submit> + </div> <bug-report id="bug-report" title="[BUG REPORT] MONOSTABLE MULTIVIBRATOR USING IC 555" page-type="text" context-info="{"organisation":"Virtual Labs","developer_institute":"IITKGP","expname":"MONOSTABLE MULTIVIBRATOR USING IC 555","labname":"Virtual Lab","phase":"Testing"}" checkbox-json="{"text":["Insufficient Content"],"video":["Insufficient Content"],"assesment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"assessment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"simulation":["Simulation Not Working","Incorrect Results/Observations","Insufficient/Incorrect Instructions"],"DEFAULT":["Page Not Loading","Content Not Visible","Incorrect Content"]}" button_style="border: none; color: #fff; background-color: #288ec8; text-align: center; font-size: 1.05rem; border-radius: 1em;padding: 0.6em 1.2em; margin: 0 10px" position="override" custom_button_class="v-button"></bug-report> + </div> + </nav> + </header> + <div class="container-fluid flex-fill d-flex flex-column vlabs-page-main"> + <div class="row d-flex justify-content-between"> + <div class="flex-column"> + <div class="row py-4 px-4 breadcrumbs"> + <div class="title is-4 tools">Tools</div> + <span class="mx-2"> + <i aria-hidden="true" class="fa fa-angle-right"></i> + </span> + <a href="performance-report.html" class="my-2 mx-3" target="_blank"> + <button class="v-button">Performance Tool</button> + </a> + <a href="validator-report.html" class="my-2 mx-3" target="_blank"> + <button class="v-button">Validation Tool</button> + </a> + </div> + </div> + </div> + <div class="row flex-grow-1 d-flex flex-nowrap flex-column flex-lg-row"> + <div class="modal fade popupmenu" id="popupMenu" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true"> + <div class="modal-dialog modal-dialog-centered modal-dialog-scrollable"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title" id="exampleModalLabel"> + <a href="https://vlab.co.in" class="navbar-brand"> + <img src="./assets/images/vlabs-color-small-moe.jpg" alt="vlabs logo" class="vlabs-logo"> + </a> + </h5> + <button type="button" class="btn-close align-self-center" data-bs-dismiss="modal" aria-label="Close"></button> + </div> + <div class="modal-body nav-menu"> + <div> + <div class="d-flex nav-menu-body"> + <a href="index.html" class="p-2 current-item "> + Aim + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="theory.html" class="p-2 "> + Theory + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="pretest.html" class="p-2 "> + Pretest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="procedure.html" class="p-2 "> + Procedure + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="simulation.html" class="p-2 "> + Simulation + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="posttest.html" class="p-2 "> + Posttest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="references.html" class="p-2 "> + References + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="contributors.html" class="p-2 "> + Contributors + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="feedback.html" class="p-2 "> + Feedback + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + </div> + </div> + </div> + </div> + <div class="nav flex-column sidebar nav-menu flex-shrink-0 px-lg-4 align-items-center align-items-lg-start hidden d-none d-lg-flex" id="menu"> + <div> + <div class="d-flex nav-menu-body"> + <a href="index.html" class="p-2 current-item "> + Aim + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="theory.html" class="p-2 "> + Theory + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="pretest.html" class="p-2 "> + Pretest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="procedure.html" class="p-2 "> + Procedure + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="simulation.html" class="p-2 "> + Simulation + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="posttest.html" class="p-2 "> + Posttest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="references.html" class="p-2 "> + References + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="contributors.html" class="p-2 "> + Contributors + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="feedback.html" class="p-2 "> + Feedback + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + </div> <div class="vlabs-page-content px-5 pb-4 flex-grow-1 markdown-body"> + <div class="text-center fix-spacing"> + <h2 id="monostable-multivibrator-using-ic-555">Monostable Multivibrator using IC 555</h2> + + </div> + <h2 id="aim-of-the-experiment">Aim of the experiment</h2> + <ol> + <li>To perform a Monostable Multivibrator using 555 Timer</li> + <li>To observe and plot the Trigger Input Voltage.</li> + <li>To observe and plot the Output Voltage.</li> + <li>To observe and plot the Capacitance Voltage.</li> + <li>Calculate the practical time period by the waveform.</li> + <li>Calculate the theoretical time period by 1.1R<sub>A</sub>C.</li> + <li>Calculate the frequency of the waveform.</li> + </ol> + + </div> + <div class="bug-report-mobile"> + <bug-report id="bug-report" title="[BUG REPORT] MONOSTABLE MULTIVIBRATOR USING IC 555" page-type="text" context-info="{"organisation":"Virtual Labs","developer_institute":"IITKGP","expname":"MONOSTABLE MULTIVIBRATOR USING IC 555","labname":"Virtual Lab","phase":"Testing"}" checkbox-json="{"text":["Insufficient Content"],"video":["Insufficient Content"],"assesment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"assessment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"simulation":["Simulation Not Working","Incorrect Results/Observations","Insufficient/Incorrect Instructions"],"DEFAULT":["Page Not Loading","Content Not Visible","Incorrect Content"]}" position="override" button_style=" + position: fixed; + bottom: 20px; + right: 20px; + z-index: 1; + font-size: 0; + padding: 25px; + border-radius: 50%; + border: none; + background-color: #0fc0ff; + background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAAAXNSR0IArs4c6QAABiFJREFUaEPFmVuMFEUUhv/TM7uwoBGVyG22u7ZnYGG5REETo8RA1BhFIka8ABFf0PCgDxhFEpCLqAlE1OiTiSj4gFGjD0QBETQaEqPRICALSHdPV+8YQQJBA+wuO1PHdMNcWGame2ZWqMfuc/nq1KlT1acJAzhShjFVAUsYdL8G3HjRdA7gHwna5uahLR91dnaeb9QlNWrA1+/o6GjuPnv2DQ30LICKNhk4qLF63PK8g434rejATJhjKa6m9WazOzOZzKlKTmYAcc8QnxEwJwqIAk5STpvpZJwD1eTHjR43PKflhtkZ2+ovVxbaTJiTSVM/gzCYGIebu4fc1nmi80w5J0nDWA7Qq1GACzLMR3pV7pZMJtNdTs/UzelE6msAQ0BYb7vuS6VyZaGTungGhPfygkRYZ7nusv4OEonEDc2xuEfA0JqgATBhieO6b/fXE0IM1pgPECgVvGP+x/bksFDo1JhUguPZI8FMAz0+zzFtSjqd9p8VRlJvew7E79QKHNgEDjrSndRfNyXEGmasLK4KttmeOysU2hdIGm0vA/xKUZh32VLeW6psCrGMmO+uB5qIeEh398P7jx8/m9cP9pGm9vtpmQ9WjHDzUSkPRYJOpVKDuK9vP0Dj8goMfsSR8ot6IKPoJI22XUBpEHitLWUx6heNVC15pmHMItCXBYeKPUZsLlFWVYNQsVg2nU7v82XaW1tHZ4lGhUEztOlEKOQ4A/b5XHZyuc0aWqdNIbYSY3aY00veM/9te3KE/ywlxGpmrKpJP8h5ftCR8qtyeqHQY3XdVNAO5vMskvMGoRWrT9Ke90QlX6HQF6N16Y4OI28Ampn/jatcxx+ZzJ8NQScSiZZBWvzJwAhhJoCKUQhkaoVmnAZoJcC9WowOH02nf6gWl0iRLpQk3ZwOym0n0DVVg10rNAAF7Ig1xedYltUbtpCRoZO6Po1J+z7S6VcHdLCIClusLnfBgED7NVv1ZX8lYGKYwbrSo8Qogxc4Um5pOD1Mo20DgZ+PBFxPTpcYJuBUljDRdd1jdW/EcYnEmKwWSxNR05WADnwo2mB3pV+oGzopxDowlkYGbjDSF9ILpwd1D2mtdB2uuhEv3D+yfwG4/opCB5WVnrZk+v1yfqtCJ3X9TpC2pybggYj0BYcf29KdXwe0WArCuqsCzSxtT4qq0GareStIXXo3JjxGwNSrAh0crMFFq3jYEJ9wpPygkB6mYZwg0PCaAcsp1Hm4RPFtS5eK0LpxvqayVs3DlYIO7r0K8xUhlufRGKNrupLmFQcImsEZBhWaOxq4y5ZyRvXqIcSnYDwaZdkukRkgaGqK32RZ1on+/qt/buliFRFWXxXokonXBJ3S22Yz8darAc2sdjqed1/NddpvnMQUHwPRdTWBD0R6EBbbrltoGJX6D71PJ3V9E0h76kpCMzirNTWNLpfPPkcodNDXi6m9QLGqhE6gwUgzaKMj04sq+QmF9hVrjnYj0IwejmvtjuN4DUEbhjEqztgLoqCXEToagQavsKV8rZqPSJH2DaSEmMGMXZHSpE5oZnzneK7fL8w1DJ1sTU6CltvEwPj/88OWwRYx77Y9b3HD0KYuvqUL/Y5oo85I542TooesrnTF8yE0PUwh5hGj6tfxZTNpEBqKvUE9QyfW9bnV3t5+bV9P7yECxuTBFGOvRn5v5eJgTLzsUhUFmuGCcLJoBiNL/ZT7bVFYiWrrnTSM9QC9WBSmzy2ZnluqI4QYGQcWM/O8Qi+7EjSjB4xtTNqHjuf4HVHO20q1tiZZi/k/j1r8Z8zcRxyfanfZv/dnrJgeYw1jQo6xr+SOfY5j2oRq9VMIIWLA7QSMslz3raDGG8ZMJhoPpR1QmvrFdd2eSoFKGm0rAF5bfM97bCnvKp2c/64idFLXd4C0woWFwMstKV+PthPrk/L/R/aeOfcbCBOKq8uLLCk3llos/0tON+8hUt+U5O1Rao5PjtIcrA+3qOWvDEC78wFlIO1I1wyFTuptC0G8uWSZHrCl3N4oUFT9NiE2a4yFQW6DLUfKsaHQU0aMGHq2pWULM98Bpncdzy35yxXVdf1yftXK9vS8CUVjtBjWHHXdn0qt/Qf/x1JblU8EiAAAAABJRU5ErkJggg==); + background-repeat: no-repeat; + background-position: center; + background-size: 30px; + filter: invert(1);"> + </bug-report> + </div> </div> + </div> + <footer class="text-light pt-2 vlabs-footer d-flex flex-column"> + <div class="row px-5 mx-0"> + <div class="col d-flex flex-column"> + <span class="font-weight-bold vlabs-footer-sect-name pb-2 mb-3">Community Links</span> + <a href="https://www.sakshat.ac.in/" class="text-light">Sakshat Portal</a> + <a href="http://outreach.vlabs.ac.in/" class="text-light">Outreach Portal</a> + <a href="https://vlab.co.in/faq" class="text-light">FAQ: Virtual Labs</a> + </div> + <div class="col d-flex flex-column"> + <span class="font-weight-bold vlabs-footer-sect-name pb-2 mb-3">Contact Us</span> + <span> Phone: General Information: 011-26582050 </span> + <span> Email: support@vlabs.ac.in </span> + </div> + <div class="col d-flex flex-column"> + <span class="font-weight-bold vlabs-footer-sect-name pb-2 mb-3">Follow Us</span> + <div class="social-links"> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #55acee;" href="https://twitter.com/TheVirtualLabs"> + <i class="fab fa-twitter"></i> + </a> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #3b5998;" href="https://www.facebook.com/Virtual-Labs-IIT-Delhi-301510159983871/"> + <i class="fab fa-facebook"></i> + </a> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #e52d27;" href="https://www.youtube.com/watch?v=asxRaOgk6a0"> + <i class="fab fa-youtube"></i> + </a> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #2867B2;" href="https://in.linkedin.com/in/virtual-labs-008ba9136"> + <i class="fab fa-linkedin"></i> + </a> + </div> + </div> + </div> + <div class="m-0 py-2 text-center" style="font-family: "Open Sans", sans-serif; background: #212121;"> + <a class="text-primary font-weight-bold" href="https://www.gnu.org/licenses/agpl-3.0.en.html"> AGPL 3.0 </a> + & + <a class="text-primary font-weight-bold" href="https://creativecommons.org/licenses/by-nc-sa/4.0/"> Creative Commons (CC BY-NC-SA 4.0) </a> + </div> + </footer> + <script src="./assets/js/toggleSidebar.js"></script> + <script src="./assets/js/event-handler.js"></script> + + + <script> + if ('serviceWorker' in navigator) { + window.addEventListener('load', () => { + navigator.serviceWorker.register("sw.js"); + }); + } + </script> + + +<script type="module" src="https://virtual-labs.github.io/svc-bug-report/client/src/bug-report.js"></script><script type="module" src="plugins/svc-rating/index.js"></script><script type="module" src="plugins/svc-rating/config.js"></script><script type="module" src="https://apis.google.com/js/api.js"></script></body></html> \ No newline at end of file diff --git a/links.log b/links.log new file mode 100644 index 0000000..d42324c --- /dev/null +++ b/links.log @@ -0,0 +1,11 @@ +contributors.html http://facweb.iitkgp.ac.in/~cskumar/ +contributors.html http://outreach.vlabs.ac.in/ +feedback.html http://outreach.vlabs.ac.in/ +index.html http://outreach.vlabs.ac.in/ +performance-report.html http://vlab.co.in +posttest.html http://outreach.vlabs.ac.in/ +pretest.html http://outreach.vlabs.ac.in/ +procedure.html http://outreach.vlabs.ac.in/ +references.html http://outreach.vlabs.ac.in/ +theory.html http://outreach.vlabs.ac.in/ +validator-report.html http://vlab.co.in diff --git a/performance-report.html b/performance-report.html new file mode 100644 index 0000000..183d1a5 --- /dev/null +++ b/performance-report.html @@ -0,0 +1,179 @@ +<!DOCTYPE html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <meta http-equiv="X-UA-Compatible" content="IE=edge"> + <meta name="viewport" content="width=device-width, initial-scale=1.0"/> + <meta content="" name="description"/> + <meta content="" name="author"/> + + + <!-- For iPhone --> + <meta name="msapplication-TileColor" content="#4076e0"> + <!-- Chrome, Firefox OS and Opera --> + <meta name="theme-color" content="#4076e0"> + <!-- Windows Phone --> + <meta name="msapplication-navbutton-color" content="#4076e0"> + <title>Virtual Labs</title> + <link rel="shortcut icon" href="./assets/images/favicon.ico" /> + <link rel="stylesheet" href="./assets/css/bootstrap.min.css" /> + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/github-markdown-css/4.0.0/github-markdown.min.css" integrity="sha512-Oy18vBnbSJkXTndr2n6lDMO5NN31UljR8e/ICzVPrGpSud4Gkckb8yUpqhKuUNoE+o9gAb4O/rAxxw1ojyUVzg==" crossorigin="anonymous" /> + <link + href="https://fonts.googleapis.com/css2?family=Open+Sans&family=Raleway&display=swap" + rel="stylesheet" + /> + <link + rel="stylesheet" + href="./assets/fonts/font-awesome-4.7.0/css/font-awesome.min.css" + /> + <link rel="stylesheet" href="./assets/css/github-markdown.min.css" /> + <link rel="stylesheet" href="./assets/css/vlabs-style.css" /> + <link rel="stylesheet" href="./assets/katex_assets/katex.min.css" /> + + <script src="./assets/js/jquery-3.4.1.slim.min.js"></script> + <script + src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.5.4/dist/umd/popper.min.js" + integrity="sha384-q2kxQ16AaE6UbzuKqyBE9/u/KzioAlnx2maXQHiDX9d4/zp8Ok3f+M7DPm+Ib6IU" + crossorigin="anonymous" + ></script> + <script + src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/js/bootstrap.min.js" + integrity="sha384-pQQkAEnwaBkjpqZ8RU1fF1AKtTcHJwFl3pblpTlHXybJjHpMYo79HY3hIi4NKxyj" + crossorigin="anonymous" + ></script> + <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script> + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css"> + <link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/virtual-labs/virtual-style@0.0.6-b/css/style.min.css"> + <link rel="stylesheet" href="plugins/tool-performance/css/main.css"> + </head> + + <body> + <div> + <div class="columns is-mobile is-centered is-vcentered"> + <div class="column is-2"> + <a href="http://vlab.co.in" class="navbar-brand"> + <img src="./assets/images/vlabs-color-small-moe.jpg" alt="vlabs logo" class="vlabs-logo"> + </a> + </div> + <div class="column is-8 has-text-centered"> + <div class="title is-2"> + <h2 id="monostable-multivibrator-using-ic-555">Monostable Multivibrator using IC 555</h2> + + </div> + </div> + <div class="column is-2"> + </div> + </div> + </div> + + <div id="loader" class="loader"> + </div> + + <div class="columns is-mobile is-centered is-flex"> + <div class="column has-text-centered"> + <div class="title">Pagewise Performance Summary</div> + </div> + </div> + + <div class="columns is-mobile is-centered is-vcentered is-flex"> + <div class="column has-text-centered is-3 is-size-4 time-stamp" id="timeStamp"> + </div> + <div class="column has-text-centered is-6"> + <button class="v-button" id="newReport">Refresh Report</button> + </div> + <div class="column has-text-centered is-3"> + <ul class="legend is-flex if-flex-wrap is-justify-content-space-between"> + <li class="legend-common legend-red is-size-5">Critical</li> + <li class="legend-common legend-orange is-size-5">Needs Work</li> + <li class="legend-common legend-green is-size-5">Good</li> + </ul> + </div> + </div> + + <div class="columns is-mobile is-centered"> + <div class="column has-text-centered"> + <div class="v-tabs"> + <ul> + <li data-url="index.html" class="is-active" > + <a> + <span class="is-size-5">Aim</span> + </a> + </li> + <li data-url="theory.html" > + <a> + <span class="is-size-5">Theory</span> + </a> + </li> + <li data-url="pretest.html" > + <a> + <span class="is-size-5">Pretest</span> + </a> + </li> + <li data-url="procedure.html" > + <a> + <span class="is-size-5">Procedure</span> + </a> + </li> + <li data-url="simulation.html" > + <a> + <span class="is-size-5">Simulation</span> + </a> + </li> + <li data-url="posttest.html" > + <a> + <span class="is-size-5">Posttest</span> + </a> + </li> + <li data-url="references.html" > + <a> + <span class="is-size-5">References</span> + </a> + </li> + <li data-url="contributors.html" > + <a> + <span class="is-size-5">Contributors</span> + </a> + </li> + <li data-url="feedback.html" > + <a> + <span class="is-size-5">Feedback</span> + </a> + </li> + </ul> + </div> + </div> + </div> + + + <!--<div class="columns is-mobile is-centered" id="gsc">--> + <!--<div class="column has-text-centered" id="gscRes">--> + <!--<div class="card is-fullwidth">--> + <!--<header class="card-header card-toggle is-flex is-justify-content-space-between" id="card-toggle">--> + <!--<a class="card-header-title" id="gscStatus"></a>--> + <!--<a class="card-header-icon icon" id="gscIcon">--> + <!--<i class="fa fa-angle-down"></i>--> + <!--</a>--> + <!--</header>--> + <!--<div class="card-content is-hidden">--> + <!--<div class="content" id="gscIssues">--> + <!--</div>--> + <!--</div>--> + <!--</div>--> + <!--</div>--> + <!--</div>--> + + <div class="columns is-centered" id="lighthouse"> + <div class="column has-text-centered lined" id="mobile"> + </div> + <div class="column has-text-centered lined" id="desktop"> + </div> + </div> + + <div class="is-size-5"> + <b>*</b>NOTE: The scores may slightly vary between the detailed report and the given summary due to the use of different APIs for each. <a href='https://www.debugbear.com/blog/why-is-my-lighthouse-score-different-from-pagespeed-insights' target='_blank'>Learn more</a>. + </div> + + <script src="https://cdnjs.cloudflare.com/ajax/libs/axios/0.21.1/axios.min.js" integrity="sha512-bZS47S7sPOxkjU/4Bt0zrhEtWx0y0CRkhEp8IckzK+ltifIIE9EMIMTuT/mEzoIMewUINruDBIR/jJnbguonqQ==" crossorigin="anonymous" referrerpolicy="no-referrer"></script> + <script type="module" src="plugins/tool-performance/js/main.js"></script> + </body> +</html> diff --git a/plugins/svc-rating/.github/workflows/deployment-script.yml b/plugins/svc-rating/.github/workflows/deployment-script.yml new file mode 100644 index 0000000..6540937 --- /dev/null +++ b/plugins/svc-rating/.github/workflows/deployment-script.yml @@ -0,0 +1,39 @@ +name: Deploy Main Branch +on: + push: + branches: + - main +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + + - name: Setup node + uses: actions/setup-node@v2 + with: + node-version: '16' + check-latest: true + + - run: | + mkdir js + cp -rf *.js js/ + if [ ! -d "images" ]; then + mkdir images + cp -rf images/*.{svg,jpg,png} images/ + fi + git config --local user.email "admin@vlabs.ac.in" + git config --local user.name "vleadadmin" + git checkout --orphan gh-pages + git reset + git add js/* -f + git add images/* -f + git mv js/* ./ -f + git mv images/* ./ -f + git commit -m "https://virtual-labs.github.io/${{ github.repository }} click on the link to test your code." + + - uses: ad-m/github-push-action@master + with: + github_token: ${{ secrets.ORG_OWNER_GITHUB_TOKEN }} + force: true + branch: gh-pages \ No newline at end of file diff --git a/plugins/svc-rating/LICENSE b/plugins/svc-rating/LICENSE new file mode 100644 index 0000000..0ad25db --- /dev/null +++ b/plugins/svc-rating/LICENSE @@ -0,0 +1,661 @@ + GNU AFFERO GENERAL PUBLIC LICENSE + Version 3, 19 November 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/> + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU Affero General Public License is a free, copyleft license for +software and other kinds of works, specifically designed to ensure +cooperation with the community in the case of network server software. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +our General Public Licenses are intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + Developers that use our General Public Licenses protect your rights +with two steps: (1) assert copyright on the software, and (2) offer +you this License which gives you legal permission to copy, distribute +and/or modify the software. + + A secondary benefit of defending all users' freedom is that +improvements made in alternate versions of the program, if they +receive widespread use, become available for other developers to +incorporate. Many developers of free software are heartened and +encouraged by the resulting cooperation. However, in the case of +software used on network servers, this result may fail to come about. +The GNU General Public License permits making a modified version and +letting the public access it on a server without ever releasing its +source code to the public. + + The GNU Affero General Public License is designed specifically to +ensure that, in such cases, the modified source code becomes available +to the community. It requires the operator of a network server to +provide the source code of the modified version running there to the +users of that server. Therefore, public use of a modified version, on +a publicly accessible server, gives the public access to the source +code of the modified version. + + An older license, called the Affero General Public License and +published by Affero, was designed to accomplish similar goals. This is +a different license, not a version of the Affero GPL, but Affero has +released a new version of the Affero GPL which permits relicensing under +this license. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU Affero General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Remote Network Interaction; Use with the GNU General Public License. + + Notwithstanding any other provision of this License, if you modify the +Program, your modified version must prominently offer all users +interacting with it remotely through a computer network (if your version +supports such interaction) an opportunity to receive the Corresponding +Source of your version by providing access to the Corresponding Source +from a network server at no charge, through some standard or customary +means of facilitating copying of software. This Corresponding Source +shall include the Corresponding Source for any work covered by version 3 +of the GNU General Public License that is incorporated pursuant to the +following paragraph. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the work with which it is combined will remain governed by version +3 of the GNU General Public License. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU Affero General Public License from time to time. Such new versions +will be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU Affero General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU Affero General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU Affero General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + <one line to give the program's name and a brief idea of what it does.> + Copyright (C) <year> <name of author> + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published + by the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see <https://www.gnu.org/licenses/>. + +Also add information on how to contact you by electronic and paper mail. + + If your software can interact with users remotely through a computer +network, you should also make sure that it provides a way for users to +get its source. For example, if your program is a web application, its +interface could display a "Source" link that leads users to an archive +of the code. There are many ways you could offer source, and different +solutions will be better for different programs; see section 13 for the +specific requirements. + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU AGPL, see +<https://www.gnu.org/licenses/>. diff --git a/plugins/svc-rating/README.md b/plugins/svc-rating/README.md new file mode 100644 index 0000000..87dd058 --- /dev/null +++ b/plugins/svc-rating/README.md @@ -0,0 +1,85 @@ +# Lit Based Rating Web Component for Virtual Labs +---- + +This repository contains the source code for the rating web component for virtual labs. The web component is written and packaged as a lit component, with some customisable parameters for the web-component. + +The rating component is further split into the following components: + +1. **`rating-display`** : This component has the display of the submitted rating as `stars`, it reads the data from the google sheet using the sheet API. + +2. **`rating-submit`** : This packs the Rate experiment button and the rating-modal, which could be placed on the experiment page and which is used for collecting the rating of the web component, and submits the rating to the google analytics, and gets stored into the google analytics. + +## Features + +The following are the features of the rating web-component: + +- **rating-display** : + - the `rating-display` component could be used separately for displaying the rating of the given experiment, + - The following parameters are to be supplied to the rating-display web component : + + 1. **numberOfStars** : + + The number of stars to display the rating out of. + 2. **spreadsheetID** : + + The id of the spreadsheet to read the rating from. + 3. sheetName : + + The name of the sheet, to read rating from in the spreadsheet. + 4. columnName : + + The column-name, to read-rating from. + + 5. columnValue : + + The unique identifier, whose rating is to be displayed. Say, in case of experiments, it is the experiment short name. + + Following is the sample usage : + + + `<rating-display + spreadsheetID="1azCik_ei7pR8cePq8l6ELEPt-iOyrl9QChTx8zdulEc" + sheetName="Rating-Experiments" + columnName="Experiment Short Name" + columnValue="physics">` + + The positioning of the stars could be adjusted, by placing the component into a div and adjusting the div's position accordingly. The component being placed relative to the corresponding div. + +- **rating-submit** : + The rating submit component, comprises of a button, which on clicking opens up a modal for submitting the rating from the user. + The `rating-submit` buttons comes with the following parameters : + + 1. **title** : The title to be displayed on the rating modal. + + - The title of the rating modal could be varied, and passed as parameter along the component. + example usage: + `<rating-submit title="<some title>"></rating-submit>` + - Sample Usage : + `<rating-submit> + </rating-submit>` + + # Changing of building environments + The rating components are included in the following files in the <a href="">ph-3</a> repository, for including it into the experiment and lab pages. These could be changed, or tweaked as per convenience: + + 1. **config.json [`LAB`]** - include the js modules in the `list-of-experiments-ctnt` object, which should be changed accordingly if the links get updated. + + 2. **plugin-config-production.js and plugin-config-testing.js** - same as above, but for, loading the modules for experiment pages. + + 3. **list-of-experiments-ctnt.handlebars** : this file in the page-templates folder, encloses the display rating component for the lab-list-of-experiments pages. + + - Directory : './templates/partials/' + 4. **content.handlebars** + 5. **header.handlebars** + 6. **simulation-header.handlebars** + + The tags above have been included in the conditional **testing** environment using the if clause + ```js + {{# if testing}} + //rating component + {{/if}} + ``` + to include it into production, removing/changing the clause should be done in each of the files, wherever the component needs to be included. + # Events + +- on submitting the rating, an event named `vl-rating-submit` is created, that is later captured by the GA4 analytics, and later stored into the google sheet. +- The event is handled and managed in the file `./templates/assets/js/event-handler.js` file, wherein the event is created and pushed to the data layer for further analytics. diff --git a/plugins/svc-rating/checkEventSubmission.js b/plugins/svc-rating/checkEventSubmission.js new file mode 100644 index 0000000..736310a --- /dev/null +++ b/plugins/svc-rating/checkEventSubmission.js @@ -0,0 +1,35 @@ +import { + LitElement, + html, +} from "https://cdn.jsdelivr.net/gh/lit/dist@3/core/lit-core.min.js"; + +class MyListener extends LitElement { + static properties = { + canCheck: {}, + }; + connectedCallback() { + super.connectedCallback(); + window.addEventListener("submit-rating", this.onSubmitRating); + } + onSubmitRating(e) { + console.debug(e); + alert(e.detail.data); + } + + constructor() { + super(); + this.canCheck = false; + this.addEventListener("submit-rating", this._checkedHandler); + } + render() { + return html` + <div + @submit-rating=${(e) => { + console.debug(e); + }} + > + </div> + `; + } +} +customElements.define("my-listener", MyListener); diff --git a/plugins/svc-rating/config.js b/plugins/svc-rating/config.js new file mode 100644 index 0000000..bf2fabc --- /dev/null +++ b/plugins/svc-rating/config.js @@ -0,0 +1,2 @@ +const googleApiKey = "AIzaSyAJ9pMGaHcmOiNeHEXQLGCiJcr5k3TV4F8"; +const timeLimit = 4*60*60*1000; \ No newline at end of file diff --git a/plugins/svc-rating/imageData.js b/plugins/svc-rating/imageData.js new file mode 100644 index 0000000..f6f049a --- /dev/null +++ b/plugins/svc-rating/imageData.js @@ -0,0 +1,2 @@ +const imageData = " data:image/png;base64,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"; +export {imageData}; diff --git a/plugins/svc-rating/images/empty-star.svg b/plugins/svc-rating/images/empty-star.svg new file mode 100644 index 0000000..99b6849 --- /dev/null +++ b/plugins/svc-rating/images/empty-star.svg @@ -0,0 +1 @@ +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 122.88 117.42"><path d="M66.71 3.55L81.1 37.26l36.58 3.28v-.01c1.55.13 2.91.89 3.85 2.01a5.663 5.663 0 011.32 4.13v.01a5.673 5.673 0 01-1.69 3.57c-.12.13-.25.25-.39.36L93.25 74.64l8.19 35.83c.35 1.53.05 3.06-.73 4.29a5.652 5.652 0 01-3.54 2.52l-.14.03c-.71.14-1.43.15-2.12.02v.01c-.75-.13-1.47-.42-2.11-.84l-.05-.03-31.3-18.71-31.55 18.86a5.664 5.664 0 01-7.79-1.96c-.38-.64-.62-1.33-.73-2.02-.1-.63-.09-1.27.02-1.89.02-.13.04-.27.08-.4l8.16-35.7c-9.24-8.07-18.74-16.1-27.83-24.3l-.08-.08a5.64 5.64 0 01-1.72-3.7c-.1-1.45.36-2.93 1.4-4.12l.12-.13.08-.08a5.668 5.668 0 013.77-1.72h.06l36.34-3.26 14.44-33.8c.61-1.44 1.76-2.5 3.11-3.05 1.35-.54 2.9-.57 4.34.04.69.29 1.3.71 1.8 1.22.53.53.94 1.15 1.22 1.82l.02.06zm10.19 37.2L61.85 5.51a.42.42 0 00-.09-.14.42.42 0 00-.14-.09.427.427 0 00-.35 0c-.1.04-.19.12-.24.24L45.98 40.75c-.37.86-1.18 1.49-2.18 1.58l-37.9 3.4c-.08.01-.16.02-.24.02-.06 0-.13.02-.18.05-.03.01-.05.03-.07.05l-.1.12c-.05.08-.07.17-.06.26.01.09.04.18.09.25.06.05.13.11.19.17l28.63 25c.77.61 1.17 1.62.94 2.65l-8.51 37.22-.03.14c-.01.06-.02.12-.01.17a.454.454 0 00.33.36c.12.03.24.02.34-.04l32.85-19.64c.8-.5 1.85-.54 2.72-.02L95.43 112c.08.04.16.09.24.14.05.03.1.05.16.06v.01c.04.01.09.01.14 0l.04-.01c.12-.03.22-.1.28-.2.06-.09.08-.21.05-.33L87.8 74.28a2.6 2.6 0 01.83-2.55l28.86-25.2c.04-.03.07-.08.1-.13.02-.04.03-.1.04-.17a.497.497 0 00-.09-.33.48.48 0 00-.3-.15v-.01c-.01 0-.03 0-.03-.01l-37.97-3.41c-1-.01-1.93-.6-2.34-1.57z" fill="#ffcf00"/></svg> \ No newline at end of file diff --git a/plugins/svc-rating/images/half-star.svg b/plugins/svc-rating/images/half-star.svg new file mode 100644 index 0000000..b879312 --- /dev/null +++ b/plugins/svc-rating/images/half-star.svg @@ -0,0 +1 @@ +<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0" y="0" viewBox="0 0 122.88 117.56" xml:space="preserve"><style>.st0{fill:#ffcf00}</style><path class="st0" d="M68 4.44l13.66 31.98 34.75 3.12v-.02c1.93.17 3.62 1.11 4.79 2.51a7.043 7.043 0 011.65 5.13v.02a7.17 7.17 0 01-.74 2.58c-.33.66-.76 1.25-1.28 1.77-.19.22-.4.41-.64.58L94.15 74.86l7.78 34.05c.44 1.9.06 3.8-.91 5.34a7.033 7.033 0 01-4.41 3.13c-.08.02-.16.03-.25.05-.86.17-1.73.16-2.57.01v.02c-.94-.17-1.83-.53-2.63-1.05l-.08-.06-29.64-17.72-29.97 17.92a7.021 7.021 0 01-5.35.8 7.031 7.031 0 01-4.34-3.23c-.48-.8-.78-1.65-.91-2.52-.12-.76-.12-1.52 0-2.26.03-.21.07-.42.13-.63l7.74-33.85c-8.79-7.67-17.9-15.32-26.51-23.15l-.01.01-.16-.17a7.046 7.046 0 01-.29-9.62l.18-.2-.01-.01.16-.16c.57-.56 1.21-1.01 1.89-1.35.85-.41 1.77-.65 2.7-.7h.1l34.43-3.09L54.93 4.3c.77-1.8 2.19-3.11 3.87-3.79a7.045 7.045 0 017.64 1.57c.66.66 1.17 1.43 1.52 2.27l.04.09zm7.1 37.42l-13.67-32-13.67 32h-.01a4.067 4.067 0 01-3.4 2.46L9.72 47.43l26.05 22.74c1.2.95 1.82 2.53 1.46 4.13l-7.75 33.93 29.81-17.82c1.26-.78 2.89-.85 4.25-.04l29.87 17.86-7.76-33.93c-.32-1.42.12-2.96 1.29-3.98l26.21-22.89-34.41-3.09a4.073 4.073 0 01-3.64-2.48z"/><defs><path id="SVGID_1_" d="M64.2 5.92l14.67 34.34 37.2 3.34a2.99 2.99 0 012.72 3.23c-.07.8-.45 1.5-1.01 1.99L89.63 73.39l8.32 36.42c.37 1.61-.64 3.21-2.25 3.58-.82.19-1.64.02-2.3-.41L61.44 93.87l-32.07 19.17c-1.41.85-3.25.38-4.09-1.03-.41-.69-.51-1.47-.35-2.2l8.33-36.42L5.11 48.82a2.98 2.98 0 011.81-5.22l37.1-3.33L58.69 5.9c.65-1.52 2.4-2.23 3.92-1.58.75.32 1.3.91 1.59 1.6z"/></defs><clipPath id="SVGID_2_"><use xlink:href="#SVGID_1_" overflow="visible"/></clipPath><g clip-path="url(#SVGID_2_)"><defs><path id="SVGID_3_" d="M3.74 3.68h115.18v110.21H3.74z"/></defs><clipPath id="SVGID_4_"><use xlink:href="#SVGID_3_" overflow="visible"/></clipPath><g clip-path="url(#SVGID_4_)"><image width="244" height="233" xlink:href="data:image/jpeg;base64,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 vGDeMG8YN4wbxg3hf9f2c/6fZUX7h//Z" transform="matrix(.48 0 0 -.48 3.175 114.65)" overflow="visible"/></g></g><path class="st0" d="M68 4.44l13.66 31.98 34.75 3.12v-.02c1.93.17 3.62 1.11 4.79 2.51a7.043 7.043 0 011.65 5.13v.02a7.17 7.17 0 01-.74 2.58c-.33.66-.76 1.25-1.28 1.77-.19.22-.4.41-.64.58L94.15 74.86l7.78 34.05c.44 1.9.06 3.8-.91 5.34a7.033 7.033 0 01-4.41 3.13c-.08.02-.16.03-.25.05-.86.17-1.73.16-2.57.01v.02c-.94-.17-1.83-.53-2.63-1.05l-.08-.06L60.7 98.19a4.082 4.082 0 01-3.76-4.06h-.01V4.11c0-2.21 1.76-4.02 3.95-4.09.48-.04.97-.02 1.47.04.63.08 1.26.25 1.85.5.86.37 1.62.89 2.24 1.52.66.66 1.17 1.43 1.52 2.27l.04.09zm7.1 37.42l-9.99-23.38v72.84l28.28 16.91-7.74-33.93c-.32-1.42.12-2.96 1.29-3.98l26.21-22.89-34.41-3.09a4.073 4.073 0 01-3.64-2.48z"/><path d="M64.2 5.92l14.67 34.34 37.2 3.34a2.99 2.99 0 012.72 3.23c-.07.8-.45 1.5-1.01 1.99L89.63 73.39l8.32 36.42c.37 1.61-.64 3.21-2.25 3.58-.82.19-1.64.02-2.3-.41L61.44 93.87l-.41.25V4.11a2.998 2.998 0 013.17 1.81z" fill="#fff"/><path d="M61.44 60.81c-19.67 0-37.63-2.87-51.3-7.6l-5.03-4.39a2.98 2.98 0 011.81-5.22l37.1-3.33L58.69 5.9c.41-.99 1.33-1.65 2.34-1.79V60.8l.41.01z" fill="#ffd401"/></svg> \ No newline at end of file diff --git a/plugins/svc-rating/images/logo.jpg b/plugins/svc-rating/images/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f4129424272c6207f1784e4c9b1692bfdf82a28d GIT binary patch literal 32248 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 VpvXjfqTGI6;yRB7I|E7j{{!(Z9^L=| literal 0 HcmV?d00001 diff --git a/plugins/svc-rating/images/mobile-icon.svg b/plugins/svc-rating/images/mobile-icon.svg new file mode 100644 index 0000000..2cd1313 --- /dev/null +++ b/plugins/svc-rating/images/mobile-icon.svg @@ -0,0 +1,57 @@ +<?xml version="1.0" encoding="iso-8859-1"?> +<!-- Generator: Adobe Illustrator 19.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --> +<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" + viewBox="0 0 512 512" style="enable-background:new 0 0 512 512;" xml:space="preserve"> +<circle style="fill:#273B7A;" cx="256" cy="256" r="256"/> +<path style="fill:#121149;" d="M498.112,339.347L316.49,157.727l-12.048,4.494L256,113.778l-26.145,75.852l-11.24,39.209 + l100.397,100.397l-2.45,2.45l-34.569-34.568l-69.953,2.269h-37.064l-60.95,112.387l96.128,96.128C225.03,510.59,240.35,512,256,512 + C368.202,512,463.534,439.811,498.112,339.347z"/> +<path style="fill:#FFEDB5;" d="M401.606,278.219c-3.303-4.591-9.307-6.397-14.601-4.41c-0.076,0.029-0.152,0.055-0.228,0.081 + l-89.619,29.836c0.019,0.721,0.005,1.445-0.043,2.174c-0.748,11.445-9.599,20.639-20.971,21.792l-54.01,5.61 + c-3.417,0.357-6.472-2.126-6.827-5.541c-0.357-3.417,2.126-6.551,5.541-6.827l54.01-5.61c5.33-0.581,9.495-4.86,9.847-10.235 + c0.191-2.934-0.772-5.766-2.712-7.975c-1.939-2.21-4.624-3.532-7.558-3.724l-71.711-4.675c-8.054-0.522-16.05,1.255-23.121,5.148 + l-94.575,52.079l25.612,51.645l23.757-20.725c10.09-8.801,23.455-12.593,36.667-10.397l79.41,13.196 + c14.551,1.934,29.139-1.695,41.088-10.218l108.118-74.461C404.513,290.763,405.371,283.45,401.606,278.219z"/> +<g> + <path style="fill:#FEE187;" d="M274.856,315.326c5.33-0.581,9.495-4.86,9.847-10.235c0.191-2.934-0.772-5.766-2.712-7.975 + c-1.939-2.21-4.624-3.532-7.558-3.724l-15.948-1.04v24.673L274.856,315.326z"/> + <path style="fill:#FEE187;" d="M401.606,278.219c-3.303-4.591-9.307-6.397-14.601-4.41c-0.076,0.029-0.152,0.055-0.228,0.081 + l-89.619,29.836c0.019,0.721,0.005,1.445-0.043,2.174c-0.748,11.445-9.599,20.639-20.971,21.792l-17.653,1.834v50.641 + c11.812-0.072,23.323-3.765,33.073-10.721l108.118-74.459C404.513,290.763,405.371,283.45,401.606,278.219z"/> +</g> +<polygon style="fill:#FFC61B;" points="256,113.778 277.278,148.094 316.49,157.727 290.43,188.568 293.385,228.838 256,213.583 + 218.615,228.838 221.57,188.568 195.51,157.727 234.722,148.094 "/> +<polygon style="fill:#EAA22F;" points="256,113.778 277.278,148.094 316.49,157.727 290.43,188.568 293.385,228.838 256,213.583 "/> +<rect x="88.927" y="330.54" transform="matrix(0.8256 -0.5643 0.5643 0.8256 -189.2337 125.6507)" style="fill:#D35933;" width="39.418" height="76.78"/> +<polygon style="fill:#B54324;" points="146.568,389.529 124.947,357.897 92.307,379.997 114.026,411.772 "/> +<g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +</svg> diff --git a/plugins/svc-rating/images/mobile_rating_icon.png b/plugins/svc-rating/images/mobile_rating_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..9d8b503795a44498a3a4cd1a542b8e685a536677 GIT binary patch literal 33474 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
^N;dy^-{%@ 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 F{|B0JIOzZY literal 0 HcmV?d00001 diff --git a/plugins/svc-rating/images/star.svg b/plugins/svc-rating/images/star.svg new file mode 100644 index 0000000..4c213e8 --- /dev/null +++ b/plugins/svc-rating/images/star.svg @@ -0,0 +1 @@ +<?xml version="1.0" encoding="utf-8"?><svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 26.9 25.65" style="enable-background:new 0 0 26.9 25.65" xml:space="preserve"><style type="text/css">.st0{clip-path:url(#SVGID_2_);} .st1{fill:#FFD401;}</style><g><g><defs><path id="SVGID_1_" d="M14.1,0.43l3.44,8.05l8.72,0.78c0.39,0.03,0.67,0.37,0.64,0.76c-0.02,0.19-0.1,0.35-0.24,0.47l0,0 l-6.6,5.76l1.95,8.54c0.09,0.38-0.15,0.75-0.53,0.84c-0.19,0.04-0.39,0-0.54-0.1l-7.5-4.48l-7.52,4.5 c-0.33,0.2-0.76,0.09-0.96-0.24c-0.1-0.16-0.12-0.35-0.08-0.52h0l1.95-8.54l-6.6-5.76c-0.29-0.25-0.32-0.7-0.07-0.99 C0.3,9.35,0.48,9.28,0.66,9.27l8.7-0.78l3.44-8.06c0.15-0.36,0.56-0.52,0.92-0.37C13.9,0.13,14.03,0.27,14.1,0.43L14.1,0.43 L14.1,0.43z"/></defs><clipPath id="SVGID_2_"><use xlink:href="#SVGID_1_" style="overflow:visible"/></clipPath><g class="st0"><defs><rect id="SVGID_3_" x="-0.08" y="-0.1" width="27.01" height="25.85"/></defs><clipPath id="SVGID_4_"><use xlink:href="#SVGID_3_" style="overflow:visible"/></clipPath><g style="clip-path:url(#SVGID_4_)"><image style="overflow:visible" width="64" height="57" xlink:href="data:image/jpeg;base64,/9j/4AAQSkZJRgABAgEAlgCWAAD/7AARRHVja3kAAQAEAAAAHgAA/+4AIUFkb2JlAGTAAAAAAQMA EAMCAwYAAAJIAAACsAAAA4b/2wCEABALCwsMCxAMDBAXDw0PFxsUEBAUGx8XFxcXFx8eFxoaGhoX Hh4jJSclIx4vLzMzLy9AQEBAQEBAQEBAQEBAQEABEQ8PERMRFRISFRQRFBEUGhQWFhQaJhoaHBoa JjAjHh4eHiMwKy4nJycuKzU1MDA1NUBAP0BAQEBAQEBAQEBAQP/CABEIADwAQwMBIgACEQEDEQH/ xACiAAADAQEBAQAAAAAAAAAAAAAABAUCAQMGAQACAwEAAAAAAAAAAAAAAAAAAwQFBgIQAAIABQME AwAAAAAAAAAAAAARAQIDBAUTJBUSIzMlMhQ0EQABAQYGAQUAAAAAAAAAAAABABAgEXGhMrECEkJy AzEhUSITFBIAAgADBAgHAQAAAAAAAAAAAQIAEAMhMaEiUXGBkbHRMtIRYRJykjNzQv/aAAwDAQAC EQMRAAAA+68SfRyaBPIrKBPAoektl3NMDQREp1Cbmp+jJAbruANsptSOKwGsrkJlKXnLHRkgu0ZA 00m2/iyBqqudKto0FikOkNyQ6Ak51h66IGkrP//aAAgBAgABBQC/v7ijccreHK3hbZG6nrmUhu0I s4bkycN2hFnDcmRkljc6chpyFrJLC4P/2gAIAQMAAQUApUpJpNCmaFMnoyQlLeHbQirDtltDtIRW h2y2mjCl1ROqJVmjpn//2gAIAQEAAQUAr14UIcjIcjIcjIcjIcjIcjIUbyWtOZH4MYxjGWH6DJfB jGMYzH/oMp42MYxjMdHcmV8bGMYxmNjujL+NjGMYzGR3RmPExjGMZi/1l/8AV6PUnqT1J6k9SepL L6Guf//aAAgBAgIGPwBqdNgFAX+QbxHWPiI6x8RFNGcFXcA5RcZPqXhOj+iyfUvCdH9FkxNRFsWw +rR5Ax9tPc/bH209z9sUiKiHOtgDdsv/2gAIAQMCBj8ABIti7GLsYJAuEhtm3tMhtm/tMhlJvu8O cdDYc46Gw5w+VhlOjnL/2gAIAQEBBj8ABIJiYeisKsKsKsKsKsK0DKQYRizJMviRZkmcHxIsyTOD 4kWdczg+JFnXyOD44lnXyOD44lmT9MdMfjp91vqt9Vvqt9Vvqt9UPz6vsgfPiDP/2Q==" transform="matrix(0.48 0 0 -0.48 -1.1399 26.7469)"/></g></g></g><path class="st1" d="M14.1,0.43l3.44,8.05l8.72,0.78c0.39,0.03,0.67,0.37,0.64,0.76c-0.02,0.19-0.1,0.35-0.24,0.47l0,0l-1.18,1.03 c-3.21,1.11-7.42,1.78-12.03,1.78c-4.61,0-8.83-0.67-12.03-1.78l-1.18-1.03c-0.29-0.25-0.32-0.7-0.07-0.99 C0.3,9.35,0.48,9.28,0.66,9.27l8.7-0.78l3.44-8.06c0.15-0.36,0.56-0.52,0.92-0.37C13.9,0.13,14.03,0.27,14.1,0.43L14.1,0.43 L14.1,0.43z"/></g></svg> \ No newline at end of file diff --git a/plugins/svc-rating/index.html b/plugins/svc-rating/index.html new file mode 100644 index 0000000..f264662 --- /dev/null +++ b/plugins/svc-rating/index.html @@ -0,0 +1,26 @@ +<!DOCTYPE html> +<html lang="en"> + <head> + <meta charset="UTF-8" /> + <script type="module" src="./index.js"></script> + <script type = "text/javascript" src="./config.js"></script> + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.2.1/css/all.min.css" /> + <title>Document</title> + </head> + <body> + <!-- <simple-greeting></simpl-greeting> --> + <rating-submit + title="my-title" > + </rating-submit> + <rating-display + spreadsheetID="1x12nhpp0QvnsA6x-O1sV4IA9SAbfVsq_wiexWkutOmU" + sheetName="Experiment-Database" + columnName="Experiment Short Name" + columnValue="energy-band-gap" + imagesDirectory="./images/" + > + </rating-display> + <script async src="https://apis.google.com/js/api.js" + ></script> + </body> +</html> diff --git a/plugins/svc-rating/index.js b/plugins/svc-rating/index.js new file mode 100644 index 0000000..5334fba --- /dev/null +++ b/plugins/svc-rating/index.js @@ -0,0 +1,6 @@ +import "./rating.js"; +import "./rating-submit.js"; +import "./rating-display.js" +import "./checkEventSubmission.js"; + + diff --git a/plugins/svc-rating/package-lock.json b/plugins/svc-rating/package-lock.json new file mode 100644 index 0000000..0471a90 --- /dev/null +++ b/plugins/svc-rating/package-lock.json @@ -0,0 +1,9560 @@ +{ + "name": "svc-rating", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "dependencies": { + "lit": "^2.2.5", + "lit-fontawesome": "^0.1.3", + "lit-modal": "^1.2.38" + }, + "devDependencies": { + "@rollup/plugin-node-resolve": "^15.0.0", + "@web/rollup-plugin-copy": "^0.3.0", + "@web/rollup-plugin-html": "^1.11.0", + "es-dev-server": "^2.1.0", + "rollup": "^2.79.1", + "rollup-plugin-minify-html-literals": "^1.2.6", + "rollup-plugin-summary": "^1.4.3", + "rollup-plugin-terser": "^7.0.2" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", + "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.17.10", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.10.tgz", + "integrity": "sha512-GZt/TCsG70Ms19gfZO1tM4CVnXsPgEPBCpJu+Qz3L0LUDsY5nZqFZglIoPC1kIYOtNBZlrnFT+klg12vFGZXrw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.2.tgz", + "integrity": "sha512-A8pri1YJiC5UnkdrWcmfZTJTV85b4UXTAfImGmCfYmax4TR9Cw8sDS0MOk++Gp2mE/BefVJ5nwy5yzqNJbP/DQ==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.18.2", + "@babel/helper-compilation-targets": "^7.18.2", + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helpers": "^7.18.2", + "@babel/parser": "^7.18.0", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.18.2", + "@babel/types": "^7.18.2", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.2.tgz", + "integrity": "sha512-W1lG5vUwFvfMd8HVXqdfbuG7RuaSrTCCD8cl8fP8wOivdbtbIg2Db3IWUcgvfxKbbn6ZBGYRW/Zk1MIwK49mgw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.2", + "@jridgewell/gen-mapping": "^0.3.0", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.1.tgz", + "integrity": "sha512-GcHwniMlA2z+WFPWuY8lp3fsza0I8xPFMWL5+n8LYyP6PSvPrXf4+n8stDHZY2DM0zy9sVkRDy1jDI4XGzYVqg==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.7.tgz", + "integrity": "sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.16.7.tgz", + "integrity": "sha512-C6FdbRaxYjwVu/geKW4ZeQ0Q31AftgRcdSnZ5/jsH6BzCJbtvXvhpfkbkThYSuutZA7nCXpPR6AD9zd1dprMkA==", + "dev": true, + "dependencies": { + "@babel/helper-explode-assignable-expression": "^7.16.7", + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.2.tgz", + "integrity": "sha512-s1jnPotJS9uQnzFtiZVBUxe67CuBa679oWFHpxYYnTpRL/1ffhyX44R9uYiXoa/pLXcY9H2moJta0iaanlk/rQ==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.17.10", + "@babel/helper-validator-option": "^7.16.7", + "browserslist": "^4.20.2", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.18.0.tgz", + "integrity": "sha512-Kh8zTGR9de3J63e5nS0rQUdRs/kbtwoeQQ0sriS0lItjC96u8XXZN6lKpuyWd2coKSU13py/y+LTmThLuVX0Pg==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-function-name": "^7.17.9", + "@babel/helper-member-expression-to-functions": "^7.17.7", + "@babel/helper-optimise-call-expression": "^7.16.7", + "@babel/helper-replace-supers": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.17.12.tgz", + "integrity": "sha512-b2aZrV4zvutr9AIa6/gA3wsZKRwTKYoDxYiFKcESS3Ug2GTXzwBEvMuuFLhCQpEnRXs1zng4ISAXSUxxKBIcxw==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "regexpu-core": "^5.0.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.1.tgz", + "integrity": "sha512-J9hGMpJQmtWmj46B3kBHmL38UhJGhYX7eqkcq+2gsstyYt341HmPeWspihX43yVRA0mS+8GGk2Gckc7bY/HCmA==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.13.0", + "@babel/helper-module-imports": "^7.12.13", + "@babel/helper-plugin-utils": "^7.13.0", + "@babel/traverse": "^7.13.0", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0-0" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.2.tgz", + "integrity": "sha512-14GQKWkX9oJzPiQQ7/J36FTXcD4kSp8egKjO9nINlSKiHITRA9q/R74qu8S9xlc/b/yjsJItQUeeh3xnGN0voQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-explode-assignable-expression": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.7.tgz", + "integrity": "sha512-KyUenhWMC8VrxzkGP0Jizjo4/Zx+1nNZhgocs+gLzyZyB8SHidhoq9KK/8Ato4anhwsivfkBLftky7gvzbZMtQ==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz", + "integrity": "sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==", + "dev": true, + "dependencies": { + "@babel/template": "^7.16.7", + "@babel/types": "^7.17.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz", + "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.17.7.tgz", + "integrity": "sha512-thxXgnQ8qQ11W2wVUObIqDL4p148VMxkt5T/qpN5k2fboRyzFGFmKsTGViquyM5QHKUy48OZoca8kw4ajaDPyw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.17.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz", + "integrity": "sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.0.tgz", + "integrity": "sha512-kclUYSUBIjlvnzN2++K9f2qzYKFgjmnmjwL4zlmU5f8ZtzgWe8s0rUPSTGy2HmK4P8T52MQsS+HTQAgZd3dMEA==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-module-imports": "^7.16.7", + "@babel/helper-simple-access": "^7.17.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/helper-validator-identifier": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.18.0", + "@babel/types": "^7.18.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.7.tgz", + "integrity": "sha512-EtgBhg7rd/JcnpZFXpBy0ze1YRfdm7BnBX4uKMBd3ixa3RGAE002JZB66FJyNH7g0F38U05pXmA5P8cBh7z+1w==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.17.12.tgz", + "integrity": "sha512-JDkf04mqtN3y4iAbO1hv9U2ARpPyPL1zqyWs/2WG1pgSq9llHFjStX5jdxb84himgJm+8Ng+x0oiWF/nw/XQKA==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.8.tgz", + "integrity": "sha512-fm0gH7Flb8H51LqJHy3HJ3wnE1+qtYR2A99K06ahwrawLdOFsCEWjZOrYricXJHoPSudNKxrMBUPEIPxiIIvBw==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-wrap-function": "^7.16.8", + "@babel/types": "^7.16.8" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.18.2.tgz", + "integrity": "sha512-XzAIyxx+vFnrOxiQrToSUOzUOn0e1J2Li40ntddek1Y69AXUTXoDJ40/D5RdjFu7s7qHiaeoTiempZcbuVXh2Q==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.2", + "@babel/helper-member-expression-to-functions": "^7.17.7", + "@babel/helper-optimise-call-expression": "^7.16.7", + "@babel/traverse": "^7.18.2", + "@babel/types": "^7.18.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.2.tgz", + "integrity": "sha512-7LIrjYzndorDY88MycupkpQLKS1AFfsVRm2k/9PtKScSy5tZq0McZTj+DiMRynboZfIqOKvo03pmhTaUgiD6fQ==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.16.0.tgz", + "integrity": "sha512-+il1gTy0oHwUsBQZyJvukbB4vPMdcYBrFHa0Uc4AizLxbq6BOYC51Rv4tWocX9BLBDLZ4kc6qUFpQ6HRgL+3zw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz", + "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", + "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz", + "integrity": "sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.16.8.tgz", + "integrity": "sha512-8RpyRVIAW1RcDDGTA+GpPAwV22wXCfKOoM9bet6TLkGIFTkRQSkH1nMQ5Yet4MpoXe1ZwHPVtNasc2w0uZMqnw==", + "dev": true, + "dependencies": { + "@babel/helper-function-name": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.16.8", + "@babel/types": "^7.16.8" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.2.tgz", + "integrity": "sha512-j+d+u5xT5utcQSzrh9p+PaJX94h++KN+ng9b9WEJq7pkUPAd61FGqhjuUEdfknb3E/uDBb7ruwEeKkIxNJPIrg==", + "dev": true, + "dependencies": { + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.18.2", + "@babel/types": "^7.18.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.12.tgz", + "integrity": "sha512-7yykMVF3hfZY2jsHZEEgLc+3x4o1O+fYyULu11GynEUQNwB6lua+IIQn1FiJxNucd5UlyJryrwsOh8PL9Sn8Qg==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.16.7", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.18.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.4.tgz", + "integrity": "sha512-FDge0dFazETFcxGw/EXzOkN8uJp0PC7Qbm+Pe9T+av2zlBpOgunFHkQPPn+eRuClU73JF+98D531UgayY89tow==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.17.12.tgz", + "integrity": "sha512-xCJQXl4EeQ3J9C4yOmpTrtVGmzpm2iSzyxbkZHw7UCnZBftHpF/hpII80uWVyVrc40ytIClHjgWGTG1g/yB+aw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.17.12.tgz", + "integrity": "sha512-/vt0hpIw0x4b6BLKUkwlvEoiGZYYLNZ96CzyHYPbtG2jZGz6LBe7/V+drYrc/d+ovrF9NBi0pmtvmNb/FsWtRQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", + "@babel/plugin-proposal-optional-chaining": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-proposal-async-generator-functions": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.17.12.tgz", + "integrity": "sha512-RWVvqD1ooLKP6IqWTA5GyFVX2isGEgC5iFxKzfYOIy/QEFdxYyCybBDtIGjipHpb9bDWHzcqGqFakf+mVmBTdQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-remap-async-to-generator": "^7.16.8", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-properties": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.17.12.tgz", + "integrity": "sha512-U0mI9q8pW5Q9EaTHFPwSVusPMV/DV9Mm8p7csqROFLtIE9rBF5piLqyrBGigftALrBcsBGu4m38JneAe7ZDLXw==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-static-block": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.18.0.tgz", + "integrity": "sha512-t+8LsRMMDE74c6sV7KShIw13sqbqd58tlqNrsWoWBTIMw7SVQ0cZ905wLNS/FBCy/3PyooRHLFFlfrUNyyz5lA==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-proposal-dynamic-import": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.16.7.tgz", + "integrity": "sha512-I8SW9Ho3/8DRSdmDdH3gORdyUuYnk1m4cMxUAdu5oy4n3OfN8flDEH+d60iG7dUfi0KkYwSvoalHzzdRzpWHTg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-export-namespace-from": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.17.12.tgz", + "integrity": "sha512-j7Ye5EWdwoXOpRmo5QmRyHPsDIe6+u70ZYZrd7uz+ebPYFKfRcLcNu3Ro0vOlJ5zuv8rU7xa+GttNiRzX56snQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-json-strings": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.17.12.tgz", + "integrity": "sha512-rKJ+rKBoXwLnIn7n6o6fulViHMrOThz99ybH+hKHcOZbnN14VuMnH9fo2eHE69C8pO4uX1Q7t2HYYIDmv8VYkg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.17.12.tgz", + "integrity": "sha512-EqFo2s1Z5yy+JeJu7SFfbIUtToJTVlC61/C7WLKDntSw4Sz6JNAIfL7zQ74VvirxpjB5kz/kIx0gCcb+5OEo2Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.17.12.tgz", + "integrity": "sha512-ws/g3FSGVzv+VH86+QvgtuJL/kR67xaEIF2x0iPqdDfYW6ra6JF3lKVBkWynRLcNtIC1oCTfDRVxmm2mKzy+ag==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-numeric-separator": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.16.7.tgz", + "integrity": "sha512-vQgPMknOIgiuVqbokToyXbkY/OmmjAzr/0lhSIbG/KmnzXPGwW/AdhdKpi+O4X/VkWiWjnkKOBiqJrTaC98VKw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-object-rest-spread": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.18.0.tgz", + "integrity": "sha512-nbTv371eTrFabDfHLElkn9oyf9VG+VKK6WMzhY2o4eHKaG19BToD9947zzGMO6I/Irstx9d8CwX6njPNIAR/yw==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.17.10", + "@babel/helper-compilation-targets": "^7.17.10", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-optional-catch-binding": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.16.7.tgz", + "integrity": "sha512-eMOH/L4OvWSZAE1VkHbr1vckLG1WUcHGJSLqqQwl2GaUqG6QjddvrOaTUMNYiv77H5IKPMZ9U9P7EaHwvAShfA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-optional-chaining": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.17.12.tgz", + "integrity": "sha512-7wigcOs/Z4YWlK7xxjkvaIw84vGhDv/P1dFGQap0nHkc8gFKY/r+hXc8Qzf5k1gY7CvGIcHqAnOagVKJJ1wVOQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-methods": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.17.12.tgz", + "integrity": "sha512-SllXoxo19HmxhDWm3luPz+cPhtoTSKLJE9PXshsfrOzBqs60QP0r8OaJItrPhAj0d7mZMnNF0Y1UUggCDgMz1A==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.17.12.tgz", + "integrity": "sha512-/6BtVi57CJfrtDNKfK5b66ydK2J5pXUKBKSPD2G1whamMuEnZWgoOIfO8Vf9F/DoD4izBLD/Au4NMQfruzzykg==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-create-class-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-unicode-property-regex": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.17.12.tgz", + "integrity": "sha512-Wb9qLjXf3ZazqXA7IvI7ozqRIXIGPtSo+L5coFmEkhTQK18ao4UDDD0zdTGAarmbLj2urpRwrc6893cu5Bfh0A==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.17.12.tgz", + "integrity": "sha512-n/loy2zkq9ZEM8tEOwON9wTQSTNDTDEz6NujPtJGLU7qObzT1N4c4YZZf8E6ATB2AjNQg/Ib2AIpO03EZaCehw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.17.12.tgz", + "integrity": "sha512-PHln3CNi/49V+mza4xMwrg+WGYevSF1oaiXaC2EQfdp4HWlSjRsrDXWJiQBKpP7749u6vQ9mcry2uuFOv5CXvA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.17.12.tgz", + "integrity": "sha512-J8dbrWIOO3orDzir57NRsjg4uxucvhby0L/KZuGsWDj0g7twWK3g7JhJhOrXtuXiw8MeiSdJ3E0OW9H8LYEzLQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.16.7", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-remap-async-to-generator": "^7.16.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.16.7.tgz", + "integrity": "sha512-JUuzlzmF40Z9cXyytcbZEZKckgrQzChbQJw/5PuEHYeqzCsvebDx0K0jWnIIVcmmDOAVctCgnYs0pMcrYj2zJg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.18.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.18.4.tgz", + "integrity": "sha512-+Hq10ye+jlvLEogSOtq4mKvtk7qwcUQ1f0Mrueai866C82f844Yom2cttfJdMdqRLTxWpsbfbkIkOIfovyUQXw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.18.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.18.4.tgz", + "integrity": "sha512-e42NSG2mlKWgxKUAD9EJJSkZxR67+wZqzNxLSpc51T8tRU5SLFHsPmgYR5yr7sdgX4u+iHA1C5VafJ6AyImV3A==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-environment-visitor": "^7.18.2", + "@babel/helper-function-name": "^7.17.9", + "@babel/helper-optimise-call-expression": "^7.16.7", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-replace-supers": "^7.18.2", + "@babel/helper-split-export-declaration": "^7.16.7", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.17.12.tgz", + "integrity": "sha512-a7XINeplB5cQUWMg1E/GI1tFz3LfK021IjV1rj1ypE+R7jHm+pIHmHl25VNkZxtx9uuYp7ThGk8fur1HHG7PgQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.18.0.tgz", + "integrity": "sha512-Mo69klS79z6KEfrLg/1WkmVnB8javh75HX4pi2btjvlIoasuxilEyjtsQW6XPrubNd7AQy0MMaNIaQE4e7+PQw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.16.7.tgz", + "integrity": "sha512-Lyttaao2SjZF6Pf4vk1dVKv8YypMpomAbygW+mU5cYP3S5cWTfCJjG8xV6CFdzGFlfWK81IjL9viiTvpb6G7gQ==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.17.12.tgz", + "integrity": "sha512-EA5eYFUG6xeerdabina/xIoB95jJ17mAkR8ivx6ZSu9frKShBjpOGZPn511MTDTkiCO+zXnzNczvUM69YSf3Zw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.16.7.tgz", + "integrity": "sha512-8UYLSlyLgRixQvlYH3J2ekXFHDFLQutdy7FfFAMm3CPZ6q9wHCwnUyiXpQCe3gVVnQlHc5nsuiEVziteRNTXEA==", + "dev": true, + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.18.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.1.tgz", + "integrity": "sha512-+TTB5XwvJ5hZbO8xvl2H4XaMDOAK57zF4miuC9qQJgysPNEAZZ9Z69rdF5LJkozGdZrjBIUAIyKUWRMmebI7vg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.16.7.tgz", + "integrity": "sha512-SU/C68YVwTRxqWj5kgsbKINakGag0KTgq9f2iZEXdStoAbOzLHEBRYzImmA6yFo8YZhJVflvXmIHUO7GWHmxxA==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.16.7", + "@babel/helper-function-name": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.17.12.tgz", + "integrity": "sha512-8iRkvaTjJciWycPIZ9k9duu663FT7VrBdNqNgxnVXEFwOIp55JWcZd23VBRySYbnS3PwQ3rGiabJBBBGj5APmQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.16.7.tgz", + "integrity": "sha512-mBruRMbktKQwbxaJof32LT9KLy2f3gH+27a5XSuXo6h7R3vqltl0PgZ80C8ZMKw98Bf8bqt6BEVi3svOh2PzMw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.18.0.tgz", + "integrity": "sha512-h8FjOlYmdZwl7Xm2Ug4iX2j7Qy63NANI+NQVWQzv6r25fqgg7k2dZl03p95kvqNclglHs4FZ+isv4p1uXMA+QA==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12", + "babel-plugin-dynamic-import-node": "^2.3.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.2.tgz", + "integrity": "sha512-f5A865gFPAJAEE0K7F/+nm5CmAE3y8AWlMBG9unu5j9+tk50UQVK0QS8RNxSp7MJf0wh97uYyLWt3Zvu71zyOQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-simple-access": "^7.18.2", + "babel-plugin-dynamic-import-node": "^2.3.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.18.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.18.4.tgz", + "integrity": "sha512-lH2UaQaHVOAeYrUUuZ8i38o76J/FnO8vu21OE+tD1MyP9lxdZoSfz+pDbWkq46GogUrdrMz3tiz/FYGB+bVThg==", + "dev": true, + "dependencies": { + "@babel/helper-hoist-variables": "^7.16.7", + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-validator-identifier": "^7.16.7", + "babel-plugin-dynamic-import-node": "^2.3.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.0.tgz", + "integrity": "sha512-d/zZ8I3BWli1tmROLxXLc9A6YXvGK8egMxHp+E/rRwMh1Kip0AP77VwZae3snEJ33iiWwvNv2+UIIhfalqhzZA==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.17.12.tgz", + "integrity": "sha512-vWoWFM5CKaTeHrdUJ/3SIOTRV+MBVGybOC9mhJkaprGNt5demMymDW24yC74avb915/mIRe3TgNb/d8idvnCRA==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.17.12.tgz", + "integrity": "sha512-CaOtzk2fDYisbjAD4Sd1MTKGVIpRtx9bWLyj24Y/k6p4s4gQ3CqDGJauFJxt8M/LEx003d0i3klVqnN73qvK3w==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.16.7.tgz", + "integrity": "sha512-14J1feiQVWaGvRxj2WjyMuXS2jsBkgB3MdSN5HuC2G5nRspa5RK9COcs82Pwy5BuGcjb+fYaUj94mYcOj7rCvw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-replace-supers": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.17.12.tgz", + "integrity": "sha512-6qW4rWo1cyCdq1FkYri7AHpauchbGLXpdwnYsfxFb+KtddHENfsY5JZb35xUwkK5opOLcJ3BNd2l7PhRYGlwIA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.16.7.tgz", + "integrity": "sha512-z4FGr9NMGdoIl1RqavCqGG+ZuYjfZ/hkCIeuH6Do7tXmSm0ls11nYVSJqFEUOSJbDab5wC6lRE/w6YjVcr6Hqw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.18.0.tgz", + "integrity": "sha512-C8YdRw9uzx25HSIzwA7EM7YP0FhCe5wNvJbZzjVNHHPGVcDJ3Aie+qGYYdS1oVQgn+B3eAIJbWFLrJ4Jipv7nw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12", + "regenerator-transform": "^0.15.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.17.12.tgz", + "integrity": "sha512-1KYqwbJV3Co03NIi14uEHW8P50Md6KqFgt0FfpHdK6oyAHQVTosgPuPSiWud1HX0oYJ1hGRRlk0fP87jFpqXZA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.16.7.tgz", + "integrity": "sha512-hah2+FEnoRoATdIb05IOXf+4GzXYTq75TVhIn1PewihbpyrNWUt2JbudKQOETWw6QpLe+AIUpJ5MVLYTQbeeUg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.17.12.tgz", + "integrity": "sha512-9pgmuQAtFi3lpNUstvG9nGfk9DkrdmWNp9KeKPFmuZCpEnxRzYlS8JgwPjYj+1AWDOSvoGN0H30p1cBOmT/Svg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.16.7.tgz", + "integrity": "sha512-NJa0Bd/87QV5NZZzTuZG5BPJjLYadeSZ9fO6oOUoL4iQx+9EEuw/eEM92SrsT19Yc2jgB1u1hsjqDtH02c3Drw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.2.tgz", + "integrity": "sha512-/cmuBVw9sZBGZVOMkpAEaVLwm4JmK2GZ1dFKOGGpMzEHWFmyZZ59lUU0PdRr8YNYeQdNzTDwuxP2X2gzydTc9g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.17.12.tgz", + "integrity": "sha512-Q8y+Jp7ZdtSPXCThB6zjQ74N3lj0f6TDh1Hnf5B+sYlzQ8i5Pjp8gW0My79iekSpT4WnI06blqP6DT0OmaXXmw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.17.12" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.16.7.tgz", + "integrity": "sha512-TAV5IGahIz3yZ9/Hfv35TV2xEm+kaBDaZQCn2S/hG9/CZ0DktxJv9eKfPc7yYCvOYR4JGx1h8C+jcSOvgaaI/Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.16.7.tgz", + "integrity": "sha512-oC5tYYKw56HO75KZVLQ+R/Nl3Hro9kf8iG0hXoaHP7tjAyCpvqBiSNe6vGrZni1Z6MggmUOC6A7VP7AVmw225Q==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.2.tgz", + "integrity": "sha512-PfpdxotV6afmXMU47S08F9ZKIm2bJIQ0YbAAtDfIENX7G1NUAXigLREh69CWDjtgUy7dYn7bsMzkgdtAlmS68Q==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.17.10", + "@babel/helper-compilation-targets": "^7.18.2", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-validator-option": "^7.16.7", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.17.12", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.17.12", + "@babel/plugin-proposal-async-generator-functions": "^7.17.12", + "@babel/plugin-proposal-class-properties": "^7.17.12", + "@babel/plugin-proposal-class-static-block": "^7.18.0", + "@babel/plugin-proposal-dynamic-import": "^7.16.7", + "@babel/plugin-proposal-export-namespace-from": "^7.17.12", + "@babel/plugin-proposal-json-strings": "^7.17.12", + "@babel/plugin-proposal-logical-assignment-operators": "^7.17.12", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.17.12", + "@babel/plugin-proposal-numeric-separator": "^7.16.7", + "@babel/plugin-proposal-object-rest-spread": "^7.18.0", + "@babel/plugin-proposal-optional-catch-binding": "^7.16.7", + "@babel/plugin-proposal-optional-chaining": "^7.17.12", + "@babel/plugin-proposal-private-methods": "^7.17.12", + "@babel/plugin-proposal-private-property-in-object": "^7.17.12", + "@babel/plugin-proposal-unicode-property-regex": "^7.17.12", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.17.12", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.17.12", + "@babel/plugin-transform-async-to-generator": "^7.17.12", + "@babel/plugin-transform-block-scoped-functions": "^7.16.7", + "@babel/plugin-transform-block-scoping": "^7.17.12", + "@babel/plugin-transform-classes": "^7.17.12", + "@babel/plugin-transform-computed-properties": "^7.17.12", + "@babel/plugin-transform-destructuring": "^7.18.0", + "@babel/plugin-transform-dotall-regex": "^7.16.7", + "@babel/plugin-transform-duplicate-keys": "^7.17.12", + "@babel/plugin-transform-exponentiation-operator": "^7.16.7", + "@babel/plugin-transform-for-of": "^7.18.1", + "@babel/plugin-transform-function-name": "^7.16.7", + "@babel/plugin-transform-literals": "^7.17.12", + "@babel/plugin-transform-member-expression-literals": "^7.16.7", + "@babel/plugin-transform-modules-amd": "^7.18.0", + "@babel/plugin-transform-modules-commonjs": "^7.18.2", + "@babel/plugin-transform-modules-systemjs": "^7.18.0", + "@babel/plugin-transform-modules-umd": "^7.18.0", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.17.12", + "@babel/plugin-transform-new-target": "^7.17.12", + "@babel/plugin-transform-object-super": "^7.16.7", + "@babel/plugin-transform-parameters": "^7.17.12", + "@babel/plugin-transform-property-literals": "^7.16.7", + "@babel/plugin-transform-regenerator": "^7.18.0", + "@babel/plugin-transform-reserved-words": "^7.17.12", + "@babel/plugin-transform-shorthand-properties": "^7.16.7", + "@babel/plugin-transform-spread": "^7.17.12", + "@babel/plugin-transform-sticky-regex": "^7.16.7", + "@babel/plugin-transform-template-literals": "^7.18.2", + "@babel/plugin-transform-typeof-symbol": "^7.17.12", + "@babel/plugin-transform-unicode-escapes": "^7.16.7", + "@babel/plugin-transform-unicode-regex": "^7.16.7", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.18.2", + "babel-plugin-polyfill-corejs2": "^0.3.0", + "babel-plugin-polyfill-corejs3": "^0.5.0", + "babel-plugin-polyfill-regenerator": "^0.3.0", + "core-js-compat": "^3.22.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.3.tgz", + "integrity": "sha512-38Y8f7YUhce/K7RMwTp7m0uCumpv9hZkitCbBClqQIow1qSbCvGkcegKOXpEWCQLfWmevgRiWokZ1GkpfhbZug==", + "dev": true, + "dependencies": { + "regenerator-runtime": "^0.13.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz", + "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.16.7", + "@babel/parser": "^7.16.7", + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.2.tgz", + "integrity": "sha512-9eNwoeovJ6KH9zcCNnENY7DMFwTU9JdGCFtqNLfUAqtUHRCOsTOqWoffosP8vKmNYeSBUv3yVJXjfd8ucwOjUA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.18.2", + "@babel/helper-environment-visitor": "^7.18.2", + "@babel/helper-function-name": "^7.17.9", + "@babel/helper-hoist-variables": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/parser": "^7.18.0", + "@babel/types": "^7.18.2", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.18.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.4.tgz", + "integrity": "sha512-ThN1mBcMq5pG/Vm2IcBmPPfyPXbd8S02rS+OBIDENdufvqC7Z/jHPCv9IcP01277aKtDI8g/2XysBN4hA8niiw==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.16.7", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.7.tgz", + "integrity": "sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.1.tgz", + "integrity": "sha512-Ct5MqZkLGEXTVmQYbGtx9SVqD2fqwvdubdps5D3djjAkgkKwT918VNOz65pEHFaYTeWcukmJmH5SwsA9Tn2ObQ==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.13", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.13.tgz", + "integrity": "sha512-GryiOJmNcWbovBxTfZSF71V/mXbgcV3MewDe3kIMCLyIh5e7SKAeUZs+rMnJ8jkMolZ/4/VsdBmMrw3l+VdZ3w==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.13.tgz", + "integrity": "sha512-o1xbKhp9qnIAoHJSWd6KlCZfqslL4valSF81H8ImioOAxluWYWOpWkpyktY2vnt4tbrX9XYaxovq6cgowaJp2w==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "node_modules/@koa/cors": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@koa/cors/-/cors-3.3.0.tgz", + "integrity": "sha512-lzlkqLlL5Ond8jb6JLnVVDmD2OPym0r5kvZlMgAWiS9xle+Q5ulw1T358oW+RVguxUkANquZQz82i/STIRmsqQ==", + "dev": true, + "dependencies": { + "vary": "^1.1.2" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/@lit/reactive-element": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-1.3.2.tgz", + "integrity": "sha512-A2e18XzPMrIh35nhIdE4uoqRzoIpEU5vZYuQN4S3Ee1zkGdYC27DP12pewbw/RLgPHzaE4kx/YqxMzebOpm0dA==" + }, + "node_modules/@open-wc/building-utils": { + "version": "2.18.4", + "resolved": "https://registry.npmjs.org/@open-wc/building-utils/-/building-utils-2.18.4.tgz", + "integrity": "sha512-wjNp9oE1SFsiBEqaI67ff60KHDpDbGMNF+82pvCHe412SFY4q8DNy8A+hesj1nZsuZHH1/olDfzBDbYKAnmgMg==", + "dev": true, + "dependencies": { + "@babel/core": "^7.11.1", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@webcomponents/shadycss": "^1.10.2", + "@webcomponents/webcomponentsjs": "^2.5.0", + "arrify": "^2.0.1", + "browserslist": "^4.16.0", + "chokidar": "^3.4.3", + "clean-css": "^4.2.3", + "clone": "^2.1.2", + "core-js-bundle": "^3.8.1", + "deepmerge": "^4.2.2", + "es-module-shims": "^0.4.7", + "html-minifier-terser": "^5.1.1", + "lru-cache": "^5.1.1", + "minimatch": "^3.0.4", + "parse5": "^5.1.1", + "path-is-inside": "^1.0.2", + "regenerator-runtime": "^0.13.7", + "resolve": "^1.19.0", + "rimraf": "^3.0.2", + "shady-css-scoped-element": "^0.0.2", + "systemjs": "^6.8.3", + "terser": "^4.6.7", + "valid-url": "^1.0.9", + "whatwg-fetch": "^3.5.0", + "whatwg-url": "^7.1.0" + } + }, + "node_modules/@rollup/plugin-node-resolve": { + "version": "15.0.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.0.0.tgz", + "integrity": "sha512-iwJbzfTzlzDDQcGmkS7EkCKwe2kSkdBrjX87Fy/KrNjr6UNnLpod0t6X66e502LRe5JJCA4FFqrEscWPnZAkig==", + "dev": true, + "dependencies": { + "@rollup/pluginutils": "^4.2.1", + "@types/resolve": "1.20.2", + "deepmerge": "^4.2.2", + "is-builtin-module": "^3.2.0", + "is-module": "^1.0.0", + "resolve": "^1.22.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.78.0||^3.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-node-resolve/node_modules/@rollup/pluginutils": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.2.1.tgz", + "integrity": "sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==", + "dev": true, + "dependencies": { + "estree-walker": "^2.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/@rollup/plugin-node-resolve/node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true + }, + "node_modules/@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dev": true, + "dependencies": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/@types/accepts": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/accepts/-/accepts-1.3.5.tgz", + "integrity": "sha512-jOdnI/3qTpHABjM5cx1Hc0sKsPoYCp+DP/GJRGtDlPd7fiV9oXGGIcjW/ZOxLIvjGz8MA+uMZI9metHlgqbgwQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/babel__core": { + "version": "7.1.19", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.19.tgz", + "integrity": "sha512-WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.4", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", + "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", + "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.17.1", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.17.1.tgz", + "integrity": "sha512-kVzjari1s2YVi77D3w1yuvohV2idweYXMCDzqBiVNN63TcDWrIlTVOYpqVrvbbyOE/IyzBoTKF0fdnLPEORFxA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.3.0" + } + }, + "node_modules/@types/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "dev": true, + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/browserslist": { + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@types/browserslist/-/browserslist-4.15.0.tgz", + "integrity": "sha512-h9LyKErRGZqMsHh9bd+FE8yCIal4S0DxKTOeui56VgVXqa66TKiuaIUxCAI7c1O0LjaUzOTcsMyOpO9GetozRA==", + "deprecated": "This is a stub types definition. browserslist provides its own type definitions, so you do not need this installed.", + "dev": true, + "dependencies": { + "browserslist": "*" + } + }, + "node_modules/@types/browserslist-useragent": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/browserslist-useragent/-/browserslist-useragent-3.0.4.tgz", + "integrity": "sha512-S/AhrluMHi8EcuxxCtTDBGr8u+XvwUfLvZdARuIS2LFZ/lHoeaeJJYCozD68GKH6wm52FbIHq4WWPF/Ec6a9qA==", + "dev": true + }, + "node_modules/@types/caniuse-api": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/caniuse-api/-/caniuse-api-3.0.2.tgz", + "integrity": "sha512-YfCDMn7R59n7GFFfwjPAM0zLJQy4UvveC32rOJBmTqJJY8uSRqM4Dc7IJj8V9unA48Qy4nj5Bj3jD6Q8VZ1Seg==", + "dev": true + }, + "node_modules/@types/clean-css": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@types/clean-css/-/clean-css-4.2.6.tgz", + "integrity": "sha512-Ze1tf+LnGPmG6hBFMi0B4TEB0mhF7EiMM5oyjLDNPE9hxrPU0W+5+bHvO+eFPA+bt0iC1zkQMoU/iGdRVjcRbw==", + "dev": true, + "dependencies": { + "@types/node": "*", + "source-map": "^0.6.0" + } + }, + "node_modules/@types/command-line-args": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@types/command-line-args/-/command-line-args-5.2.0.tgz", + "integrity": "sha512-UuKzKpJJ/Ief6ufIaIzr3A/0XnluX7RvFgwkV89Yzvm77wCh1kFaFmqN8XEnGcN62EuHdedQjEMb8mYxFLGPyA==", + "dev": true + }, + "node_modules/@types/command-line-usage": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@types/command-line-usage/-/command-line-usage-5.0.2.tgz", + "integrity": "sha512-n7RlEEJ+4x4TS7ZQddTmNSxP+zziEG0TNsMfiRIxcIVXt71ENJ9ojeXmGO3wPoTdn7pJcU2xc3CJYMktNT6DPg==", + "dev": true + }, + "node_modules/@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/content-disposition": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/@types/content-disposition/-/content-disposition-0.5.5.tgz", + "integrity": "sha512-v6LCdKfK6BwcqMo+wYW05rLS12S0ZO0Fl4w1h4aaZMD7bqT3gVUns6FvLJKGZHQmYn3SX55JWGpziwJRwVgutA==", + "dev": true + }, + "node_modules/@types/cookies": { + "version": "0.7.7", + "resolved": "https://registry.npmjs.org/@types/cookies/-/cookies-0.7.7.tgz", + "integrity": "sha512-h7BcvPUogWbKCzBR2lY4oqaZbO3jXZksexYJVFvkrFeLgbZjQkU4x8pRq6eg2MHXQhY0McQdqmmsxRWlVAHooA==", + "dev": true, + "dependencies": { + "@types/connect": "*", + "@types/express": "*", + "@types/keygrip": "*", + "@types/node": "*" + } + }, + "node_modules/@types/debounce": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@types/debounce/-/debounce-1.2.1.tgz", + "integrity": "sha512-epMsEE85fi4lfmJUH/89/iV/LI+F5CvNIvmgs5g5jYFPfhO2S/ae8WSsLOKWdwtoaZw9Q2IhJ4tQ5tFCcS/4HA==", + "dev": true + }, + "node_modules/@types/estree": { + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", + "dev": true + }, + "node_modules/@types/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@types/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-bsKkeSqN7HYyYntFRAmzcwx/dKW4Wa+KVMTInANlI72PWLQmOpZu96j0OqHZGArW4VQwCmJPteQlXaUDeOB0WQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/express": { + "version": "4.17.13", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz", + "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==", + "dev": true, + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.18", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "4.17.28", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.28.tgz", + "integrity": "sha512-P1BJAEAW3E2DJUlkgq4tOL3RyMunoWXqbSCygWo5ZIWTjUgN1YnaXWW4VWl/oc8vs/XoYibEGBKP0uZyF4AHig==", + "dev": true, + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*" + } + }, + "node_modules/@types/html-minifier": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/@types/html-minifier/-/html-minifier-3.5.3.tgz", + "integrity": "sha512-j1P/4PcWVVCPEy5lofcHnQ6BtXz9tHGiFPWzqm7TtGuWZEfCHEP446HlkSNc9fQgNJaJZ6ewPtp2aaFla/Uerg==", + "dev": true, + "dependencies": { + "@types/clean-css": "*", + "@types/relateurl": "*", + "@types/uglify-js": "*" + } + }, + "node_modules/@types/http-assert": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@types/http-assert/-/http-assert-1.5.3.tgz", + "integrity": "sha512-FyAOrDuQmBi8/or3ns4rwPno7/9tJTijVW6aQQjK02+kOQ8zmoNg2XJtAuQhvQcy1ASJq38wirX5//9J1EqoUA==", + "dev": true + }, + "node_modules/@types/http-errors": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-1.8.2.tgz", + "integrity": "sha512-EqX+YQxINb+MeXaIqYDASb6U6FCHbWjkj4a1CKDBks3d/QiB2+PqBLyO72vLDgAO1wUI4O+9gweRcQK11bTL/w==", + "dev": true + }, + "node_modules/@types/keygrip": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@types/keygrip/-/keygrip-1.0.2.tgz", + "integrity": "sha512-GJhpTepz2udxGexqos8wgaBx4I/zWIDPh/KOGEwAqtuGDkOUJu5eFvwmdBX4AmB8Odsr+9pHCQqiAqDL/yKMKw==", + "dev": true + }, + "node_modules/@types/koa": { + "version": "2.13.4", + "resolved": "https://registry.npmjs.org/@types/koa/-/koa-2.13.4.tgz", + "integrity": "sha512-dfHYMfU+z/vKtQB7NUrthdAEiSvnLebvBjwHtfFmpZmB7em2N3WVQdHgnFq+xvyVgxW5jKDmjWfLD3lw4g4uTw==", + "dev": true, + "dependencies": { + "@types/accepts": "*", + "@types/content-disposition": "*", + "@types/cookies": "*", + "@types/http-assert": "*", + "@types/http-errors": "*", + "@types/keygrip": "*", + "@types/koa-compose": "*", + "@types/node": "*" + } + }, + "node_modules/@types/koa__cors": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@types/koa__cors/-/koa__cors-3.3.0.tgz", + "integrity": "sha512-FUN8YxcBakIs+walVe3+HcNP+Bxd0SB8BJHBWkglZ5C1XQWljlKcEFDG/dPiCIqwVCUbc5X0nYDlH62uEhdHMA==", + "dev": true, + "dependencies": { + "@types/koa": "*" + } + }, + "node_modules/@types/koa-compose": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/@types/koa-compose/-/koa-compose-3.2.5.tgz", + "integrity": "sha512-B8nG/OoE1ORZqCkBVsup/AKcvjdgoHnfi4pZMn5UwAPCbhk/96xyv284eBYW8JlQbQ7zDmnpFr68I/40mFoIBQ==", + "dev": true, + "dependencies": { + "@types/koa": "*" + } + }, + "node_modules/@types/koa-compress": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/koa-compress/-/koa-compress-2.0.9.tgz", + "integrity": "sha512-1Sa9OsbHd2N2N7gLpdIRHe8W99EZbfIR31D7Iisx16XgwZCnWUtGXzXQejhu74Y1pE/wILqBP6VL49ch/MVpZw==", + "dev": true, + "dependencies": { + "@types/koa": "*", + "@types/node": "*" + } + }, + "node_modules/@types/koa-etag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/koa-etag/-/koa-etag-3.0.0.tgz", + "integrity": "sha512-gXQUtKGEnCy0sZLG+uE3wL4mvY1CBPcb6ECjpAoD8RGYy/8ACY1B084k8LTFPIdVcmy7GD6Y4n3up3jnupofcQ==", + "dev": true, + "dependencies": { + "@types/etag": "*", + "@types/koa": "*" + } + }, + "node_modules/@types/koa-send": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/@types/koa-send/-/koa-send-4.1.3.tgz", + "integrity": "sha512-daaTqPZlgjIJycSTNjKpHYuKhXYP30atFc1pBcy6HHqB9+vcymDgYTguPdx9tO4HMOqNyz6bz/zqpxt5eLR+VA==", + "dev": true, + "dependencies": { + "@types/koa": "*" + } + }, + "node_modules/@types/koa-static": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/koa-static/-/koa-static-4.0.2.tgz", + "integrity": "sha512-ns/zHg+K6XVPMuohjpOlpkR1WLa4VJ9czgUP9bxkCDn0JZBtUWbD/wKDZzPGDclkQK1bpAEScufCHOy8cbfL0w==", + "dev": true, + "dependencies": { + "@types/koa": "*", + "@types/koa-send": "*" + } + }, + "node_modules/@types/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@types/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-ssE3Vlrys7sdIzs5LOxCzTVMsU7i9oa/IaW92wF32JFb3CVczqOkru2xspuKczHEbG3nvmPY7IFqVmGGHdNbYw==", + "dev": true + }, + "node_modules/@types/mime": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz", + "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==", + "dev": true + }, + "node_modules/@types/mime-types": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@types/mime-types/-/mime-types-2.1.1.tgz", + "integrity": "sha512-vXOTGVSLR2jMw440moWTC7H19iUyLtP3Z1YTj7cSsubOICinjMxFeb/V57v9QdyyPGbbWolUFSSmSiRSn94tFw==", + "dev": true + }, + "node_modules/@types/minimatch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", + "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==", + "dev": true + }, + "node_modules/@types/node": { + "version": "17.0.42", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.42.tgz", + "integrity": "sha512-Q5BPGyGKcvQgAMbsr7qEGN/kIPN6zZecYYABeTDBizOsau+2NMdSVTar9UQw21A2+JyA2KRNDYaYrPB0Rpk2oQ==", + "dev": true + }, + "node_modules/@types/parse5": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-6.0.3.tgz", + "integrity": "sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==", + "dev": true + }, + "node_modules/@types/path-is-inside": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/path-is-inside/-/path-is-inside-1.0.0.tgz", + "integrity": "sha512-hfnXRGugz+McgX2jxyy5qz9sB21LRzlGn24zlwN2KEgoPtEvjzNRrLtUkOOebPDPZl3Rq7ywKxYvylVcEZDnEw==", + "dev": true + }, + "node_modules/@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", + "dev": true + }, + "node_modules/@types/range-parser": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", + "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", + "dev": true + }, + "node_modules/@types/relateurl": { + "version": "0.2.29", + "resolved": "https://registry.npmjs.org/@types/relateurl/-/relateurl-0.2.29.tgz", + "integrity": "sha512-QSvevZ+IRww2ldtfv1QskYsqVVVwCKQf1XbwtcyyoRvLIQzfyPhj/C+3+PKzSDRdiyejaiLgnq//XTkleorpLg==", + "dev": true + }, + "node_modules/@types/resolve": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz", + "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==", + "dev": true + }, + "node_modules/@types/serve-static": { + "version": "1.13.10", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.10.tgz", + "integrity": "sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ==", + "dev": true, + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" + } + }, + "node_modules/@types/trusted-types": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.2.tgz", + "integrity": "sha512-F5DIZ36YVLE+PN+Zwws4kJogq47hNgX3Nx6WyDJ3kcplxyke3XIzB8uK5n/Lpm1HBsbGzd6nmGehL8cPekP+Tg==" + }, + "node_modules/@types/uglify-js": { + "version": "3.17.0", + "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.17.0.tgz", + "integrity": "sha512-3HO6rm0y+/cqvOyA8xcYLweF0TKXlAxmQASjbOi49Co51A1N4nR4bEwBgRoD9kNM+rqFGArjKr654SLp2CoGmQ==", + "dev": true, + "dependencies": { + "source-map": "^0.6.1" + } + }, + "node_modules/@types/whatwg-url": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-6.4.0.tgz", + "integrity": "sha512-tonhlcbQ2eho09am6RHnHOgvtDfDYINd5rgxD+2YSkKENooVCFsWizJz139MQW/PV8FfClyKrNe9ZbdHrSCxGg==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@web/parse5-utils": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@web/parse5-utils/-/parse5-utils-1.3.0.tgz", + "integrity": "sha512-Pgkx3ECc8EgXSlS5EyrgzSOoUbM6P8OKS471HLAyvOBcP1NCBn0to4RN/OaKASGq8qa3j+lPX9H14uA5AHEnQg==", + "dev": true, + "dependencies": { + "@types/parse5": "^6.0.1", + "parse5": "^6.0.1" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@web/parse5-utils/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, + "node_modules/@web/rollup-plugin-copy": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@web/rollup-plugin-copy/-/rollup-plugin-copy-0.3.0.tgz", + "integrity": "sha512-QNNtE7Svhk0/p21etaR0JQXYhlMgTAg/HmRXDMmQHMf3uOUWsWMGiJa96P49RRVJut1ECB5FDFeBUgFEmegysQ==", + "dev": true, + "dependencies": { + "glob": "^7.1.6" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@web/rollup-plugin-html": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@web/rollup-plugin-html/-/rollup-plugin-html-1.11.0.tgz", + "integrity": "sha512-EqUcV5plGYTV/utdbX8g5t8Yq/z6VfFuQuPD39ckOQuRj7Rj6HD15FHwLHpFAWOR0+GrDnNzR74RvI4ipGm0qQ==", + "dev": true, + "dependencies": { + "@web/parse5-utils": "^1.3.0", + "glob": "^7.1.6", + "html-minifier-terser": "^6.0.0", + "parse5": "^6.0.1" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@web/rollup-plugin-html/node_modules/clean-css": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.1.tgz", + "integrity": "sha512-lCr8OHhiWCTw4v8POJovCoh4T7I9U11yVsPjMWWnnMmp9ZowCxyad1Pathle/9HjaDp+fdQKjO9fQydE6RHTZg==", + "dev": true, + "dependencies": { + "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 10.0" + } + }, + "node_modules/@web/rollup-plugin-html/node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "dev": true, + "engines": { + "node": ">= 12" + } + }, + "node_modules/@web/rollup-plugin-html/node_modules/html-minifier-terser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", + "integrity": "sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==", + "dev": true, + "dependencies": { + "camel-case": "^4.1.2", + "clean-css": "^5.2.2", + "commander": "^8.3.0", + "he": "^1.2.0", + "param-case": "^3.0.4", + "relateurl": "^0.2.7", + "terser": "^5.10.0" + }, + "bin": { + "html-minifier-terser": "cli.js" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@web/rollup-plugin-html/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, + "node_modules/@web/rollup-plugin-html/node_modules/terser": { + "version": "5.15.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.15.1.tgz", + "integrity": "sha512-K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw==", + "dev": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@web/rollup-plugin-html/node_modules/terser/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "node_modules/@webcomponents/shadycss": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webcomponents/shadycss/-/shadycss-1.11.0.tgz", + "integrity": "sha512-L5O/+UPum8erOleNjKq6k58GVl3fNsEQdSOyh0EUhNmi7tHUyRuCJy1uqJiWydWcLARE5IPsMoPYMZmUGrz1JA==", + "dev": true + }, + "node_modules/@webcomponents/webcomponentsjs": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@webcomponents/webcomponentsjs/-/webcomponentsjs-2.6.0.tgz", + "integrity": "sha512-Moog+Smx3ORTbWwuPqoclr+uvfLnciVd6wdCaVscHPrxbmQ/IJKm3wbB7hpzJtXWjAq2l/6QMlO85aZiOdtv5Q==", + "dev": true + }, + "node_modules/abortcontroller-polyfill": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/abortcontroller-polyfill/-/abortcontroller-polyfill-1.7.3.tgz", + "integrity": "sha512-zetDJxd89y3X99Kvo4qFx8GKlt6GsvN3UcRZHwU6iFA/0KiOmhkTVhe8oRoTBiTVPZu09x3vCra47+w8Yz1+2Q==", + "dev": true + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dev": true, + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.8.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", + "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", + "dev": true + }, + "node_modules/anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/array-back": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/array-back/-/array-back-3.1.0.tgz", + "integrity": "sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/arrify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/async": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", + "dev": true, + "dependencies": { + "lodash": "^4.17.14" + } + }, + "node_modules/babel-plugin-dynamic-import-node": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", + "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "dev": true, + "dependencies": { + "object.assign": "^4.1.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.1.tgz", + "integrity": "sha512-v7/T6EQcNfVLfcN2X8Lulb7DjprieyLWJK/zOWH5DUYcAgex9sP3h25Q+DLsX9TloXe3y1O8l2q2Jv9q8UVB9w==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.13.11", + "@babel/helper-define-polyfill-provider": "^0.3.1", + "semver": "^6.1.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.2.tgz", + "integrity": "sha512-G3uJih0XWiID451fpeFaYGVuxHEjzKTHtc9uGFEjR6hHrvNzeS/PX+LLLcetJcytsB5m4j+K3o/EpXJNb/5IEQ==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.1", + "core-js-compat": "^3.21.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz", + "integrity": "sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/brotli-size": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/brotli-size/-/brotli-size-4.0.0.tgz", + "integrity": "sha512-uA9fOtlTRC0iqKfzff1W34DXUA3GyVqbUaeo3Rw3d4gd1eavKVCETXrn3NzO74W+UVkG3UHu8WxUi+XvKI/huA==", + "dev": true, + "dependencies": { + "duplexer": "0.1.1" + }, + "engines": { + "node": ">= 10.16.0" + } + }, + "node_modules/browserslist": { + "version": "4.20.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.4.tgz", + "integrity": "sha512-ok1d+1WpnU24XYN7oC3QWgTyMhY/avPJ/r9T00xxvUOIparA/gc+UPUMaod3i+G6s+nI2nUb9xZ5k794uIwShw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001349", + "electron-to-chromium": "^1.4.147", + "escalade": "^3.1.1", + "node-releases": "^2.0.5", + "picocolors": "^1.0.0" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/browserslist-useragent": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/browserslist-useragent/-/browserslist-useragent-3.1.4.tgz", + "integrity": "sha512-o9V55790uae98Kwn+vwyO+ww07OreiH1BUc9bjjlUbIL3Fh43fyoasZxZ2EiI4ErfEIKwbycQ1pvwOBlySJ7ow==", + "dev": true, + "dependencies": { + "browserslist": "^4.19.1", + "electron-to-chromium": "^1.4.67", + "semver": "^7.3.5", + "useragent": "^2.3.0", + "yamlparser": "^0.0.2" + }, + "engines": { + "node": ">= 6.x.x" + } + }, + "node_modules/browserslist-useragent/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/browserslist-useragent/node_modules/semver": { + "version": "7.3.7", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/browserslist-useragent/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/builtin-modules": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", + "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cache-content-type": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-content-type/-/cache-content-type-1.0.1.tgz", + "integrity": "sha512-IKufZ1o4Ut42YUrZSo8+qnMTrFuKkvyoLXUywKz9GJ5BrhOFGhLdkx9sG4KAnVvbY6kEcSFjLQul+DVmBm2bgA==", + "dev": true, + "dependencies": { + "mime-types": "^2.1.18", + "ylru": "^1.2.0" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", + "dev": true, + "dependencies": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + } + }, + "node_modules/camel-case/node_modules/tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==", + "dev": true + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-api": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", + "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", + "dev": true, + "dependencies": { + "browserslist": "^4.0.0", + "caniuse-lite": "^1.0.0", + "lodash.memoize": "^4.1.2", + "lodash.uniq": "^4.5.0" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001352", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001352.tgz", + "integrity": "sha512-GUgH8w6YergqPQDGWhJGt8GDRnY0L/iJVQcU3eJ46GYf52R8tk0Wxp0PymuFVZboJYXGiCqwozAYZNRjVj6IcA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + } + ] + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/clean-css": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", + "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", + "dev": true, + "dependencies": { + "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 4.0" + } + }, + "node_modules/cli-table3": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz", + "integrity": "sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0" + }, + "engines": { + "node": "10.* || >= 12.*" + }, + "optionalDependencies": { + "@colors/colors": "1.5.0" + } + }, + "node_modules/clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true, + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/command-line-args": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/command-line-args/-/command-line-args-5.2.1.tgz", + "integrity": "sha512-H4UfQhZyakIjC74I9d34fGYDwk3XpSr17QhEd0Q3I9Xq1CETHo4Hcuo87WyWHpAF1aSLjLRf5lD9ZGX2qStUvg==", + "dev": true, + "dependencies": { + "array-back": "^3.1.0", + "find-replace": "^3.0.0", + "lodash.camelcase": "^4.3.0", + "typical": "^4.0.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/command-line-usage": { + "version": "6.1.3", + "resolved": "https://registry.npmjs.org/command-line-usage/-/command-line-usage-6.1.3.tgz", + "integrity": "sha512-sH5ZSPr+7UStsloltmDh7Ce5fb8XPlHyoPzTpyyMuYCtervL65+ubVZ6Q61cFtFl62UyJlc8/JwERRbAFPUqgw==", + "dev": true, + "dependencies": { + "array-back": "^4.0.2", + "chalk": "^2.4.2", + "table-layout": "^1.0.2", + "typical": "^5.2.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/command-line-usage/node_modules/array-back": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/array-back/-/array-back-4.0.2.tgz", + "integrity": "sha512-NbdMezxqf94cnNfWLL7V/im0Ub+Anbb0IoZhvzie8+4HJ4nMQuzHuy49FkGYCJK2yAloZ3meiB6AVMClbrI1vg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/command-line-usage/node_modules/typical": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/typical/-/typical-5.2.0.tgz", + "integrity": "sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dev": true, + "dependencies": { + "mime-db": ">= 1.43.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dev": true, + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-disposition/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", + "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.1" + } + }, + "node_modules/cookies": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/cookies/-/cookies-0.8.0.tgz", + "integrity": "sha512-8aPsApQfebXnuI+537McwYsDtjVxGm8gTIzQI3FDW6t5t/DAhERxtnbEPN/8RX+uZthoz4eCOgloXaE5cYyNow==", + "dev": true, + "dependencies": { + "depd": "~2.0.0", + "keygrip": "~1.1.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/core-js-bundle": { + "version": "3.22.8", + "resolved": "https://registry.npmjs.org/core-js-bundle/-/core-js-bundle-3.22.8.tgz", + "integrity": "sha512-Q99g5q/MqLRk3QaouZWCVs9Vfy51iKS1h5icZ73bGFOHEBk8Mx721qPcRIBR3G93sCu1WPneIugdu5kDKrBErg==", + "dev": true, + "hasInstallScript": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-compat": { + "version": "3.22.8", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.22.8.tgz", + "integrity": "sha512-pQnwg4xtuvc2Bs/5zYQPaEYYSuTxsF7LBWF0SvnVhthZo/Qe+rJpcEekrdNK5DWwDJ0gv0oI9NNX5Mppdy0ctg==", + "dev": true, + "dependencies": { + "browserslist": "^4.20.3", + "semver": "7.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-compat/node_modules/semver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/debounce": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz", + "integrity": "sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==", + "dev": true + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/deep-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", + "integrity": "sha512-bHtC0iYvWhyaTzvV3CZgPeZQqCOBGyGsVV7v4eevpdkLHfiSrXUdBG+qAuSz4RI70sszvjQ1QSZ98An1yNwpSw==", + "dev": true + }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "dev": true, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/deepmerge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-properties": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "dev": true, + "dependencies": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", + "dev": true + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "dev": true, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "dev": true, + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/dot-case/node_modules/tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==", + "dev": true + }, + "node_modules/duplexer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", + "integrity": "sha512-sxNZ+ljy+RA1maXoUReeqBBpBC6RLKmg5ewzV+x+mSETmWNoKdZN6vcQjpFROemza23hGFskJtFNoUWUaQ+R4Q==", + "dev": true + }, + "node_modules/dynamic-import-polyfill": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/dynamic-import-polyfill/-/dynamic-import-polyfill-0.1.1.tgz", + "integrity": "sha512-m953zv0w5oDagTItWm6Auhmk/pY7EiejaqiVbnzSS3HIjh1FCUeK7WzuaVtWPNs58A+/xpIE+/dVk6pKsrua8g==", + "dev": true + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "dev": true + }, + "node_modules/electron-to-chromium": { + "version": "1.4.152", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.152.tgz", + "integrity": "sha512-jk4Ju5SGZAQQJ1iI4Rgru7dDlvkQPLpNPWH9gIZmwCD4YteA5Bbk1xPcPDUf5jUYs3e1e80RXdi8XgKQZaigeg==", + "dev": true + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dev": true, + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/es-dev-server": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-dev-server/-/es-dev-server-2.1.0.tgz", + "integrity": "sha512-Vrq/4PyMzWz33QmOdSncvoWLTJVcv2e96z8FLHQwP9zK7DyLeDZCckII8VTW+btUGtM7aErvLH/d/R2pjjjs8w==", + "dev": true, + "dependencies": { + "@babel/core": "^7.11.1", + "@babel/plugin-proposal-dynamic-import": "^7.10.4", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.10.4", + "@babel/plugin-proposal-optional-chaining": "^7.11.0", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-transform-template-literals": "^7.8.3", + "@babel/preset-env": "^7.9.0", + "@koa/cors": "^3.1.0", + "@open-wc/building-utils": "^2.18.3", + "@rollup/plugin-node-resolve": "^11.0.0", + "@rollup/pluginutils": "^3.0.0", + "@types/babel__core": "^7.1.3", + "@types/browserslist": "^4.8.0", + "@types/browserslist-useragent": "^3.0.0", + "@types/caniuse-api": "^3.0.0", + "@types/command-line-args": "^5.0.0", + "@types/command-line-usage": "^5.0.1", + "@types/debounce": "^1.2.0", + "@types/koa": "^2.0.48", + "@types/koa__cors": "^3.0.1", + "@types/koa-compress": "^2.0.9", + "@types/koa-etag": "^3.0.0", + "@types/koa-static": "^4.0.1", + "@types/lru-cache": "^5.1.0", + "@types/mime-types": "^2.1.0", + "@types/minimatch": "^3.0.3", + "@types/path-is-inside": "^1.0.0", + "@types/whatwg-url": "^6.4.0", + "browserslist": "^4.9.1", + "browserslist-useragent": "^3.0.2", + "builtin-modules": "^3.1.0", + "camelcase": "^5.3.1", + "caniuse-api": "^3.0.0", + "caniuse-lite": "^1.0.30001033", + "chokidar": "^3.0.0", + "command-line-args": "^5.0.2", + "command-line-usage": "^6.1.0", + "debounce": "^1.2.0", + "deepmerge": "^4.2.2", + "es-module-lexer": "^0.3.13", + "get-stream": "^5.1.0", + "is-stream": "^2.0.0", + "isbinaryfile": "^4.0.2", + "koa": "^2.7.0", + "koa-compress": "^3.0.0", + "koa-etag": "^3.0.0", + "koa-static": "^5.0.0", + "lru-cache": "^5.1.1", + "mime-types": "^2.1.27", + "minimatch": "^3.0.4", + "open": "^7.0.3", + "parse5": "^5.1.1", + "path-is-inside": "^1.0.2", + "polyfills-loader": "^1.7.4", + "portfinder": "^1.0.21", + "rollup": "^2.7.2", + "strip-ansi": "^5.2.0", + "systemjs": "^6.3.1", + "tslib": "^1.11.1", + "useragent": "^2.3.0", + "whatwg-url": "^7.0.0" + }, + "bin": { + "es-dev-server": "dist/cli.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/es-dev-server/node_modules/@rollup/plugin-node-resolve": { + "version": "11.2.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-11.2.1.tgz", + "integrity": "sha512-yc2n43jcqVyGE2sqV5/YCmocy9ArjVAP/BeXyTtADTBBX6V0e5UMqwO8CdQ0kzjb6zu5P1qMzsScCMRvE9OlVg==", + "dev": true, + "dependencies": { + "@rollup/pluginutils": "^3.1.0", + "@types/resolve": "1.17.1", + "builtin-modules": "^3.1.0", + "deepmerge": "^4.2.2", + "is-module": "^1.0.0", + "resolve": "^1.19.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/es-dev-server/node_modules/@types/resolve": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", + "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/es-module-lexer": { + "version": "0.3.26", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.3.26.tgz", + "integrity": "sha512-Va0Q/xqtrss45hWzP8CZJwzGSZJjDM5/MJRE3IXXnUCcVLElR9BRaE9F62BopysASyc4nM3uwhSW7FFB9nlWAA==", + "dev": true + }, + "node_modules/es-module-shims": { + "version": "0.4.7", + "resolved": "https://registry.npmjs.org/es-module-shims/-/es-module-shims-0.4.7.tgz", + "integrity": "sha512-0LTiSQoPWwdcaTVIQXhGlaDwTneD0g9/tnH1PNs3zHFFH+xoCeJclDM3rQeqF9nurXPfMKm3l9+kfPRa5VpbKg==", + "dev": true + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "dev": true + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", + "dev": true + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/filesize": { + "version": "8.0.7", + "resolved": "https://registry.npmjs.org/filesize/-/filesize-8.0.7.tgz", + "integrity": "sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ==", + "dev": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-replace": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-replace/-/find-replace-3.0.0.tgz", + "integrity": "sha512-6Tb2myMioCAgv5kfvP5/PkZZ/ntTpVK39fHY7WkWBgvbeE+VHd/tZuZ4mrC+bxh4cfOZeYKVPaJIZtZXV7GNCQ==", + "dev": true, + "dependencies": { + "array-back": "^3.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-intrinsic": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz", + "integrity": "sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dev": true, + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/gzip-size": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-7.0.0.tgz", + "integrity": "sha512-O1Ld7Dr+nqPnmGpdhzLmMTQ4vAsD+rHwMm1NLUmoUFFymBOMKxCCrtDxqdBRYXdeEPEi3SyoR4TizJLQrnKBNA==", + "dev": true, + "dependencies": { + "duplexer": "^0.1.2" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gzip-size/node_modules/duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", + "dev": true + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true, + "bin": { + "he": "bin/he" + } + }, + "node_modules/html-minifier": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-4.0.0.tgz", + "integrity": "sha512-aoGxanpFPLg7MkIl/DDFYtb0iWz7jMFGqFhvEDZga6/4QTjneiD8I/NXL1x5aaoCp7FSIT6h/OhykDdPsbtMig==", + "dev": true, + "dependencies": { + "camel-case": "^3.0.0", + "clean-css": "^4.2.1", + "commander": "^2.19.0", + "he": "^1.2.0", + "param-case": "^2.1.1", + "relateurl": "^0.2.7", + "uglify-js": "^3.5.1" + }, + "bin": { + "html-minifier": "cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/html-minifier-terser": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz", + "integrity": "sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg==", + "dev": true, + "dependencies": { + "camel-case": "^4.1.1", + "clean-css": "^4.2.3", + "commander": "^4.1.1", + "he": "^1.2.0", + "param-case": "^3.0.3", + "relateurl": "^0.2.7", + "terser": "^4.6.3" + }, + "bin": { + "html-minifier-terser": "cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/html-minifier/node_modules/camel-case": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz", + "integrity": "sha512-+MbKztAYHXPr1jNTSKQF52VpcFjwY5RkR7fxksV8Doo4KAYc5Fl4UJRgthBbTmEx8C54DqahhbLJkDwjI3PI/w==", + "dev": true, + "dependencies": { + "no-case": "^2.2.0", + "upper-case": "^1.1.1" + } + }, + "node_modules/html-minifier/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "node_modules/html-minifier/node_modules/lower-case": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz", + "integrity": "sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA==", + "dev": true + }, + "node_modules/html-minifier/node_modules/no-case": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-2.3.2.tgz", + "integrity": "sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==", + "dev": true, + "dependencies": { + "lower-case": "^1.1.1" + } + }, + "node_modules/html-minifier/node_modules/param-case": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz", + "integrity": "sha512-eQE845L6ot89sk2N8liD8HAuH4ca6Vvr7VWAWwt7+kvvG5aBcPmmphQ68JsEG2qa9n1TykS2DLeMt363AAH8/w==", + "dev": true, + "dependencies": { + "no-case": "^2.2.0" + } + }, + "node_modules/http-assert": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/http-assert/-/http-assert-1.5.0.tgz", + "integrity": "sha512-uPpH7OKX4H25hBmU6G1jWNaqJGpTXxey+YOUizJUAgu0AjLUeC8D73hTrhvDS5D+GJN1DN1+hhc/eF/wpxtp0w==", + "dev": true, + "dependencies": { + "deep-equal": "~1.0.1", + "http-errors": "~1.8.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-errors": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "dev": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/http-errors/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/intersection-observer": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/intersection-observer/-/intersection-observer-0.7.0.tgz", + "integrity": "sha512-Id0Fij0HsB/vKWGeBe9PxeY45ttRiBmhFyyt/geBdDHBYNctMRTE3dC1U3ujzz3lap+hVXlEcVaB56kZP/eEUg==", + "dev": true + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-builtin-module": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.0.tgz", + "integrity": "sha512-phDA4oSGt7vl1n5tJvTWooWWAsXLY+2xCnxNqvKhGEzujg+A43wPlPOyDg3C8XQHN+6k/JTQWJ/j0dQh/qr+Hw==", + "dev": true, + "dependencies": { + "builtin-modules": "^3.3.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-core-module": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", + "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", + "dev": true, + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true, + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==", + "dev": true + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isbinaryfile": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz", + "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", + "dev": true, + "engines": { + "node": ">= 8.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/gjtorikian/" + } + }, + "node_modules/jest-worker": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", + "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-worker/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json5": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", + "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", + "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/kailib": { + "version": "1.0.48", + "resolved": "https://registry.npmjs.org/kailib/-/kailib-1.0.48.tgz", + "integrity": "sha512-bEANFfmAWWaG4qEPxnOhsp8YQ97ZGJpgg+Ou04CybZg1pPQRAU3UdXNU7Z/LbzDTahSgKMmdfC2uotYTB75VYQ==" + }, + "node_modules/keygrip": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/keygrip/-/keygrip-1.1.0.tgz", + "integrity": "sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ==", + "dev": true, + "dependencies": { + "tsscmp": "1.0.6" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/koa": { + "version": "2.13.4", + "resolved": "https://registry.npmjs.org/koa/-/koa-2.13.4.tgz", + "integrity": "sha512-43zkIKubNbnrULWlHdN5h1g3SEKXOEzoAlRsHOTFpnlDu8JlAOZSMJBLULusuXRequboiwJcj5vtYXKB3k7+2g==", + "dev": true, + "dependencies": { + "accepts": "^1.3.5", + "cache-content-type": "^1.0.0", + "content-disposition": "~0.5.2", + "content-type": "^1.0.4", + "cookies": "~0.8.0", + "debug": "^4.3.2", + "delegates": "^1.0.0", + "depd": "^2.0.0", + "destroy": "^1.0.4", + "encodeurl": "^1.0.2", + "escape-html": "^1.0.3", + "fresh": "~0.5.2", + "http-assert": "^1.3.0", + "http-errors": "^1.6.3", + "is-generator-function": "^1.0.7", + "koa-compose": "^4.1.0", + "koa-convert": "^2.0.0", + "on-finished": "^2.3.0", + "only": "~0.0.2", + "parseurl": "^1.3.2", + "statuses": "^1.5.0", + "type-is": "^1.6.16", + "vary": "^1.1.2" + }, + "engines": { + "node": "^4.8.4 || ^6.10.1 || ^7.10.1 || >= 8.1.4" + } + }, + "node_modules/koa-compose": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/koa-compose/-/koa-compose-4.1.0.tgz", + "integrity": "sha512-8ODW8TrDuMYvXRwra/Kh7/rJo9BtOfPc6qO8eAfC80CnCvSjSl0bkRM24X6/XBBEyj0v1nRUQ1LyOy3dbqOWXw==", + "dev": true + }, + "node_modules/koa-compress": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/koa-compress/-/koa-compress-3.1.0.tgz", + "integrity": "sha512-0m24/yS/GbhWI+g9FqtvStY+yJwTObwoxOvPok6itVjRen7PBWkjsJ8pre76m+99YybXLKhOJ62mJ268qyBFMQ==", + "dev": true, + "dependencies": { + "bytes": "^3.0.0", + "compressible": "^2.0.0", + "koa-is-json": "^1.0.0", + "statuses": "^1.0.0" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/koa-convert": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/koa-convert/-/koa-convert-2.0.0.tgz", + "integrity": "sha512-asOvN6bFlSnxewce2e/DK3p4tltyfC4VM7ZwuTuepI7dEQVcvpyFuBcEARu1+Hxg8DIwytce2n7jrZtRlPrARA==", + "dev": true, + "dependencies": { + "co": "^4.6.0", + "koa-compose": "^4.1.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/koa-etag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/koa-etag/-/koa-etag-3.0.0.tgz", + "integrity": "sha512-HYU1zIsH4S9xOlUZGuZIP1PIiJ0EkBXgwL8PjFECb/pUYmAee8gfcvIovregBMYxECDhLulEWT2+ZRsA/lczCQ==", + "dev": true, + "dependencies": { + "etag": "^1.3.0", + "mz": "^2.1.0" + } + }, + "node_modules/koa-is-json": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/koa-is-json/-/koa-is-json-1.0.0.tgz", + "integrity": "sha512-+97CtHAlWDx0ndt0J8y3P12EWLwTLMXIfMnYDev3wOTwH/RpBGMlfn4bDXlMEg1u73K6XRE9BbUp+5ZAYoRYWw==", + "dev": true + }, + "node_modules/koa-send": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/koa-send/-/koa-send-5.0.1.tgz", + "integrity": "sha512-tmcyQ/wXXuxpDxyNXv5yNNkdAMdFRqwtegBXUaowiQzUKqJehttS0x2j0eOZDQAyloAth5w6wwBImnFzkUz3pQ==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "http-errors": "^1.7.3", + "resolve-path": "^1.4.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/koa-static": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/koa-static/-/koa-static-5.0.0.tgz", + "integrity": "sha512-UqyYyH5YEXaJrf9S8E23GoJFQZXkBVJ9zYYMPGz919MSX1KuvAcycIuS0ci150HCoPf4XQVhQ84Qf8xRPWxFaQ==", + "dev": true, + "dependencies": { + "debug": "^3.1.0", + "koa-send": "^5.0.0" + }, + "engines": { + "node": ">= 7.6.0" + } + }, + "node_modules/koa-static/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/lit": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/lit/-/lit-2.2.5.tgz", + "integrity": "sha512-Ln463c0xJZfzVxBcHddNvFQQ8Z22NK7KgNmrzwFF1iESHUud412RRExzepj18wpTbusgwoTnOYuoTpo9uyNBaQ==", + "dependencies": { + "@lit/reactive-element": "^1.3.0", + "lit-element": "^3.2.0", + "lit-html": "^2.2.0" + } + }, + "node_modules/lit-element": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-3.2.0.tgz", + "integrity": "sha512-HbE7yt2SnUtg5DCrWt028oaU4D5F4k/1cntAFHTkzY8ZIa8N0Wmu92PxSxucsQSOXlODFrICkQ5x/tEshKi13g==", + "dependencies": { + "@lit/reactive-element": "^1.3.0", + "lit-html": "^2.2.0" + } + }, + "node_modules/lit-fontawesome": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/lit-fontawesome/-/lit-fontawesome-0.1.3.tgz", + "integrity": "sha512-Ze///hwsmQZpS4KqbsjxxJXvdhlZG//2z3jNuxIcDGSagE4mtvYXYQYFdhiFudUfyP6PimWtWd+f2ERBooKSPQ==", + "dependencies": { + "lit-element": "^2.2.1" + } + }, + "node_modules/lit-fontawesome/node_modules/lit-element": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-2.5.1.tgz", + "integrity": "sha512-ogu7PiJTA33bEK0xGu1dmaX5vhcRjBXCFexPja0e7P7jqLhTpNKYRPmE+GmiCaRVAbiQKGkUgkh/i6+bh++dPQ==", + "dependencies": { + "lit-html": "^1.1.1" + } + }, + "node_modules/lit-fontawesome/node_modules/lit-html": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-1.4.1.tgz", + "integrity": "sha512-B9btcSgPYb1q4oSOb/PrOT6Z/H+r6xuNzfH4lFli/AWhYwdtrgQkQWBbIc6mdnf6E2IL3gDXdkkqNktpU0OZQA==" + }, + "node_modules/lit-html": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-2.2.5.tgz", + "integrity": "sha512-e56Y9V+RNA+SGYsWP2DGb/wad5Ccd3xUZYjmcmbeZcnc0wP4zFQRXeXn7W3bbfBekmHDK2dOnuYNYkg0bQjh/w==", + "dependencies": { + "@types/trusted-types": "^2.0.2" + } + }, + "node_modules/lit-modal": { + "version": "1.2.38", + "resolved": "https://registry.npmjs.org/lit-modal/-/lit-modal-1.2.38.tgz", + "integrity": "sha512-jSC3xO6TXI5CxNmvdWYlUPSwjftnUySpwzJvgn50ME3bCqCQWXXcVOnfGQY/7mHOe+nDRKFE6Xp3tr1H5iuwpg==", + "dependencies": { + "kailib": "latest" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", + "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==", + "dev": true + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", + "dev": true + }, + "node_modules/lodash.sortby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", + "integrity": "sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==", + "dev": true + }, + "node_modules/lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==", + "dev": true + }, + "node_modules/lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "dev": true, + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/lower-case/node_modules/tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==", + "dev": true + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/magic-string": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", + "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", + "dev": true, + "dependencies": { + "sourcemap-codec": "^1.4.8" + } + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/minify-html-literals": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/minify-html-literals/-/minify-html-literals-1.3.5.tgz", + "integrity": "sha512-p8T8ryePRR8FVfJZLVFmM53WY25FL0moCCTycUDuAu6rf9GMLwy0gNjXBGNin3Yun7Y+tIWd28axOf0t2EpAlQ==", + "dev": true, + "dependencies": { + "@types/html-minifier": "^3.5.3", + "clean-css": "^4.2.1", + "html-minifier": "^4.0.0", + "magic-string": "^0.25.0", + "parse-literals": "^1.2.1" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", + "dev": true + }, + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dev": true, + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "dev": true, + "dependencies": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, + "node_modules/no-case/node_modules/tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==", + "dev": true + }, + "node_modules/node-releases": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.5.tgz", + "integrity": "sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==", + "dev": true + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dev": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/only": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/only/-/only-0.0.2.tgz", + "integrity": "sha512-Fvw+Jemq5fjjyWz6CpKx6w9s7xxqo3+JCyM0WXWeCSOboZ8ABkyvP8ID4CZuChA/wxSx+XSJmdOm8rGVyJ1hdQ==", + "dev": true + }, + "node_modules/open": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", + "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", + "dev": true, + "dependencies": { + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/param-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "dev": true, + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/param-case/node_modules/tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==", + "dev": true + }, + "node_modules/parse-literals": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/parse-literals/-/parse-literals-1.2.1.tgz", + "integrity": "sha512-Ml0w104Ph2wwzuRdxrg9booVWsngXbB4bZ5T2z6WyF8b5oaNkUmBiDtahi34yUIpXD8Y13JjAK6UyIyApJ73RQ==", + "dev": true, + "dependencies": { + "typescript": "^2.9.2 || ^3.0.0 || ^4.0.0" + } + }, + "node_modules/parse5": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz", + "integrity": "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==", + "dev": true + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/pascal-case": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", + "dev": true, + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/pascal-case/node_modules/tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==", + "dev": true + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==", + "dev": true + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/polyfills-loader": { + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/polyfills-loader/-/polyfills-loader-1.7.6.tgz", + "integrity": "sha512-AiLIgmGFmzcvsqewyKsqWb7H8CnWNTSQBoM0u+Mauzmp0DsjObXmnZdeqvTn0HNwc1wYHHTOta82WjSjG341eQ==", + "dev": true, + "dependencies": { + "@babel/core": "^7.11.1", + "@open-wc/building-utils": "^2.18.3", + "@webcomponents/webcomponentsjs": "^2.4.0", + "abortcontroller-polyfill": "^1.4.0", + "core-js-bundle": "^3.6.0", + "deepmerge": "^4.2.2", + "dynamic-import-polyfill": "^0.1.1", + "es-module-shims": "^0.4.6", + "intersection-observer": "^0.7.0", + "parse5": "^5.1.1", + "regenerator-runtime": "^0.13.3", + "resize-observer-polyfill": "^1.5.1", + "systemjs": "^6.3.1", + "terser": "^4.6.7", + "whatwg-fetch": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/portfinder": { + "version": "1.0.28", + "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.28.tgz", + "integrity": "sha512-Se+2isanIcEqf2XMHjyUKskczxbPH7dQnlMjXX6+dybayyHvAf/TCgyMRlzf/B6QDhAEFOGes0pzRo3by4AbMA==", + "dev": true, + "dependencies": { + "async": "^2.6.2", + "debug": "^3.1.1", + "mkdirp": "^0.5.5" + }, + "engines": { + "node": ">= 0.12.0" + } + }, + "node_modules/portfinder/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", + "dev": true + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/reduce-flatten": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/reduce-flatten/-/reduce-flatten-2.0.0.tgz", + "integrity": "sha512-EJ4UNY/U1t2P/2k6oqotuX2Cc3T6nxJwsM0N0asT7dhrtH1ltUxDn4NalSYmPE2rCkVpcf/X6R0wDwcFpzhd4w==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.0.1.tgz", + "integrity": "sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw==", + "dev": true, + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", + "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", + "dev": true + }, + "node_modules/regenerator-transform": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.0.tgz", + "integrity": "sha512-LsrGtPmbYg19bcPHwdtmXwbW+TqNvtY4riE3P83foeHRroMbH6/2ddFBfab3t7kbzc7v7p4wbkIecHImqt0QNg==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/regexpu-core": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.0.1.tgz", + "integrity": "sha512-CriEZlrKK9VJw/xQGJpQM5rY88BtuL8DM+AEwvcThHilbxiTAy8vq4iJnd2tqq8wLmjbGZzP7ZcKFjbGkmEFrw==", + "dev": true, + "dependencies": { + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.0.1", + "regjsgen": "^0.6.0", + "regjsparser": "^0.8.2", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regjsgen": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.6.0.tgz", + "integrity": "sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA==", + "dev": true + }, + "node_modules/regjsparser": { + "version": "0.8.4", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.8.4.tgz", + "integrity": "sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA==", + "dev": true, + "dependencies": { + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/resize-observer-polyfill": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz", + "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==", + "dev": true + }, + "node_modules/resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dev": true, + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-path": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/resolve-path/-/resolve-path-1.4.0.tgz", + "integrity": "sha512-i1xevIst/Qa+nA9olDxLWnLk8YZbi8R/7JPbCMcgyWaFR6bKWaexgJgEB5oc2PKMjYdrHynyz0NY+if+H98t1w==", + "dev": true, + "dependencies": { + "http-errors": "~1.6.2", + "path-is-absolute": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/resolve-path/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/resolve-path/node_modules/http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "dev": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/resolve-path/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true + }, + "node_modules/resolve-path/node_modules/setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rollup": { + "version": "2.79.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.79.1.tgz", + "integrity": "sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==", + "dev": true, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=10.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/rollup-plugin-minify-html-literals": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/rollup-plugin-minify-html-literals/-/rollup-plugin-minify-html-literals-1.2.6.tgz", + "integrity": "sha512-JRq2fjlCTiw0zu+1Sy3ClHGCxA79dWGr4HLHWSQgd060StVW9fBVksuj8Xw/suPkNSGClJf/4xNQ1MF6JeXPaw==", + "dev": true, + "dependencies": { + "minify-html-literals": "^1.3.5", + "rollup-pluginutils": "^2.8.2" + }, + "peerDependencies": { + "rollup": "^0.65.2 || ^1.0.0 || ^2.0.0" + } + }, + "node_modules/rollup-plugin-summary": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/rollup-plugin-summary/-/rollup-plugin-summary-1.4.3.tgz", + "integrity": "sha512-m1xViwOlgocoIaaUX8AdWQVFHzti69MXqrdBsxFsXnQOIqtoU9KSNMZjlToAJvV8pjB85+boAw/P3Yu6F/VIaA==", + "dev": true, + "dependencies": { + "brotli-size": "^4.0.0", + "cli-table3": "^0.6.1", + "filesize": "^8.0.7", + "gzip-size": "^7.0.0", + "terser": "^5.12.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.0.0" + } + }, + "node_modules/rollup-plugin-summary/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "node_modules/rollup-plugin-summary/node_modules/terser": { + "version": "5.15.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.15.1.tgz", + "integrity": "sha512-K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw==", + "dev": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/rollup-plugin-terser": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/rollup-plugin-terser/-/rollup-plugin-terser-7.0.2.tgz", + "integrity": "sha512-w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.10.4", + "jest-worker": "^26.2.1", + "serialize-javascript": "^4.0.0", + "terser": "^5.0.0" + }, + "peerDependencies": { + "rollup": "^2.0.0" + } + }, + "node_modules/rollup-plugin-terser/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "node_modules/rollup-plugin-terser/node_modules/terser": { + "version": "5.15.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.15.1.tgz", + "integrity": "sha512-K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw==", + "dev": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/rollup-pluginutils": { + "version": "2.8.2", + "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz", + "integrity": "sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ==", + "dev": true, + "dependencies": { + "estree-walker": "^0.6.1" + } + }, + "node_modules/rollup-pluginutils/node_modules/estree-walker": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.6.1.tgz", + "integrity": "sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==", + "dev": true + }, + "node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/serialize-javascript": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz", + "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", + "dev": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "dev": true + }, + "node_modules/shady-css-scoped-element": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/shady-css-scoped-element/-/shady-css-scoped-element-0.0.2.tgz", + "integrity": "sha512-Dqfl70x6JiwYDujd33ZTbtCK0t52E7+H2swdWQNSTzfsolSa6LJHnTpN4T9OpJJEq4bxuzHRLFO9RBcy/UfrMQ==", + "dev": true + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "dev": true + }, + "node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/systemjs": { + "version": "6.12.1", + "resolved": "https://registry.npmjs.org/systemjs/-/systemjs-6.12.1.tgz", + "integrity": "sha512-hqTN6kW+pN6/qro6G9OZ7ceDQOcYno020zBQKpZQLsJhYTDMCMNfXi/Y8duF5iW+4WWZr42ry0MMkcRGpbwG2A==", + "dev": true + }, + "node_modules/table-layout": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/table-layout/-/table-layout-1.0.2.tgz", + "integrity": "sha512-qd/R7n5rQTRFi+Zf2sk5XVVd9UQl6ZkduPFC3S7WEGJAmetDTjY3qPN50eSKzwuzEyQKy5TN2TiZdkIjos2L6A==", + "dev": true, + "dependencies": { + "array-back": "^4.0.1", + "deep-extend": "~0.6.0", + "typical": "^5.2.0", + "wordwrapjs": "^4.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/table-layout/node_modules/array-back": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/array-back/-/array-back-4.0.2.tgz", + "integrity": "sha512-NbdMezxqf94cnNfWLL7V/im0Ub+Anbb0IoZhvzie8+4HJ4nMQuzHuy49FkGYCJK2yAloZ3meiB6AVMClbrI1vg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/table-layout/node_modules/typical": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/typical/-/typical-5.2.0.tgz", + "integrity": "sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/terser": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz", + "integrity": "sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==", + "dev": true, + "dependencies": { + "commander": "^2.20.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.12" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/terser/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "node_modules/thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dev": true, + "dependencies": { + "any-promise": "^1.0.0" + } + }, + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "dev": true, + "dependencies": { + "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/tr46": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", + "integrity": "sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/tsscmp": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/tsscmp/-/tsscmp-1.0.6.tgz", + "integrity": "sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==", + "dev": true, + "engines": { + "node": ">=0.6.x" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dev": true, + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typescript": { + "version": "4.8.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.8.4.tgz", + "integrity": "sha512-QCh+85mCy+h0IGff8r5XWzOVSbBO+KfeYrMQh7NJ58QujwcE22u+NUSmUxqF+un70P9GXKxa2HCNiTTMJknyjQ==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/typical": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/typical/-/typical-4.0.0.tgz", + "integrity": "sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/uglify-js": { + "version": "3.17.3", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.3.tgz", + "integrity": "sha512-JmMFDME3iufZnBpyKL+uS78LRiC+mK55zWfM5f/pWBJfpOttXAqYfdDGRukYhJuyRinvPVAtUhvy7rlDybNtFg==", + "dev": true, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz", + "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz", + "integrity": "sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/upper-case": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz", + "integrity": "sha512-WRbjgmYzgXkCV7zNVpy5YgrHgbBv126rMALQQMrmzOVC4GM2waQ9x7xtm8VU+1yF2kWyPzI9zbZ48n4vSxwfSA==", + "dev": true + }, + "node_modules/useragent": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/useragent/-/useragent-2.3.0.tgz", + "integrity": "sha512-4AoH4pxuSvHCjqLO04sU6U/uE65BYza8l/KKBS0b0hnUPWi+cQ2BpeTEwejCSx9SPV5/U03nniDTrWx5NrmKdw==", + "dev": true, + "dependencies": { + "lru-cache": "4.1.x", + "tmp": "0.0.x" + } + }, + "node_modules/useragent/node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "node_modules/useragent/node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + }, + "node_modules/valid-url": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/valid-url/-/valid-url-1.0.9.tgz", + "integrity": "sha512-QQDsV8OnSf5Uc30CKSwG9lnhMPe6exHtTXLRYX8uMwKENy640pU+2BgBL0LRbDh/eYRahNCS7aewCx0wf3NYVA==", + "dev": true + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/webidl-conversions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", + "dev": true + }, + "node_modules/whatwg-fetch": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz", + "integrity": "sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA==", + "dev": true + }, + "node_modules/whatwg-url": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", + "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", + "dev": true, + "dependencies": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" + } + }, + "node_modules/wordwrapjs": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/wordwrapjs/-/wordwrapjs-4.0.1.tgz", + "integrity": "sha512-kKlNACbvHrkpIw6oPeYDSmdCTu2hdMHoyXLTcUKala++lx5Y+wjJ/e474Jqv5abnVmwxw08DiTuHmw69lJGksA==", + "dev": true, + "dependencies": { + "reduce-flatten": "^2.0.0", + "typical": "^5.2.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/wordwrapjs/node_modules/typical": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/typical/-/typical-5.2.0.tgz", + "integrity": "sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "node_modules/yamlparser": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/yamlparser/-/yamlparser-0.0.2.tgz", + "integrity": "sha1-Mjk+avxwyMoGa2ZQrGc4tIFnjrw=", + "dev": true + }, + "node_modules/ylru": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/ylru/-/ylru-1.3.2.tgz", + "integrity": "sha512-RXRJzMiK6U2ye0BlGGZnmpwJDPgakn6aNQ0A7gHRbD4I0uvK4TW6UqkK1V0pp9jskjJBAXd3dRrbzWkqJ+6cxA==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + } + }, + "dependencies": { + "@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "dev": true, + "requires": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@babel/code-frame": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", + "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", + "dev": true, + "requires": { + "@babel/highlight": "^7.16.7" + } + }, + "@babel/compat-data": { + "version": "7.17.10", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.10.tgz", + "integrity": "sha512-GZt/TCsG70Ms19gfZO1tM4CVnXsPgEPBCpJu+Qz3L0LUDsY5nZqFZglIoPC1kIYOtNBZlrnFT+klg12vFGZXrw==", + "dev": true + }, + "@babel/core": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.2.tgz", + "integrity": "sha512-A8pri1YJiC5UnkdrWcmfZTJTV85b4UXTAfImGmCfYmax4TR9Cw8sDS0MOk++Gp2mE/BefVJ5nwy5yzqNJbP/DQ==", + "dev": true, + "requires": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.18.2", + "@babel/helper-compilation-targets": "^7.18.2", + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helpers": "^7.18.2", + "@babel/parser": "^7.18.0", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.18.2", + "@babel/types": "^7.18.2", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.1", + "semver": "^6.3.0" + } + }, + "@babel/generator": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.2.tgz", + "integrity": "sha512-W1lG5vUwFvfMd8HVXqdfbuG7RuaSrTCCD8cl8fP8wOivdbtbIg2Db3IWUcgvfxKbbn6ZBGYRW/Zk1MIwK49mgw==", + "dev": true, + "requires": { + "@babel/types": "^7.18.2", + "@jridgewell/gen-mapping": "^0.3.0", + "jsesc": "^2.5.1" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.1.tgz", + "integrity": "sha512-GcHwniMlA2z+WFPWuY8lp3fsza0I8xPFMWL5+n8LYyP6PSvPrXf4+n8stDHZY2DM0zy9sVkRDy1jDI4XGzYVqg==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + } + } + }, + "@babel/helper-annotate-as-pure": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.7.tgz", + "integrity": "sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw==", + "dev": true, + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.16.7.tgz", + "integrity": "sha512-C6FdbRaxYjwVu/geKW4ZeQ0Q31AftgRcdSnZ5/jsH6BzCJbtvXvhpfkbkThYSuutZA7nCXpPR6AD9zd1dprMkA==", + "dev": true, + "requires": { + "@babel/helper-explode-assignable-expression": "^7.16.7", + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-compilation-targets": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.2.tgz", + "integrity": "sha512-s1jnPotJS9uQnzFtiZVBUxe67CuBa679oWFHpxYYnTpRL/1ffhyX44R9uYiXoa/pLXcY9H2moJta0iaanlk/rQ==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.17.10", + "@babel/helper-validator-option": "^7.16.7", + "browserslist": "^4.20.2", + "semver": "^6.3.0" + } + }, + "@babel/helper-create-class-features-plugin": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.18.0.tgz", + "integrity": "sha512-Kh8zTGR9de3J63e5nS0rQUdRs/kbtwoeQQ0sriS0lItjC96u8XXZN6lKpuyWd2coKSU13py/y+LTmThLuVX0Pg==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-function-name": "^7.17.9", + "@babel/helper-member-expression-to-functions": "^7.17.7", + "@babel/helper-optimise-call-expression": "^7.16.7", + "@babel/helper-replace-supers": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7" + } + }, + "@babel/helper-create-regexp-features-plugin": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.17.12.tgz", + "integrity": "sha512-b2aZrV4zvutr9AIa6/gA3wsZKRwTKYoDxYiFKcESS3Ug2GTXzwBEvMuuFLhCQpEnRXs1zng4ISAXSUxxKBIcxw==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "regexpu-core": "^5.0.1" + } + }, + "@babel/helper-define-polyfill-provider": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.1.tgz", + "integrity": "sha512-J9hGMpJQmtWmj46B3kBHmL38UhJGhYX7eqkcq+2gsstyYt341HmPeWspihX43yVRA0mS+8GGk2Gckc7bY/HCmA==", + "dev": true, + "requires": { + "@babel/helper-compilation-targets": "^7.13.0", + "@babel/helper-module-imports": "^7.12.13", + "@babel/helper-plugin-utils": "^7.13.0", + "@babel/traverse": "^7.13.0", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + } + }, + "@babel/helper-environment-visitor": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.2.tgz", + "integrity": "sha512-14GQKWkX9oJzPiQQ7/J36FTXcD4kSp8egKjO9nINlSKiHITRA9q/R74qu8S9xlc/b/yjsJItQUeeh3xnGN0voQ==", + "dev": true + }, + "@babel/helper-explode-assignable-expression": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.7.tgz", + "integrity": "sha512-KyUenhWMC8VrxzkGP0Jizjo4/Zx+1nNZhgocs+gLzyZyB8SHidhoq9KK/8Ato4anhwsivfkBLftky7gvzbZMtQ==", + "dev": true, + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-function-name": { + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz", + "integrity": "sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==", + "dev": true, + "requires": { + "@babel/template": "^7.16.7", + "@babel/types": "^7.17.0" + } + }, + "@babel/helper-hoist-variables": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz", + "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==", + "dev": true, + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.17.7.tgz", + "integrity": "sha512-thxXgnQ8qQ11W2wVUObIqDL4p148VMxkt5T/qpN5k2fboRyzFGFmKsTGViquyM5QHKUy48OZoca8kw4ajaDPyw==", + "dev": true, + "requires": { + "@babel/types": "^7.17.0" + } + }, + "@babel/helper-module-imports": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz", + "integrity": "sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==", + "dev": true, + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-module-transforms": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.0.tgz", + "integrity": "sha512-kclUYSUBIjlvnzN2++K9f2qzYKFgjmnmjwL4zlmU5f8ZtzgWe8s0rUPSTGy2HmK4P8T52MQsS+HTQAgZd3dMEA==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-module-imports": "^7.16.7", + "@babel/helper-simple-access": "^7.17.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/helper-validator-identifier": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.18.0", + "@babel/types": "^7.18.0" + } + }, + "@babel/helper-optimise-call-expression": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.7.tgz", + "integrity": "sha512-EtgBhg7rd/JcnpZFXpBy0ze1YRfdm7BnBX4uKMBd3ixa3RGAE002JZB66FJyNH7g0F38U05pXmA5P8cBh7z+1w==", + "dev": true, + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.17.12.tgz", + "integrity": "sha512-JDkf04mqtN3y4iAbO1hv9U2ARpPyPL1zqyWs/2WG1pgSq9llHFjStX5jdxb84himgJm+8Ng+x0oiWF/nw/XQKA==", + "dev": true + }, + "@babel/helper-remap-async-to-generator": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.8.tgz", + "integrity": "sha512-fm0gH7Flb8H51LqJHy3HJ3wnE1+qtYR2A99K06ahwrawLdOFsCEWjZOrYricXJHoPSudNKxrMBUPEIPxiIIvBw==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-wrap-function": "^7.16.8", + "@babel/types": "^7.16.8" + } + }, + "@babel/helper-replace-supers": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.18.2.tgz", + "integrity": "sha512-XzAIyxx+vFnrOxiQrToSUOzUOn0e1J2Li40ntddek1Y69AXUTXoDJ40/D5RdjFu7s7qHiaeoTiempZcbuVXh2Q==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.18.2", + "@babel/helper-member-expression-to-functions": "^7.17.7", + "@babel/helper-optimise-call-expression": "^7.16.7", + "@babel/traverse": "^7.18.2", + "@babel/types": "^7.18.2" + } + }, + "@babel/helper-simple-access": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.2.tgz", + "integrity": "sha512-7LIrjYzndorDY88MycupkpQLKS1AFfsVRm2k/9PtKScSy5tZq0McZTj+DiMRynboZfIqOKvo03pmhTaUgiD6fQ==", + "dev": true, + "requires": { + "@babel/types": "^7.18.2" + } + }, + "@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.16.0.tgz", + "integrity": "sha512-+il1gTy0oHwUsBQZyJvukbB4vPMdcYBrFHa0Uc4AizLxbq6BOYC51Rv4tWocX9BLBDLZ4kc6qUFpQ6HRgL+3zw==", + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz", + "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==", + "dev": true, + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-validator-identifier": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", + "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==", + "dev": true + }, + "@babel/helper-validator-option": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz", + "integrity": "sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==", + "dev": true + }, + "@babel/helper-wrap-function": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.16.8.tgz", + "integrity": "sha512-8RpyRVIAW1RcDDGTA+GpPAwV22wXCfKOoM9bet6TLkGIFTkRQSkH1nMQ5Yet4MpoXe1ZwHPVtNasc2w0uZMqnw==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.16.8", + "@babel/types": "^7.16.8" + } + }, + "@babel/helpers": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.2.tgz", + "integrity": "sha512-j+d+u5xT5utcQSzrh9p+PaJX94h++KN+ng9b9WEJq7pkUPAd61FGqhjuUEdfknb3E/uDBb7ruwEeKkIxNJPIrg==", + "dev": true, + "requires": { + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.18.2", + "@babel/types": "^7.18.2" + } + }, + "@babel/highlight": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.12.tgz", + "integrity": "sha512-7yykMVF3hfZY2jsHZEEgLc+3x4o1O+fYyULu11GynEUQNwB6lua+IIQn1FiJxNucd5UlyJryrwsOh8PL9Sn8Qg==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.16.7", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.18.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.4.tgz", + "integrity": "sha512-FDge0dFazETFcxGw/EXzOkN8uJp0PC7Qbm+Pe9T+av2zlBpOgunFHkQPPn+eRuClU73JF+98D531UgayY89tow==", + "dev": true + }, + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.17.12.tgz", + "integrity": "sha512-xCJQXl4EeQ3J9C4yOmpTrtVGmzpm2iSzyxbkZHw7UCnZBftHpF/hpII80uWVyVrc40ytIClHjgWGTG1g/yB+aw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.17.12.tgz", + "integrity": "sha512-/vt0hpIw0x4b6BLKUkwlvEoiGZYYLNZ96CzyHYPbtG2jZGz6LBe7/V+drYrc/d+ovrF9NBi0pmtvmNb/FsWtRQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", + "@babel/plugin-proposal-optional-chaining": "^7.17.12" + } + }, + "@babel/plugin-proposal-async-generator-functions": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.17.12.tgz", + "integrity": "sha512-RWVvqD1ooLKP6IqWTA5GyFVX2isGEgC5iFxKzfYOIy/QEFdxYyCybBDtIGjipHpb9bDWHzcqGqFakf+mVmBTdQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-remap-async-to-generator": "^7.16.8", + "@babel/plugin-syntax-async-generators": "^7.8.4" + } + }, + "@babel/plugin-proposal-class-properties": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.17.12.tgz", + "integrity": "sha512-U0mI9q8pW5Q9EaTHFPwSVusPMV/DV9Mm8p7csqROFLtIE9rBF5piLqyrBGigftALrBcsBGu4m38JneAe7ZDLXw==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-proposal-class-static-block": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.18.0.tgz", + "integrity": "sha512-t+8LsRMMDE74c6sV7KShIw13sqbqd58tlqNrsWoWBTIMw7SVQ0cZ905wLNS/FBCy/3PyooRHLFFlfrUNyyz5lA==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + } + }, + "@babel/plugin-proposal-dynamic-import": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.16.7.tgz", + "integrity": "sha512-I8SW9Ho3/8DRSdmDdH3gORdyUuYnk1m4cMxUAdu5oy4n3OfN8flDEH+d60iG7dUfi0KkYwSvoalHzzdRzpWHTg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + } + }, + "@babel/plugin-proposal-export-namespace-from": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.17.12.tgz", + "integrity": "sha512-j7Ye5EWdwoXOpRmo5QmRyHPsDIe6+u70ZYZrd7uz+ebPYFKfRcLcNu3Ro0vOlJ5zuv8rU7xa+GttNiRzX56snQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + } + }, + "@babel/plugin-proposal-json-strings": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.17.12.tgz", + "integrity": "sha512-rKJ+rKBoXwLnIn7n6o6fulViHMrOThz99ybH+hKHcOZbnN14VuMnH9fo2eHE69C8pO4uX1Q7t2HYYIDmv8VYkg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-json-strings": "^7.8.3" + } + }, + "@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.17.12.tgz", + "integrity": "sha512-EqFo2s1Z5yy+JeJu7SFfbIUtToJTVlC61/C7WLKDntSw4Sz6JNAIfL7zQ74VvirxpjB5kz/kIx0gCcb+5OEo2Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + } + }, + "@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.17.12.tgz", + "integrity": "sha512-ws/g3FSGVzv+VH86+QvgtuJL/kR67xaEIF2x0iPqdDfYW6ra6JF3lKVBkWynRLcNtIC1oCTfDRVxmm2mKzy+ag==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + } + }, + "@babel/plugin-proposal-numeric-separator": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.16.7.tgz", + "integrity": "sha512-vQgPMknOIgiuVqbokToyXbkY/OmmjAzr/0lhSIbG/KmnzXPGwW/AdhdKpi+O4X/VkWiWjnkKOBiqJrTaC98VKw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + } + }, + "@babel/plugin-proposal-object-rest-spread": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.18.0.tgz", + "integrity": "sha512-nbTv371eTrFabDfHLElkn9oyf9VG+VKK6WMzhY2o4eHKaG19BToD9947zzGMO6I/Irstx9d8CwX6njPNIAR/yw==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.17.10", + "@babel/helper-compilation-targets": "^7.17.10", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.17.12" + } + }, + "@babel/plugin-proposal-optional-catch-binding": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.16.7.tgz", + "integrity": "sha512-eMOH/L4OvWSZAE1VkHbr1vckLG1WUcHGJSLqqQwl2GaUqG6QjddvrOaTUMNYiv77H5IKPMZ9U9P7EaHwvAShfA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + } + }, + "@babel/plugin-proposal-optional-chaining": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.17.12.tgz", + "integrity": "sha512-7wigcOs/Z4YWlK7xxjkvaIw84vGhDv/P1dFGQap0nHkc8gFKY/r+hXc8Qzf5k1gY7CvGIcHqAnOagVKJJ1wVOQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + } + }, + "@babel/plugin-proposal-private-methods": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.17.12.tgz", + "integrity": "sha512-SllXoxo19HmxhDWm3luPz+cPhtoTSKLJE9PXshsfrOzBqs60QP0r8OaJItrPhAj0d7mZMnNF0Y1UUggCDgMz1A==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-proposal-private-property-in-object": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.17.12.tgz", + "integrity": "sha512-/6BtVi57CJfrtDNKfK5b66ydK2J5pXUKBKSPD2G1whamMuEnZWgoOIfO8Vf9F/DoD4izBLD/Au4NMQfruzzykg==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-create-class-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + } + }, + "@babel/plugin-proposal-unicode-property-regex": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.17.12.tgz", + "integrity": "sha512-Wb9qLjXf3ZazqXA7IvI7ozqRIXIGPtSo+L5coFmEkhTQK18ao4UDDD0zdTGAarmbLj2urpRwrc6893cu5Bfh0A==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.12.13" + } + }, + "@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-syntax-import-assertions": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.17.12.tgz", + "integrity": "sha512-n/loy2zkq9ZEM8tEOwON9wTQSTNDTDEz6NujPtJGLU7qObzT1N4c4YZZf8E6ATB2AjNQg/Ib2AIpO03EZaCehw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-arrow-functions": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.17.12.tgz", + "integrity": "sha512-PHln3CNi/49V+mza4xMwrg+WGYevSF1oaiXaC2EQfdp4HWlSjRsrDXWJiQBKpP7749u6vQ9mcry2uuFOv5CXvA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-async-to-generator": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.17.12.tgz", + "integrity": "sha512-J8dbrWIOO3orDzir57NRsjg4uxucvhby0L/KZuGsWDj0g7twWK3g7JhJhOrXtuXiw8MeiSdJ3E0OW9H8LYEzLQ==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.16.7", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-remap-async-to-generator": "^7.16.8" + } + }, + "@babel/plugin-transform-block-scoped-functions": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.16.7.tgz", + "integrity": "sha512-JUuzlzmF40Z9cXyytcbZEZKckgrQzChbQJw/5PuEHYeqzCsvebDx0K0jWnIIVcmmDOAVctCgnYs0pMcrYj2zJg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-block-scoping": { + "version": "7.18.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.18.4.tgz", + "integrity": "sha512-+Hq10ye+jlvLEogSOtq4mKvtk7qwcUQ1f0Mrueai866C82f844Yom2cttfJdMdqRLTxWpsbfbkIkOIfovyUQXw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-classes": { + "version": "7.18.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.18.4.tgz", + "integrity": "sha512-e42NSG2mlKWgxKUAD9EJJSkZxR67+wZqzNxLSpc51T8tRU5SLFHsPmgYR5yr7sdgX4u+iHA1C5VafJ6AyImV3A==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-environment-visitor": "^7.18.2", + "@babel/helper-function-name": "^7.17.9", + "@babel/helper-optimise-call-expression": "^7.16.7", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-replace-supers": "^7.18.2", + "@babel/helper-split-export-declaration": "^7.16.7", + "globals": "^11.1.0" + } + }, + "@babel/plugin-transform-computed-properties": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.17.12.tgz", + "integrity": "sha512-a7XINeplB5cQUWMg1E/GI1tFz3LfK021IjV1rj1ypE+R7jHm+pIHmHl25VNkZxtx9uuYp7ThGk8fur1HHG7PgQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-destructuring": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.18.0.tgz", + "integrity": "sha512-Mo69klS79z6KEfrLg/1WkmVnB8javh75HX4pi2btjvlIoasuxilEyjtsQW6XPrubNd7AQy0MMaNIaQE4e7+PQw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-dotall-regex": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.16.7.tgz", + "integrity": "sha512-Lyttaao2SjZF6Pf4vk1dVKv8YypMpomAbygW+mU5cYP3S5cWTfCJjG8xV6CFdzGFlfWK81IjL9viiTvpb6G7gQ==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-duplicate-keys": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.17.12.tgz", + "integrity": "sha512-EA5eYFUG6xeerdabina/xIoB95jJ17mAkR8ivx6ZSu9frKShBjpOGZPn511MTDTkiCO+zXnzNczvUM69YSf3Zw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-exponentiation-operator": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.16.7.tgz", + "integrity": "sha512-8UYLSlyLgRixQvlYH3J2ekXFHDFLQutdy7FfFAMm3CPZ6q9wHCwnUyiXpQCe3gVVnQlHc5nsuiEVziteRNTXEA==", + "dev": true, + "requires": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-for-of": { + "version": "7.18.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.1.tgz", + "integrity": "sha512-+TTB5XwvJ5hZbO8xvl2H4XaMDOAK57zF4miuC9qQJgysPNEAZZ9Z69rdF5LJkozGdZrjBIUAIyKUWRMmebI7vg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-function-name": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.16.7.tgz", + "integrity": "sha512-SU/C68YVwTRxqWj5kgsbKINakGag0KTgq9f2iZEXdStoAbOzLHEBRYzImmA6yFo8YZhJVflvXmIHUO7GWHmxxA==", + "dev": true, + "requires": { + "@babel/helper-compilation-targets": "^7.16.7", + "@babel/helper-function-name": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-literals": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.17.12.tgz", + "integrity": "sha512-8iRkvaTjJciWycPIZ9k9duu663FT7VrBdNqNgxnVXEFwOIp55JWcZd23VBRySYbnS3PwQ3rGiabJBBBGj5APmQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-member-expression-literals": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.16.7.tgz", + "integrity": "sha512-mBruRMbktKQwbxaJof32LT9KLy2f3gH+27a5XSuXo6h7R3vqltl0PgZ80C8ZMKw98Bf8bqt6BEVi3svOh2PzMw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-modules-amd": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.18.0.tgz", + "integrity": "sha512-h8FjOlYmdZwl7Xm2Ug4iX2j7Qy63NANI+NQVWQzv6r25fqgg7k2dZl03p95kvqNclglHs4FZ+isv4p1uXMA+QA==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12", + "babel-plugin-dynamic-import-node": "^2.3.3" + } + }, + "@babel/plugin-transform-modules-commonjs": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.2.tgz", + "integrity": "sha512-f5A865gFPAJAEE0K7F/+nm5CmAE3y8AWlMBG9unu5j9+tk50UQVK0QS8RNxSp7MJf0wh97uYyLWt3Zvu71zyOQ==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-simple-access": "^7.18.2", + "babel-plugin-dynamic-import-node": "^2.3.3" + } + }, + "@babel/plugin-transform-modules-systemjs": { + "version": "7.18.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.18.4.tgz", + "integrity": "sha512-lH2UaQaHVOAeYrUUuZ8i38o76J/FnO8vu21OE+tD1MyP9lxdZoSfz+pDbWkq46GogUrdrMz3tiz/FYGB+bVThg==", + "dev": true, + "requires": { + "@babel/helper-hoist-variables": "^7.16.7", + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-validator-identifier": "^7.16.7", + "babel-plugin-dynamic-import-node": "^2.3.3" + } + }, + "@babel/plugin-transform-modules-umd": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.0.tgz", + "integrity": "sha512-d/zZ8I3BWli1tmROLxXLc9A6YXvGK8egMxHp+E/rRwMh1Kip0AP77VwZae3snEJ33iiWwvNv2+UIIhfalqhzZA==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.17.12.tgz", + "integrity": "sha512-vWoWFM5CKaTeHrdUJ/3SIOTRV+MBVGybOC9mhJkaprGNt5demMymDW24yC74avb915/mIRe3TgNb/d8idvnCRA==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-new-target": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.17.12.tgz", + "integrity": "sha512-CaOtzk2fDYisbjAD4Sd1MTKGVIpRtx9bWLyj24Y/k6p4s4gQ3CqDGJauFJxt8M/LEx003d0i3klVqnN73qvK3w==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-object-super": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.16.7.tgz", + "integrity": "sha512-14J1feiQVWaGvRxj2WjyMuXS2jsBkgB3MdSN5HuC2G5nRspa5RK9COcs82Pwy5BuGcjb+fYaUj94mYcOj7rCvw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-replace-supers": "^7.16.7" + } + }, + "@babel/plugin-transform-parameters": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.17.12.tgz", + "integrity": "sha512-6qW4rWo1cyCdq1FkYri7AHpauchbGLXpdwnYsfxFb+KtddHENfsY5JZb35xUwkK5opOLcJ3BNd2l7PhRYGlwIA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-property-literals": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.16.7.tgz", + "integrity": "sha512-z4FGr9NMGdoIl1RqavCqGG+ZuYjfZ/hkCIeuH6Do7tXmSm0ls11nYVSJqFEUOSJbDab5wC6lRE/w6YjVcr6Hqw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-regenerator": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.18.0.tgz", + "integrity": "sha512-C8YdRw9uzx25HSIzwA7EM7YP0FhCe5wNvJbZzjVNHHPGVcDJ3Aie+qGYYdS1oVQgn+B3eAIJbWFLrJ4Jipv7nw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "regenerator-transform": "^0.15.0" + } + }, + "@babel/plugin-transform-reserved-words": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.17.12.tgz", + "integrity": "sha512-1KYqwbJV3Co03NIi14uEHW8P50Md6KqFgt0FfpHdK6oyAHQVTosgPuPSiWud1HX0oYJ1hGRRlk0fP87jFpqXZA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-shorthand-properties": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.16.7.tgz", + "integrity": "sha512-hah2+FEnoRoATdIb05IOXf+4GzXYTq75TVhIn1PewihbpyrNWUt2JbudKQOETWw6QpLe+AIUpJ5MVLYTQbeeUg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-spread": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.17.12.tgz", + "integrity": "sha512-9pgmuQAtFi3lpNUstvG9nGfk9DkrdmWNp9KeKPFmuZCpEnxRzYlS8JgwPjYj+1AWDOSvoGN0H30p1cBOmT/Svg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0" + } + }, + "@babel/plugin-transform-sticky-regex": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.16.7.tgz", + "integrity": "sha512-NJa0Bd/87QV5NZZzTuZG5BPJjLYadeSZ9fO6oOUoL4iQx+9EEuw/eEM92SrsT19Yc2jgB1u1hsjqDtH02c3Drw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-template-literals": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.2.tgz", + "integrity": "sha512-/cmuBVw9sZBGZVOMkpAEaVLwm4JmK2GZ1dFKOGGpMzEHWFmyZZ59lUU0PdRr8YNYeQdNzTDwuxP2X2gzydTc9g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-typeof-symbol": { + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.17.12.tgz", + "integrity": "sha512-Q8y+Jp7ZdtSPXCThB6zjQ74N3lj0f6TDh1Hnf5B+sYlzQ8i5Pjp8gW0My79iekSpT4WnI06blqP6DT0OmaXXmw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-unicode-escapes": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.16.7.tgz", + "integrity": "sha512-TAV5IGahIz3yZ9/Hfv35TV2xEm+kaBDaZQCn2S/hG9/CZ0DktxJv9eKfPc7yYCvOYR4JGx1h8C+jcSOvgaaI/Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-unicode-regex": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.16.7.tgz", + "integrity": "sha512-oC5tYYKw56HO75KZVLQ+R/Nl3Hro9kf8iG0hXoaHP7tjAyCpvqBiSNe6vGrZni1Z6MggmUOC6A7VP7AVmw225Q==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/preset-env": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.2.tgz", + "integrity": "sha512-PfpdxotV6afmXMU47S08F9ZKIm2bJIQ0YbAAtDfIENX7G1NUAXigLREh69CWDjtgUy7dYn7bsMzkgdtAlmS68Q==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.17.10", + "@babel/helper-compilation-targets": "^7.18.2", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-validator-option": "^7.16.7", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.17.12", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.17.12", + "@babel/plugin-proposal-async-generator-functions": "^7.17.12", + "@babel/plugin-proposal-class-properties": "^7.17.12", + "@babel/plugin-proposal-class-static-block": "^7.18.0", + "@babel/plugin-proposal-dynamic-import": "^7.16.7", + "@babel/plugin-proposal-export-namespace-from": "^7.17.12", + "@babel/plugin-proposal-json-strings": "^7.17.12", + "@babel/plugin-proposal-logical-assignment-operators": "^7.17.12", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.17.12", + "@babel/plugin-proposal-numeric-separator": "^7.16.7", + "@babel/plugin-proposal-object-rest-spread": "^7.18.0", + "@babel/plugin-proposal-optional-catch-binding": "^7.16.7", + "@babel/plugin-proposal-optional-chaining": "^7.17.12", + "@babel/plugin-proposal-private-methods": "^7.17.12", + "@babel/plugin-proposal-private-property-in-object": "^7.17.12", + "@babel/plugin-proposal-unicode-property-regex": "^7.17.12", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.17.12", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.17.12", + "@babel/plugin-transform-async-to-generator": "^7.17.12", + "@babel/plugin-transform-block-scoped-functions": "^7.16.7", + "@babel/plugin-transform-block-scoping": "^7.17.12", + "@babel/plugin-transform-classes": "^7.17.12", + "@babel/plugin-transform-computed-properties": "^7.17.12", + "@babel/plugin-transform-destructuring": "^7.18.0", + "@babel/plugin-transform-dotall-regex": "^7.16.7", + "@babel/plugin-transform-duplicate-keys": "^7.17.12", + "@babel/plugin-transform-exponentiation-operator": "^7.16.7", + "@babel/plugin-transform-for-of": "^7.18.1", + "@babel/plugin-transform-function-name": "^7.16.7", + "@babel/plugin-transform-literals": "^7.17.12", + "@babel/plugin-transform-member-expression-literals": "^7.16.7", + "@babel/plugin-transform-modules-amd": "^7.18.0", + "@babel/plugin-transform-modules-commonjs": "^7.18.2", + "@babel/plugin-transform-modules-systemjs": "^7.18.0", + "@babel/plugin-transform-modules-umd": "^7.18.0", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.17.12", + "@babel/plugin-transform-new-target": "^7.17.12", + "@babel/plugin-transform-object-super": "^7.16.7", + "@babel/plugin-transform-parameters": "^7.17.12", + "@babel/plugin-transform-property-literals": "^7.16.7", + "@babel/plugin-transform-regenerator": "^7.18.0", + "@babel/plugin-transform-reserved-words": "^7.17.12", + "@babel/plugin-transform-shorthand-properties": "^7.16.7", + "@babel/plugin-transform-spread": "^7.17.12", + "@babel/plugin-transform-sticky-regex": "^7.16.7", + "@babel/plugin-transform-template-literals": "^7.18.2", + "@babel/plugin-transform-typeof-symbol": "^7.17.12", + "@babel/plugin-transform-unicode-escapes": "^7.16.7", + "@babel/plugin-transform-unicode-regex": "^7.16.7", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.18.2", + "babel-plugin-polyfill-corejs2": "^0.3.0", + "babel-plugin-polyfill-corejs3": "^0.5.0", + "babel-plugin-polyfill-regenerator": "^0.3.0", + "core-js-compat": "^3.22.1", + "semver": "^6.3.0" + } + }, + "@babel/preset-modules": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + } + }, + "@babel/runtime": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.3.tgz", + "integrity": "sha512-38Y8f7YUhce/K7RMwTp7m0uCumpv9hZkitCbBClqQIow1qSbCvGkcegKOXpEWCQLfWmevgRiWokZ1GkpfhbZug==", + "dev": true, + "requires": { + "regenerator-runtime": "^0.13.4" + } + }, + "@babel/template": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz", + "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.16.7", + "@babel/parser": "^7.16.7", + "@babel/types": "^7.16.7" + } + }, + "@babel/traverse": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.2.tgz", + "integrity": "sha512-9eNwoeovJ6KH9zcCNnENY7DMFwTU9JdGCFtqNLfUAqtUHRCOsTOqWoffosP8vKmNYeSBUv3yVJXjfd8ucwOjUA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.18.2", + "@babel/helper-environment-visitor": "^7.18.2", + "@babel/helper-function-name": "^7.17.9", + "@babel/helper-hoist-variables": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/parser": "^7.18.0", + "@babel/types": "^7.18.2", + "debug": "^4.1.0", + "globals": "^11.1.0" + } + }, + "@babel/types": { + "version": "7.18.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.4.tgz", + "integrity": "sha512-ThN1mBcMq5pG/Vm2IcBmPPfyPXbd8S02rS+OBIDENdufvqC7Z/jHPCv9IcP01277aKtDI8g/2XysBN4hA8niiw==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.16.7", + "to-fast-properties": "^2.0.0" + } + }, + "@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", + "dev": true, + "optional": true + }, + "@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "@jridgewell/resolve-uri": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.7.tgz", + "integrity": "sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA==", + "dev": true + }, + "@jridgewell/set-array": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.1.tgz", + "integrity": "sha512-Ct5MqZkLGEXTVmQYbGtx9SVqD2fqwvdubdps5D3djjAkgkKwT918VNOz65pEHFaYTeWcukmJmH5SwsA9Tn2ObQ==", + "dev": true + }, + "@jridgewell/source-map": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "dev": true, + "requires": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + } + } + }, + "@jridgewell/sourcemap-codec": { + "version": "1.4.13", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.13.tgz", + "integrity": "sha512-GryiOJmNcWbovBxTfZSF71V/mXbgcV3MewDe3kIMCLyIh5e7SKAeUZs+rMnJ8jkMolZ/4/VsdBmMrw3l+VdZ3w==", + "dev": true + }, + "@jridgewell/trace-mapping": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.13.tgz", + "integrity": "sha512-o1xbKhp9qnIAoHJSWd6KlCZfqslL4valSF81H8ImioOAxluWYWOpWkpyktY2vnt4tbrX9XYaxovq6cgowaJp2w==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "@koa/cors": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@koa/cors/-/cors-3.3.0.tgz", + "integrity": "sha512-lzlkqLlL5Ond8jb6JLnVVDmD2OPym0r5kvZlMgAWiS9xle+Q5ulw1T358oW+RVguxUkANquZQz82i/STIRmsqQ==", + "dev": true, + "requires": { + "vary": "^1.1.2" + } + }, + "@lit/reactive-element": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-1.3.2.tgz", + "integrity": "sha512-A2e18XzPMrIh35nhIdE4uoqRzoIpEU5vZYuQN4S3Ee1zkGdYC27DP12pewbw/RLgPHzaE4kx/YqxMzebOpm0dA==" + }, + "@open-wc/building-utils": { + "version": "2.18.4", + "resolved": "https://registry.npmjs.org/@open-wc/building-utils/-/building-utils-2.18.4.tgz", + "integrity": "sha512-wjNp9oE1SFsiBEqaI67ff60KHDpDbGMNF+82pvCHe412SFY4q8DNy8A+hesj1nZsuZHH1/olDfzBDbYKAnmgMg==", + "dev": true, + "requires": { + "@babel/core": "^7.11.1", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@webcomponents/shadycss": "^1.10.2", + "@webcomponents/webcomponentsjs": "^2.5.0", + "arrify": "^2.0.1", + "browserslist": "^4.16.0", + "chokidar": "^3.4.3", + "clean-css": "^4.2.3", + "clone": "^2.1.2", + "core-js-bundle": "^3.8.1", + "deepmerge": "^4.2.2", + "es-module-shims": "^0.4.7", + "html-minifier-terser": "^5.1.1", + "lru-cache": "^5.1.1", + "minimatch": "^3.0.4", + "parse5": "^5.1.1", + "path-is-inside": "^1.0.2", + "regenerator-runtime": "^0.13.7", + "resolve": "^1.19.0", + "rimraf": "^3.0.2", + "shady-css-scoped-element": "^0.0.2", + "systemjs": "^6.8.3", + "terser": "^4.6.7", + "valid-url": "^1.0.9", + "whatwg-fetch": "^3.5.0", + "whatwg-url": "^7.1.0" + } + }, + "@rollup/plugin-node-resolve": { + "version": "15.0.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.0.0.tgz", + "integrity": "sha512-iwJbzfTzlzDDQcGmkS7EkCKwe2kSkdBrjX87Fy/KrNjr6UNnLpod0t6X66e502LRe5JJCA4FFqrEscWPnZAkig==", + "dev": true, + "requires": { + "@rollup/pluginutils": "^4.2.1", + "@types/resolve": "1.20.2", + "deepmerge": "^4.2.2", + "is-builtin-module": "^3.2.0", + "is-module": "^1.0.0", + "resolve": "^1.22.1" + }, + "dependencies": { + "@rollup/pluginutils": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.2.1.tgz", + "integrity": "sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==", + "dev": true, + "requires": { + "estree-walker": "^2.0.1", + "picomatch": "^2.2.2" + } + }, + "estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true + } + } + }, + "@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dev": true, + "requires": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + } + }, + "@types/accepts": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/accepts/-/accepts-1.3.5.tgz", + "integrity": "sha512-jOdnI/3qTpHABjM5cx1Hc0sKsPoYCp+DP/GJRGtDlPd7fiV9oXGGIcjW/ZOxLIvjGz8MA+uMZI9metHlgqbgwQ==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/babel__core": { + "version": "7.1.19", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.19.tgz", + "integrity": "sha512-WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw==", + "dev": true, + "requires": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "@types/babel__generator": { + "version": "7.6.4", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", + "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@types/babel__template": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", + "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", + "dev": true, + "requires": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@types/babel__traverse": { + "version": "7.17.1", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.17.1.tgz", + "integrity": "sha512-kVzjari1s2YVi77D3w1yuvohV2idweYXMCDzqBiVNN63TcDWrIlTVOYpqVrvbbyOE/IyzBoTKF0fdnLPEORFxA==", + "dev": true, + "requires": { + "@babel/types": "^7.3.0" + } + }, + "@types/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "dev": true, + "requires": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "@types/browserslist": { + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@types/browserslist/-/browserslist-4.15.0.tgz", + "integrity": "sha512-h9LyKErRGZqMsHh9bd+FE8yCIal4S0DxKTOeui56VgVXqa66TKiuaIUxCAI7c1O0LjaUzOTcsMyOpO9GetozRA==", + "dev": true, + "requires": { + "browserslist": "*" + } + }, + "@types/browserslist-useragent": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/browserslist-useragent/-/browserslist-useragent-3.0.4.tgz", + "integrity": "sha512-S/AhrluMHi8EcuxxCtTDBGr8u+XvwUfLvZdARuIS2LFZ/lHoeaeJJYCozD68GKH6wm52FbIHq4WWPF/Ec6a9qA==", + "dev": true + }, + "@types/caniuse-api": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/caniuse-api/-/caniuse-api-3.0.2.tgz", + "integrity": "sha512-YfCDMn7R59n7GFFfwjPAM0zLJQy4UvveC32rOJBmTqJJY8uSRqM4Dc7IJj8V9unA48Qy4nj5Bj3jD6Q8VZ1Seg==", + "dev": true + }, + "@types/clean-css": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@types/clean-css/-/clean-css-4.2.6.tgz", + "integrity": "sha512-Ze1tf+LnGPmG6hBFMi0B4TEB0mhF7EiMM5oyjLDNPE9hxrPU0W+5+bHvO+eFPA+bt0iC1zkQMoU/iGdRVjcRbw==", + "dev": true, + "requires": { + "@types/node": "*", + "source-map": "^0.6.0" + } + }, + "@types/command-line-args": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@types/command-line-args/-/command-line-args-5.2.0.tgz", + "integrity": "sha512-UuKzKpJJ/Ief6ufIaIzr3A/0XnluX7RvFgwkV89Yzvm77wCh1kFaFmqN8XEnGcN62EuHdedQjEMb8mYxFLGPyA==", + "dev": true + }, + "@types/command-line-usage": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@types/command-line-usage/-/command-line-usage-5.0.2.tgz", + "integrity": "sha512-n7RlEEJ+4x4TS7ZQddTmNSxP+zziEG0TNsMfiRIxcIVXt71ENJ9ojeXmGO3wPoTdn7pJcU2xc3CJYMktNT6DPg==", + "dev": true + }, + "@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/content-disposition": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/@types/content-disposition/-/content-disposition-0.5.5.tgz", + "integrity": "sha512-v6LCdKfK6BwcqMo+wYW05rLS12S0ZO0Fl4w1h4aaZMD7bqT3gVUns6FvLJKGZHQmYn3SX55JWGpziwJRwVgutA==", + "dev": true + }, + "@types/cookies": { + "version": "0.7.7", + "resolved": "https://registry.npmjs.org/@types/cookies/-/cookies-0.7.7.tgz", + "integrity": "sha512-h7BcvPUogWbKCzBR2lY4oqaZbO3jXZksexYJVFvkrFeLgbZjQkU4x8pRq6eg2MHXQhY0McQdqmmsxRWlVAHooA==", + "dev": true, + "requires": { + "@types/connect": "*", + "@types/express": "*", + "@types/keygrip": "*", + "@types/node": "*" + } + }, + "@types/debounce": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@types/debounce/-/debounce-1.2.1.tgz", + "integrity": "sha512-epMsEE85fi4lfmJUH/89/iV/LI+F5CvNIvmgs5g5jYFPfhO2S/ae8WSsLOKWdwtoaZw9Q2IhJ4tQ5tFCcS/4HA==", + "dev": true + }, + "@types/estree": { + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", + "dev": true + }, + "@types/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@types/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-bsKkeSqN7HYyYntFRAmzcwx/dKW4Wa+KVMTInANlI72PWLQmOpZu96j0OqHZGArW4VQwCmJPteQlXaUDeOB0WQ==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/express": { + "version": "4.17.13", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz", + "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==", + "dev": true, + "requires": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.18", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "@types/express-serve-static-core": { + "version": "4.17.28", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.28.tgz", + "integrity": "sha512-P1BJAEAW3E2DJUlkgq4tOL3RyMunoWXqbSCygWo5ZIWTjUgN1YnaXWW4VWl/oc8vs/XoYibEGBKP0uZyF4AHig==", + "dev": true, + "requires": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*" + } + }, + "@types/html-minifier": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/@types/html-minifier/-/html-minifier-3.5.3.tgz", + "integrity": "sha512-j1P/4PcWVVCPEy5lofcHnQ6BtXz9tHGiFPWzqm7TtGuWZEfCHEP446HlkSNc9fQgNJaJZ6ewPtp2aaFla/Uerg==", + "dev": true, + "requires": { + "@types/clean-css": "*", + "@types/relateurl": "*", + "@types/uglify-js": "*" + } + }, + "@types/http-assert": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@types/http-assert/-/http-assert-1.5.3.tgz", + "integrity": "sha512-FyAOrDuQmBi8/or3ns4rwPno7/9tJTijVW6aQQjK02+kOQ8zmoNg2XJtAuQhvQcy1ASJq38wirX5//9J1EqoUA==", + "dev": true + }, + "@types/http-errors": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-1.8.2.tgz", + "integrity": "sha512-EqX+YQxINb+MeXaIqYDASb6U6FCHbWjkj4a1CKDBks3d/QiB2+PqBLyO72vLDgAO1wUI4O+9gweRcQK11bTL/w==", + "dev": true + }, + "@types/keygrip": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@types/keygrip/-/keygrip-1.0.2.tgz", + "integrity": "sha512-GJhpTepz2udxGexqos8wgaBx4I/zWIDPh/KOGEwAqtuGDkOUJu5eFvwmdBX4AmB8Odsr+9pHCQqiAqDL/yKMKw==", + "dev": true + }, + "@types/koa": { + "version": "2.13.4", + "resolved": "https://registry.npmjs.org/@types/koa/-/koa-2.13.4.tgz", + "integrity": "sha512-dfHYMfU+z/vKtQB7NUrthdAEiSvnLebvBjwHtfFmpZmB7em2N3WVQdHgnFq+xvyVgxW5jKDmjWfLD3lw4g4uTw==", + "dev": true, + "requires": { + "@types/accepts": "*", + "@types/content-disposition": "*", + "@types/cookies": "*", + "@types/http-assert": "*", + "@types/http-errors": "*", + "@types/keygrip": "*", + "@types/koa-compose": "*", + "@types/node": "*" + } + }, + "@types/koa__cors": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@types/koa__cors/-/koa__cors-3.3.0.tgz", + "integrity": "sha512-FUN8YxcBakIs+walVe3+HcNP+Bxd0SB8BJHBWkglZ5C1XQWljlKcEFDG/dPiCIqwVCUbc5X0nYDlH62uEhdHMA==", + "dev": true, + "requires": { + "@types/koa": "*" + } + }, + "@types/koa-compose": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/@types/koa-compose/-/koa-compose-3.2.5.tgz", + "integrity": "sha512-B8nG/OoE1ORZqCkBVsup/AKcvjdgoHnfi4pZMn5UwAPCbhk/96xyv284eBYW8JlQbQ7zDmnpFr68I/40mFoIBQ==", + "dev": true, + "requires": { + "@types/koa": "*" + } + }, + "@types/koa-compress": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/koa-compress/-/koa-compress-2.0.9.tgz", + "integrity": "sha512-1Sa9OsbHd2N2N7gLpdIRHe8W99EZbfIR31D7Iisx16XgwZCnWUtGXzXQejhu74Y1pE/wILqBP6VL49ch/MVpZw==", + "dev": true, + "requires": { + "@types/koa": "*", + "@types/node": "*" + } + }, + "@types/koa-etag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/koa-etag/-/koa-etag-3.0.0.tgz", + "integrity": "sha512-gXQUtKGEnCy0sZLG+uE3wL4mvY1CBPcb6ECjpAoD8RGYy/8ACY1B084k8LTFPIdVcmy7GD6Y4n3up3jnupofcQ==", + "dev": true, + "requires": { + "@types/etag": "*", + "@types/koa": "*" + } + }, + "@types/koa-send": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/@types/koa-send/-/koa-send-4.1.3.tgz", + "integrity": "sha512-daaTqPZlgjIJycSTNjKpHYuKhXYP30atFc1pBcy6HHqB9+vcymDgYTguPdx9tO4HMOqNyz6bz/zqpxt5eLR+VA==", + "dev": true, + "requires": { + "@types/koa": "*" + } + }, + "@types/koa-static": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/koa-static/-/koa-static-4.0.2.tgz", + "integrity": "sha512-ns/zHg+K6XVPMuohjpOlpkR1WLa4VJ9czgUP9bxkCDn0JZBtUWbD/wKDZzPGDclkQK1bpAEScufCHOy8cbfL0w==", + "dev": true, + "requires": { + "@types/koa": "*", + "@types/koa-send": "*" + } + }, + "@types/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@types/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-ssE3Vlrys7sdIzs5LOxCzTVMsU7i9oa/IaW92wF32JFb3CVczqOkru2xspuKczHEbG3nvmPY7IFqVmGGHdNbYw==", + "dev": true + }, + "@types/mime": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz", + "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==", + "dev": true + }, + "@types/mime-types": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@types/mime-types/-/mime-types-2.1.1.tgz", + "integrity": "sha512-vXOTGVSLR2jMw440moWTC7H19iUyLtP3Z1YTj7cSsubOICinjMxFeb/V57v9QdyyPGbbWolUFSSmSiRSn94tFw==", + "dev": true + }, + "@types/minimatch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", + "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==", + "dev": true + }, + "@types/node": { + "version": "17.0.42", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.42.tgz", + "integrity": "sha512-Q5BPGyGKcvQgAMbsr7qEGN/kIPN6zZecYYABeTDBizOsau+2NMdSVTar9UQw21A2+JyA2KRNDYaYrPB0Rpk2oQ==", + "dev": true + }, + "@types/parse5": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-6.0.3.tgz", + "integrity": "sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==", + "dev": true + }, + "@types/path-is-inside": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/path-is-inside/-/path-is-inside-1.0.0.tgz", + "integrity": "sha512-hfnXRGugz+McgX2jxyy5qz9sB21LRzlGn24zlwN2KEgoPtEvjzNRrLtUkOOebPDPZl3Rq7ywKxYvylVcEZDnEw==", + "dev": true + }, + "@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", + "dev": true + }, + "@types/range-parser": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", + "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", + "dev": true + }, + "@types/relateurl": { + "version": "0.2.29", + "resolved": "https://registry.npmjs.org/@types/relateurl/-/relateurl-0.2.29.tgz", + "integrity": "sha512-QSvevZ+IRww2ldtfv1QskYsqVVVwCKQf1XbwtcyyoRvLIQzfyPhj/C+3+PKzSDRdiyejaiLgnq//XTkleorpLg==", + "dev": true + }, + "@types/resolve": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz", + "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==", + "dev": true + }, + "@types/serve-static": { + "version": "1.13.10", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.10.tgz", + "integrity": "sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ==", + "dev": true, + "requires": { + "@types/mime": "^1", + "@types/node": "*" + } + }, + "@types/trusted-types": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.2.tgz", + "integrity": "sha512-F5DIZ36YVLE+PN+Zwws4kJogq47hNgX3Nx6WyDJ3kcplxyke3XIzB8uK5n/Lpm1HBsbGzd6nmGehL8cPekP+Tg==" + }, + "@types/uglify-js": { + "version": "3.17.0", + "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.17.0.tgz", + "integrity": "sha512-3HO6rm0y+/cqvOyA8xcYLweF0TKXlAxmQASjbOi49Co51A1N4nR4bEwBgRoD9kNM+rqFGArjKr654SLp2CoGmQ==", + "dev": true, + "requires": { + "source-map": "^0.6.1" + } + }, + "@types/whatwg-url": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-6.4.0.tgz", + "integrity": "sha512-tonhlcbQ2eho09am6RHnHOgvtDfDYINd5rgxD+2YSkKENooVCFsWizJz139MQW/PV8FfClyKrNe9ZbdHrSCxGg==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@web/parse5-utils": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@web/parse5-utils/-/parse5-utils-1.3.0.tgz", + "integrity": "sha512-Pgkx3ECc8EgXSlS5EyrgzSOoUbM6P8OKS471HLAyvOBcP1NCBn0to4RN/OaKASGq8qa3j+lPX9H14uA5AHEnQg==", + "dev": true, + "requires": { + "@types/parse5": "^6.0.1", + "parse5": "^6.0.1" + }, + "dependencies": { + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + } + } + }, + "@web/rollup-plugin-copy": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@web/rollup-plugin-copy/-/rollup-plugin-copy-0.3.0.tgz", + "integrity": "sha512-QNNtE7Svhk0/p21etaR0JQXYhlMgTAg/HmRXDMmQHMf3uOUWsWMGiJa96P49RRVJut1ECB5FDFeBUgFEmegysQ==", + "dev": true, + "requires": { + "glob": "^7.1.6" + } + }, + "@web/rollup-plugin-html": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@web/rollup-plugin-html/-/rollup-plugin-html-1.11.0.tgz", + "integrity": "sha512-EqUcV5plGYTV/utdbX8g5t8Yq/z6VfFuQuPD39ckOQuRj7Rj6HD15FHwLHpFAWOR0+GrDnNzR74RvI4ipGm0qQ==", + "dev": true, + "requires": { + "@web/parse5-utils": "^1.3.0", + "glob": "^7.1.6", + "html-minifier-terser": "^6.0.0", + "parse5": "^6.0.1" + }, + "dependencies": { + "clean-css": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.1.tgz", + "integrity": "sha512-lCr8OHhiWCTw4v8POJovCoh4T7I9U11yVsPjMWWnnMmp9ZowCxyad1Pathle/9HjaDp+fdQKjO9fQydE6RHTZg==", + "dev": true, + "requires": { + "source-map": "~0.6.0" + } + }, + "commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "dev": true + }, + "html-minifier-terser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", + "integrity": "sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==", + "dev": true, + "requires": { + "camel-case": "^4.1.2", + "clean-css": "^5.2.2", + "commander": "^8.3.0", + "he": "^1.2.0", + "param-case": "^3.0.4", + "relateurl": "^0.2.7", + "terser": "^5.10.0" + } + }, + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, + "terser": { + "version": "5.15.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.15.1.tgz", + "integrity": "sha512-K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw==", + "dev": true, + "requires": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + } + } + } + } + }, + "@webcomponents/shadycss": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webcomponents/shadycss/-/shadycss-1.11.0.tgz", + "integrity": "sha512-L5O/+UPum8erOleNjKq6k58GVl3fNsEQdSOyh0EUhNmi7tHUyRuCJy1uqJiWydWcLARE5IPsMoPYMZmUGrz1JA==", + "dev": true + }, + "@webcomponents/webcomponentsjs": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@webcomponents/webcomponentsjs/-/webcomponentsjs-2.6.0.tgz", + "integrity": "sha512-Moog+Smx3ORTbWwuPqoclr+uvfLnciVd6wdCaVscHPrxbmQ/IJKm3wbB7hpzJtXWjAq2l/6QMlO85aZiOdtv5Q==", + "dev": true + }, + "abortcontroller-polyfill": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/abortcontroller-polyfill/-/abortcontroller-polyfill-1.7.3.tgz", + "integrity": "sha512-zetDJxd89y3X99Kvo4qFx8GKlt6GsvN3UcRZHwU6iFA/0KiOmhkTVhe8oRoTBiTVPZu09x3vCra47+w8Yz1+2Q==", + "dev": true + }, + "accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dev": true, + "requires": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + } + }, + "acorn": { + "version": "8.8.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", + "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==", + "dev": true + }, + "ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", + "dev": true + }, + "anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dev": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "array-back": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/array-back/-/array-back-3.1.0.tgz", + "integrity": "sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q==", + "dev": true + }, + "arrify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", + "dev": true + }, + "async": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", + "dev": true, + "requires": { + "lodash": "^4.17.14" + } + }, + "babel-plugin-dynamic-import-node": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", + "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "dev": true, + "requires": { + "object.assign": "^4.1.0" + } + }, + "babel-plugin-polyfill-corejs2": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.1.tgz", + "integrity": "sha512-v7/T6EQcNfVLfcN2X8Lulb7DjprieyLWJK/zOWH5DUYcAgex9sP3h25Q+DLsX9TloXe3y1O8l2q2Jv9q8UVB9w==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.13.11", + "@babel/helper-define-polyfill-provider": "^0.3.1", + "semver": "^6.1.1" + } + }, + "babel-plugin-polyfill-corejs3": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.2.tgz", + "integrity": "sha512-G3uJih0XWiID451fpeFaYGVuxHEjzKTHtc9uGFEjR6hHrvNzeS/PX+LLLcetJcytsB5m4j+K3o/EpXJNb/5IEQ==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.3.1", + "core-js-compat": "^3.21.0" + } + }, + "babel-plugin-polyfill-regenerator": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz", + "integrity": "sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.3.1" + } + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "brotli-size": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/brotli-size/-/brotli-size-4.0.0.tgz", + "integrity": "sha512-uA9fOtlTRC0iqKfzff1W34DXUA3GyVqbUaeo3Rw3d4gd1eavKVCETXrn3NzO74W+UVkG3UHu8WxUi+XvKI/huA==", + "dev": true, + "requires": { + "duplexer": "0.1.1" + } + }, + "browserslist": { + "version": "4.20.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.4.tgz", + "integrity": "sha512-ok1d+1WpnU24XYN7oC3QWgTyMhY/avPJ/r9T00xxvUOIparA/gc+UPUMaod3i+G6s+nI2nUb9xZ5k794uIwShw==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001349", + "electron-to-chromium": "^1.4.147", + "escalade": "^3.1.1", + "node-releases": "^2.0.5", + "picocolors": "^1.0.0" + } + }, + "browserslist-useragent": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/browserslist-useragent/-/browserslist-useragent-3.1.4.tgz", + "integrity": "sha512-o9V55790uae98Kwn+vwyO+ww07OreiH1BUc9bjjlUbIL3Fh43fyoasZxZ2EiI4ErfEIKwbycQ1pvwOBlySJ7ow==", + "dev": true, + "requires": { + "browserslist": "^4.19.1", + "electron-to-chromium": "^1.4.67", + "semver": "^7.3.5", + "useragent": "^2.3.0", + "yamlparser": "^0.0.2" + }, + "dependencies": { + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "semver": { + "version": "7.3.7", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + } + }, + "buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "builtin-modules": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", + "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", + "dev": true + }, + "bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true + }, + "cache-content-type": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-content-type/-/cache-content-type-1.0.1.tgz", + "integrity": "sha512-IKufZ1o4Ut42YUrZSo8+qnMTrFuKkvyoLXUywKz9GJ5BrhOFGhLdkx9sG4KAnVvbY6kEcSFjLQul+DVmBm2bgA==", + "dev": true, + "requires": { + "mime-types": "^2.1.18", + "ylru": "^1.2.0" + } + }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", + "dev": true, + "requires": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + }, + "dependencies": { + "tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==", + "dev": true + } + } + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "caniuse-api": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", + "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", + "dev": true, + "requires": { + "browserslist": "^4.0.0", + "caniuse-lite": "^1.0.0", + "lodash.memoize": "^4.1.2", + "lodash.uniq": "^4.5.0" + } + }, + "caniuse-lite": { + "version": "1.0.30001352", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001352.tgz", + "integrity": "sha512-GUgH8w6YergqPQDGWhJGt8GDRnY0L/iJVQcU3eJ46GYf52R8tk0Wxp0PymuFVZboJYXGiCqwozAYZNRjVj6IcA==", + "dev": true + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "requires": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + } + }, + "clean-css": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", + "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", + "dev": true, + "requires": { + "source-map": "~0.6.0" + } + }, + "cli-table3": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz", + "integrity": "sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==", + "dev": true, + "requires": { + "@colors/colors": "1.5.0", + "string-width": "^4.2.0" + } + }, + "clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", + "dev": true + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "command-line-args": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/command-line-args/-/command-line-args-5.2.1.tgz", + "integrity": "sha512-H4UfQhZyakIjC74I9d34fGYDwk3XpSr17QhEd0Q3I9Xq1CETHo4Hcuo87WyWHpAF1aSLjLRf5lD9ZGX2qStUvg==", + "dev": true, + "requires": { + "array-back": "^3.1.0", + "find-replace": "^3.0.0", + "lodash.camelcase": "^4.3.0", + "typical": "^4.0.0" + } + }, + "command-line-usage": { + "version": "6.1.3", + "resolved": "https://registry.npmjs.org/command-line-usage/-/command-line-usage-6.1.3.tgz", + "integrity": "sha512-sH5ZSPr+7UStsloltmDh7Ce5fb8XPlHyoPzTpyyMuYCtervL65+ubVZ6Q61cFtFl62UyJlc8/JwERRbAFPUqgw==", + "dev": true, + "requires": { + "array-back": "^4.0.2", + "chalk": "^2.4.2", + "table-layout": "^1.0.2", + "typical": "^5.2.0" + }, + "dependencies": { + "array-back": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/array-back/-/array-back-4.0.2.tgz", + "integrity": "sha512-NbdMezxqf94cnNfWLL7V/im0Ub+Anbb0IoZhvzie8+4HJ4nMQuzHuy49FkGYCJK2yAloZ3meiB6AVMClbrI1vg==", + "dev": true + }, + "typical": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/typical/-/typical-5.2.0.tgz", + "integrity": "sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==", + "dev": true + } + } + }, + "commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true + }, + "compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dev": true, + "requires": { + "mime-db": ">= 1.43.0 < 2" + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dev": true, + "requires": { + "safe-buffer": "5.2.1" + }, + "dependencies": { + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + } + } + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "dev": true + }, + "convert-source-map": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", + "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + } + }, + "cookies": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/cookies/-/cookies-0.8.0.tgz", + "integrity": "sha512-8aPsApQfebXnuI+537McwYsDtjVxGm8gTIzQI3FDW6t5t/DAhERxtnbEPN/8RX+uZthoz4eCOgloXaE5cYyNow==", + "dev": true, + "requires": { + "depd": "~2.0.0", + "keygrip": "~1.1.0" + } + }, + "core-js-bundle": { + "version": "3.22.8", + "resolved": "https://registry.npmjs.org/core-js-bundle/-/core-js-bundle-3.22.8.tgz", + "integrity": "sha512-Q99g5q/MqLRk3QaouZWCVs9Vfy51iKS1h5icZ73bGFOHEBk8Mx721qPcRIBR3G93sCu1WPneIugdu5kDKrBErg==", + "dev": true + }, + "core-js-compat": { + "version": "3.22.8", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.22.8.tgz", + "integrity": "sha512-pQnwg4xtuvc2Bs/5zYQPaEYYSuTxsF7LBWF0SvnVhthZo/Qe+rJpcEekrdNK5DWwDJ0gv0oI9NNX5Mppdy0ctg==", + "dev": true, + "requires": { + "browserslist": "^4.20.3", + "semver": "7.0.0" + }, + "dependencies": { + "semver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", + "dev": true + } + } + }, + "debounce": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz", + "integrity": "sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==", + "dev": true + }, + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "deep-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", + "integrity": "sha512-bHtC0iYvWhyaTzvV3CZgPeZQqCOBGyGsVV7v4eevpdkLHfiSrXUdBG+qAuSz4RI70sszvjQ1QSZ98An1yNwpSw==", + "dev": true + }, + "deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "dev": true + }, + "deepmerge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "dev": true + }, + "define-properties": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "dev": true, + "requires": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + } + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", + "dev": true + }, + "depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "dev": true + }, + "destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "dev": true + }, + "dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "dev": true, + "requires": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + }, + "dependencies": { + "tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==", + "dev": true + } + } + }, + "duplexer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", + "integrity": "sha512-sxNZ+ljy+RA1maXoUReeqBBpBC6RLKmg5ewzV+x+mSETmWNoKdZN6vcQjpFROemza23hGFskJtFNoUWUaQ+R4Q==", + "dev": true + }, + "dynamic-import-polyfill": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/dynamic-import-polyfill/-/dynamic-import-polyfill-0.1.1.tgz", + "integrity": "sha512-m953zv0w5oDagTItWm6Auhmk/pY7EiejaqiVbnzSS3HIjh1FCUeK7WzuaVtWPNs58A+/xpIE+/dVk6pKsrua8g==", + "dev": true + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.4.152", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.152.tgz", + "integrity": "sha512-jk4Ju5SGZAQQJ1iI4Rgru7dDlvkQPLpNPWH9gIZmwCD4YteA5Bbk1xPcPDUf5jUYs3e1e80RXdi8XgKQZaigeg==", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true + }, + "end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dev": true, + "requires": { + "once": "^1.4.0" + } + }, + "es-dev-server": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-dev-server/-/es-dev-server-2.1.0.tgz", + "integrity": "sha512-Vrq/4PyMzWz33QmOdSncvoWLTJVcv2e96z8FLHQwP9zK7DyLeDZCckII8VTW+btUGtM7aErvLH/d/R2pjjjs8w==", + "dev": true, + "requires": { + "@babel/core": "^7.11.1", + "@babel/plugin-proposal-dynamic-import": "^7.10.4", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.10.4", + "@babel/plugin-proposal-optional-chaining": "^7.11.0", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-transform-template-literals": "^7.8.3", + "@babel/preset-env": "^7.9.0", + "@koa/cors": "^3.1.0", + "@open-wc/building-utils": "^2.18.3", + "@rollup/plugin-node-resolve": "^11.0.0", + "@rollup/pluginutils": "^3.0.0", + "@types/babel__core": "^7.1.3", + "@types/browserslist": "^4.8.0", + "@types/browserslist-useragent": "^3.0.0", + "@types/caniuse-api": "^3.0.0", + "@types/command-line-args": "^5.0.0", + "@types/command-line-usage": "^5.0.1", + "@types/debounce": "^1.2.0", + "@types/koa": "^2.0.48", + "@types/koa__cors": "^3.0.1", + "@types/koa-compress": "^2.0.9", + "@types/koa-etag": "^3.0.0", + "@types/koa-static": "^4.0.1", + "@types/lru-cache": "^5.1.0", + "@types/mime-types": "^2.1.0", + "@types/minimatch": "^3.0.3", + "@types/path-is-inside": "^1.0.0", + "@types/whatwg-url": "^6.4.0", + "browserslist": "^4.9.1", + "browserslist-useragent": "^3.0.2", + "builtin-modules": "^3.1.0", + "camelcase": "^5.3.1", + "caniuse-api": "^3.0.0", + "caniuse-lite": "^1.0.30001033", + "chokidar": "^3.0.0", + "command-line-args": "^5.0.2", + "command-line-usage": "^6.1.0", + "debounce": "^1.2.0", + "deepmerge": "^4.2.2", + "es-module-lexer": "^0.3.13", + "get-stream": "^5.1.0", + "is-stream": "^2.0.0", + "isbinaryfile": "^4.0.2", + "koa": "^2.7.0", + "koa-compress": "^3.0.0", + "koa-etag": "^3.0.0", + "koa-static": "^5.0.0", + "lru-cache": "^5.1.1", + "mime-types": "^2.1.27", + "minimatch": "^3.0.4", + "open": "^7.0.3", + "parse5": "^5.1.1", + "path-is-inside": "^1.0.2", + "polyfills-loader": "^1.7.4", + "portfinder": "^1.0.21", + "rollup": "^2.7.2", + "strip-ansi": "^5.2.0", + "systemjs": "^6.3.1", + "tslib": "^1.11.1", + "useragent": "^2.3.0", + "whatwg-url": "^7.0.0" + }, + "dependencies": { + "@rollup/plugin-node-resolve": { + "version": "11.2.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-11.2.1.tgz", + "integrity": "sha512-yc2n43jcqVyGE2sqV5/YCmocy9ArjVAP/BeXyTtADTBBX6V0e5UMqwO8CdQ0kzjb6zu5P1qMzsScCMRvE9OlVg==", + "dev": true, + "requires": { + "@rollup/pluginutils": "^3.1.0", + "@types/resolve": "1.17.1", + "builtin-modules": "^3.1.0", + "deepmerge": "^4.2.2", + "is-module": "^1.0.0", + "resolve": "^1.19.0" + } + }, + "@types/resolve": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", + "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==", + "dev": true, + "requires": { + "@types/node": "*" + } + } + } + }, + "es-module-lexer": { + "version": "0.3.26", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.3.26.tgz", + "integrity": "sha512-Va0Q/xqtrss45hWzP8CZJwzGSZJjDM5/MJRE3IXXnUCcVLElR9BRaE9F62BopysASyc4nM3uwhSW7FFB9nlWAA==", + "dev": true + }, + "es-module-shims": { + "version": "0.4.7", + "resolved": "https://registry.npmjs.org/es-module-shims/-/es-module-shims-0.4.7.tgz", + "integrity": "sha512-0LTiSQoPWwdcaTVIQXhGlaDwTneD0g9/tnH1PNs3zHFFH+xoCeJclDM3rQeqF9nurXPfMKm3l9+kfPRa5VpbKg==", + "dev": true + }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true + }, + "estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", + "dev": true + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "dev": true + }, + "filesize": { + "version": "8.0.7", + "resolved": "https://registry.npmjs.org/filesize/-/filesize-8.0.7.tgz", + "integrity": "sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "find-replace": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-replace/-/find-replace-3.0.0.tgz", + "integrity": "sha512-6Tb2myMioCAgv5kfvP5/PkZZ/ntTpVK39fHY7WkWBgvbeE+VHd/tZuZ4mrC+bxh4cfOZeYKVPaJIZtZXV7GNCQ==", + "dev": true, + "requires": { + "array-back": "^3.0.1" + } + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "dev": true + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "optional": true + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true + }, + "get-intrinsic": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz", + "integrity": "sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + } + }, + "get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + }, + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true + }, + "gzip-size": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-7.0.0.tgz", + "integrity": "sha512-O1Ld7Dr+nqPnmGpdhzLmMTQ4vAsD+rHwMm1NLUmoUFFymBOMKxCCrtDxqdBRYXdeEPEi3SyoR4TizJLQrnKBNA==", + "dev": true, + "requires": { + "duplexer": "^0.1.2" + }, + "dependencies": { + "duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", + "dev": true + } + } + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true + }, + "has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dev": true, + "requires": { + "get-intrinsic": "^1.1.1" + } + }, + "has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true + }, + "has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dev": true, + "requires": { + "has-symbols": "^1.0.2" + } + }, + "he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true + }, + "html-minifier": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-4.0.0.tgz", + "integrity": "sha512-aoGxanpFPLg7MkIl/DDFYtb0iWz7jMFGqFhvEDZga6/4QTjneiD8I/NXL1x5aaoCp7FSIT6h/OhykDdPsbtMig==", + "dev": true, + "requires": { + "camel-case": "^3.0.0", + "clean-css": "^4.2.1", + "commander": "^2.19.0", + "he": "^1.2.0", + "param-case": "^2.1.1", + "relateurl": "^0.2.7", + "uglify-js": "^3.5.1" + }, + "dependencies": { + "camel-case": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz", + "integrity": "sha512-+MbKztAYHXPr1jNTSKQF52VpcFjwY5RkR7fxksV8Doo4KAYc5Fl4UJRgthBbTmEx8C54DqahhbLJkDwjI3PI/w==", + "dev": true, + "requires": { + "no-case": "^2.2.0", + "upper-case": "^1.1.1" + } + }, + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "lower-case": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz", + "integrity": "sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA==", + "dev": true + }, + "no-case": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-2.3.2.tgz", + "integrity": "sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==", + "dev": true, + "requires": { + "lower-case": "^1.1.1" + } + }, + "param-case": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz", + "integrity": "sha512-eQE845L6ot89sk2N8liD8HAuH4ca6Vvr7VWAWwt7+kvvG5aBcPmmphQ68JsEG2qa9n1TykS2DLeMt363AAH8/w==", + "dev": true, + "requires": { + "no-case": "^2.2.0" + } + } + } + }, + "html-minifier-terser": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz", + "integrity": "sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg==", + "dev": true, + "requires": { + "camel-case": "^4.1.1", + "clean-css": "^4.2.3", + "commander": "^4.1.1", + "he": "^1.2.0", + "param-case": "^3.0.3", + "relateurl": "^0.2.7", + "terser": "^4.6.3" + } + }, + "http-assert": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/http-assert/-/http-assert-1.5.0.tgz", + "integrity": "sha512-uPpH7OKX4H25hBmU6G1jWNaqJGpTXxey+YOUizJUAgu0AjLUeC8D73hTrhvDS5D+GJN1DN1+hhc/eF/wpxtp0w==", + "dev": true, + "requires": { + "deep-equal": "~1.0.1", + "http-errors": "~1.8.0" + } + }, + "http-errors": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "dev": true, + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" + }, + "dependencies": { + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true + } + } + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "intersection-observer": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/intersection-observer/-/intersection-observer-0.7.0.tgz", + "integrity": "sha512-Id0Fij0HsB/vKWGeBe9PxeY45ttRiBmhFyyt/geBdDHBYNctMRTE3dC1U3ujzz3lap+hVXlEcVaB56kZP/eEUg==", + "dev": true + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-builtin-module": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.0.tgz", + "integrity": "sha512-phDA4oSGt7vl1n5tJvTWooWWAsXLY+2xCnxNqvKhGEzujg+A43wPlPOyDg3C8XQHN+6k/JTQWJ/j0dQh/qr+Hw==", + "dev": true, + "requires": { + "builtin-modules": "^3.3.0" + } + }, + "is-core-module": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", + "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", + "dev": true, + "requires": { + "has": "^1.0.3" + } + }, + "is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "is-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true + }, + "is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "requires": { + "is-docker": "^2.0.0" + } + }, + "isbinaryfile": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz", + "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", + "dev": true + }, + "jest-worker": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", + "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^7.0.0" + }, + "dependencies": { + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true + }, + "json5": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", + "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", + "dev": true + }, + "kailib": { + "version": "1.0.48", + "resolved": "https://registry.npmjs.org/kailib/-/kailib-1.0.48.tgz", + "integrity": "sha512-bEANFfmAWWaG4qEPxnOhsp8YQ97ZGJpgg+Ou04CybZg1pPQRAU3UdXNU7Z/LbzDTahSgKMmdfC2uotYTB75VYQ==" + }, + "keygrip": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/keygrip/-/keygrip-1.1.0.tgz", + "integrity": "sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ==", + "dev": true, + "requires": { + "tsscmp": "1.0.6" + } + }, + "koa": { + "version": "2.13.4", + "resolved": "https://registry.npmjs.org/koa/-/koa-2.13.4.tgz", + "integrity": "sha512-43zkIKubNbnrULWlHdN5h1g3SEKXOEzoAlRsHOTFpnlDu8JlAOZSMJBLULusuXRequboiwJcj5vtYXKB3k7+2g==", + "dev": true, + "requires": { + "accepts": "^1.3.5", + "cache-content-type": "^1.0.0", + "content-disposition": "~0.5.2", + "content-type": "^1.0.4", + "cookies": "~0.8.0", + "debug": "^4.3.2", + "delegates": "^1.0.0", + "depd": "^2.0.0", + "destroy": "^1.0.4", + "encodeurl": "^1.0.2", + "escape-html": "^1.0.3", + "fresh": "~0.5.2", + "http-assert": "^1.3.0", + "http-errors": "^1.6.3", + "is-generator-function": "^1.0.7", + "koa-compose": "^4.1.0", + "koa-convert": "^2.0.0", + "on-finished": "^2.3.0", + "only": "~0.0.2", + "parseurl": "^1.3.2", + "statuses": "^1.5.0", + "type-is": "^1.6.16", + "vary": "^1.1.2" + } + }, + "koa-compose": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/koa-compose/-/koa-compose-4.1.0.tgz", + "integrity": "sha512-8ODW8TrDuMYvXRwra/Kh7/rJo9BtOfPc6qO8eAfC80CnCvSjSl0bkRM24X6/XBBEyj0v1nRUQ1LyOy3dbqOWXw==", + "dev": true + }, + "koa-compress": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/koa-compress/-/koa-compress-3.1.0.tgz", + "integrity": "sha512-0m24/yS/GbhWI+g9FqtvStY+yJwTObwoxOvPok6itVjRen7PBWkjsJ8pre76m+99YybXLKhOJ62mJ268qyBFMQ==", + "dev": true, + "requires": { + "bytes": "^3.0.0", + "compressible": "^2.0.0", + "koa-is-json": "^1.0.0", + "statuses": "^1.0.0" + } + }, + "koa-convert": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/koa-convert/-/koa-convert-2.0.0.tgz", + "integrity": "sha512-asOvN6bFlSnxewce2e/DK3p4tltyfC4VM7ZwuTuepI7dEQVcvpyFuBcEARu1+Hxg8DIwytce2n7jrZtRlPrARA==", + "dev": true, + "requires": { + "co": "^4.6.0", + "koa-compose": "^4.1.0" + } + }, + "koa-etag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/koa-etag/-/koa-etag-3.0.0.tgz", + "integrity": "sha512-HYU1zIsH4S9xOlUZGuZIP1PIiJ0EkBXgwL8PjFECb/pUYmAee8gfcvIovregBMYxECDhLulEWT2+ZRsA/lczCQ==", + "dev": true, + "requires": { + "etag": "^1.3.0", + "mz": "^2.1.0" + } + }, + "koa-is-json": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/koa-is-json/-/koa-is-json-1.0.0.tgz", + "integrity": "sha512-+97CtHAlWDx0ndt0J8y3P12EWLwTLMXIfMnYDev3wOTwH/RpBGMlfn4bDXlMEg1u73K6XRE9BbUp+5ZAYoRYWw==", + "dev": true + }, + "koa-send": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/koa-send/-/koa-send-5.0.1.tgz", + "integrity": "sha512-tmcyQ/wXXuxpDxyNXv5yNNkdAMdFRqwtegBXUaowiQzUKqJehttS0x2j0eOZDQAyloAth5w6wwBImnFzkUz3pQ==", + "dev": true, + "requires": { + "debug": "^4.1.1", + "http-errors": "^1.7.3", + "resolve-path": "^1.4.0" + } + }, + "koa-static": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/koa-static/-/koa-static-5.0.0.tgz", + "integrity": "sha512-UqyYyH5YEXaJrf9S8E23GoJFQZXkBVJ9zYYMPGz919MSX1KuvAcycIuS0ci150HCoPf4XQVhQ84Qf8xRPWxFaQ==", + "dev": true, + "requires": { + "debug": "^3.1.0", + "koa-send": "^5.0.0" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "lit": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/lit/-/lit-2.2.5.tgz", + "integrity": "sha512-Ln463c0xJZfzVxBcHddNvFQQ8Z22NK7KgNmrzwFF1iESHUud412RRExzepj18wpTbusgwoTnOYuoTpo9uyNBaQ==", + "requires": { + "@lit/reactive-element": "^1.3.0", + "lit-element": "^3.2.0", + "lit-html": "^2.2.0" + } + }, + "lit-element": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-3.2.0.tgz", + "integrity": "sha512-HbE7yt2SnUtg5DCrWt028oaU4D5F4k/1cntAFHTkzY8ZIa8N0Wmu92PxSxucsQSOXlODFrICkQ5x/tEshKi13g==", + "requires": { + "@lit/reactive-element": "^1.3.0", + "lit-html": "^2.2.0" + } + }, + "lit-fontawesome": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/lit-fontawesome/-/lit-fontawesome-0.1.3.tgz", + "integrity": "sha512-Ze///hwsmQZpS4KqbsjxxJXvdhlZG//2z3jNuxIcDGSagE4mtvYXYQYFdhiFudUfyP6PimWtWd+f2ERBooKSPQ==", + "requires": { + "lit-element": "^2.2.1" + }, + "dependencies": { + "lit-element": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-2.5.1.tgz", + "integrity": "sha512-ogu7PiJTA33bEK0xGu1dmaX5vhcRjBXCFexPja0e7P7jqLhTpNKYRPmE+GmiCaRVAbiQKGkUgkh/i6+bh++dPQ==", + "requires": { + "lit-html": "^1.1.1" + } + }, + "lit-html": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-1.4.1.tgz", + "integrity": "sha512-B9btcSgPYb1q4oSOb/PrOT6Z/H+r6xuNzfH4lFli/AWhYwdtrgQkQWBbIc6mdnf6E2IL3gDXdkkqNktpU0OZQA==" + } + } + }, + "lit-html": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-2.2.5.tgz", + "integrity": "sha512-e56Y9V+RNA+SGYsWP2DGb/wad5Ccd3xUZYjmcmbeZcnc0wP4zFQRXeXn7W3bbfBekmHDK2dOnuYNYkg0bQjh/w==", + "requires": { + "@types/trusted-types": "^2.0.2" + } + }, + "lit-modal": { + "version": "1.2.38", + "resolved": "https://registry.npmjs.org/lit-modal/-/lit-modal-1.2.38.tgz", + "integrity": "sha512-jSC3xO6TXI5CxNmvdWYlUPSwjftnUySpwzJvgn50ME3bCqCQWXXcVOnfGQY/7mHOe+nDRKFE6Xp3tr1H5iuwpg==", + "requires": { + "kailib": "latest" + } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", + "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==", + "dev": true + }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true + }, + "lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", + "dev": true + }, + "lodash.sortby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", + "integrity": "sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==", + "dev": true + }, + "lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==", + "dev": true + }, + "lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "dev": true, + "requires": { + "tslib": "^2.0.3" + }, + "dependencies": { + "tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==", + "dev": true + } + } + }, + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "requires": { + "yallist": "^3.0.2" + } + }, + "magic-string": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", + "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", + "dev": true, + "requires": { + "sourcemap-codec": "^1.4.8" + } + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "dev": true + }, + "merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true + }, + "mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "requires": { + "mime-db": "1.52.0" + } + }, + "minify-html-literals": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/minify-html-literals/-/minify-html-literals-1.3.5.tgz", + "integrity": "sha512-p8T8ryePRR8FVfJZLVFmM53WY25FL0moCCTycUDuAu6rf9GMLwy0gNjXBGNin3Yun7Y+tIWd28axOf0t2EpAlQ==", + "dev": true, + "requires": { + "@types/html-minifier": "^3.5.3", + "clean-css": "^4.2.1", + "html-minifier": "^4.0.0", + "magic-string": "^0.25.0", + "parse-literals": "^1.2.1" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", + "dev": true + }, + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "requires": { + "minimist": "^1.2.6" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dev": true, + "requires": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, + "negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "dev": true + }, + "no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "dev": true, + "requires": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + }, + "dependencies": { + "tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==", + "dev": true + } + } + }, + "node-releases": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.5.tgz", + "integrity": "sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==", + "dev": true + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true + }, + "object.assign": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" + } + }, + "on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dev": true, + "requires": { + "ee-first": "1.1.1" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "only": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/only/-/only-0.0.2.tgz", + "integrity": "sha512-Fvw+Jemq5fjjyWz6CpKx6w9s7xxqo3+JCyM0WXWeCSOboZ8ABkyvP8ID4CZuChA/wxSx+XSJmdOm8rGVyJ1hdQ==", + "dev": true + }, + "open": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", + "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", + "dev": true, + "requires": { + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" + } + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "dev": true + }, + "param-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "dev": true, + "requires": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + }, + "dependencies": { + "tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==", + "dev": true + } + } + }, + "parse-literals": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/parse-literals/-/parse-literals-1.2.1.tgz", + "integrity": "sha512-Ml0w104Ph2wwzuRdxrg9booVWsngXbB4bZ5T2z6WyF8b5oaNkUmBiDtahi34yUIpXD8Y13JjAK6UyIyApJ73RQ==", + "dev": true, + "requires": { + "typescript": "^2.9.2 || ^3.0.0 || ^4.0.0" + } + }, + "parse5": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz", + "integrity": "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==", + "dev": true + }, + "parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true + }, + "pascal-case": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", + "dev": true, + "requires": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + }, + "dependencies": { + "tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==", + "dev": true + } + } + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true + }, + "path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==", + "dev": true + }, + "path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true + }, + "polyfills-loader": { + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/polyfills-loader/-/polyfills-loader-1.7.6.tgz", + "integrity": "sha512-AiLIgmGFmzcvsqewyKsqWb7H8CnWNTSQBoM0u+Mauzmp0DsjObXmnZdeqvTn0HNwc1wYHHTOta82WjSjG341eQ==", + "dev": true, + "requires": { + "@babel/core": "^7.11.1", + "@open-wc/building-utils": "^2.18.3", + "@webcomponents/webcomponentsjs": "^2.4.0", + "abortcontroller-polyfill": "^1.4.0", + "core-js-bundle": "^3.6.0", + "deepmerge": "^4.2.2", + "dynamic-import-polyfill": "^0.1.1", + "es-module-shims": "^0.4.6", + "intersection-observer": "^0.7.0", + "parse5": "^5.1.1", + "regenerator-runtime": "^0.13.3", + "resize-observer-polyfill": "^1.5.1", + "systemjs": "^6.3.1", + "terser": "^4.6.7", + "whatwg-fetch": "^3.0.0" + } + }, + "portfinder": { + "version": "1.0.28", + "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.28.tgz", + "integrity": "sha512-Se+2isanIcEqf2XMHjyUKskczxbPH7dQnlMjXX6+dybayyHvAf/TCgyMRlzf/B6QDhAEFOGes0pzRo3by4AbMA==", + "dev": true, + "requires": { + "async": "^2.6.2", + "debug": "^3.1.1", + "mkdirp": "^0.5.5" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", + "dev": true + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "requires": { + "picomatch": "^2.2.1" + } + }, + "reduce-flatten": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/reduce-flatten/-/reduce-flatten-2.0.0.tgz", + "integrity": "sha512-EJ4UNY/U1t2P/2k6oqotuX2Cc3T6nxJwsM0N0asT7dhrtH1ltUxDn4NalSYmPE2rCkVpcf/X6R0wDwcFpzhd4w==", + "dev": true + }, + "regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true + }, + "regenerate-unicode-properties": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.0.1.tgz", + "integrity": "sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw==", + "dev": true, + "requires": { + "regenerate": "^1.4.2" + } + }, + "regenerator-runtime": { + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", + "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", + "dev": true + }, + "regenerator-transform": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.0.tgz", + "integrity": "sha512-LsrGtPmbYg19bcPHwdtmXwbW+TqNvtY4riE3P83foeHRroMbH6/2ddFBfab3t7kbzc7v7p4wbkIecHImqt0QNg==", + "dev": true, + "requires": { + "@babel/runtime": "^7.8.4" + } + }, + "regexpu-core": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.0.1.tgz", + "integrity": "sha512-CriEZlrKK9VJw/xQGJpQM5rY88BtuL8DM+AEwvcThHilbxiTAy8vq4iJnd2tqq8wLmjbGZzP7ZcKFjbGkmEFrw==", + "dev": true, + "requires": { + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.0.1", + "regjsgen": "^0.6.0", + "regjsparser": "^0.8.2", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.0.0" + } + }, + "regjsgen": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.6.0.tgz", + "integrity": "sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA==", + "dev": true + }, + "regjsparser": { + "version": "0.8.4", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.8.4.tgz", + "integrity": "sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA==", + "dev": true, + "requires": { + "jsesc": "~0.5.0" + }, + "dependencies": { + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "dev": true + } + } + }, + "relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==", + "dev": true + }, + "resize-observer-polyfill": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz", + "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==", + "dev": true + }, + "resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dev": true, + "requires": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "resolve-path": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/resolve-path/-/resolve-path-1.4.0.tgz", + "integrity": "sha512-i1xevIst/Qa+nA9olDxLWnLk8YZbi8R/7JPbCMcgyWaFR6bKWaexgJgEB5oc2PKMjYdrHynyz0NY+if+H98t1w==", + "dev": true, + "requires": { + "http-errors": "~1.6.2", + "path-is-absolute": "1.0.1" + }, + "dependencies": { + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true + }, + "http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "dev": true, + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true + } + } + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "rollup": { + "version": "2.79.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.79.1.tgz", + "integrity": "sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==", + "dev": true, + "requires": { + "fsevents": "~2.3.2" + } + }, + "rollup-plugin-minify-html-literals": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/rollup-plugin-minify-html-literals/-/rollup-plugin-minify-html-literals-1.2.6.tgz", + "integrity": "sha512-JRq2fjlCTiw0zu+1Sy3ClHGCxA79dWGr4HLHWSQgd060StVW9fBVksuj8Xw/suPkNSGClJf/4xNQ1MF6JeXPaw==", + "dev": true, + "requires": { + "minify-html-literals": "^1.3.5", + "rollup-pluginutils": "^2.8.2" + } + }, + "rollup-plugin-summary": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/rollup-plugin-summary/-/rollup-plugin-summary-1.4.3.tgz", + "integrity": "sha512-m1xViwOlgocoIaaUX8AdWQVFHzti69MXqrdBsxFsXnQOIqtoU9KSNMZjlToAJvV8pjB85+boAw/P3Yu6F/VIaA==", + "dev": true, + "requires": { + "brotli-size": "^4.0.0", + "cli-table3": "^0.6.1", + "filesize": "^8.0.7", + "gzip-size": "^7.0.0", + "terser": "^5.12.1" + }, + "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "terser": { + "version": "5.15.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.15.1.tgz", + "integrity": "sha512-K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw==", + "dev": true, + "requires": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + } + } + } + }, + "rollup-plugin-terser": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/rollup-plugin-terser/-/rollup-plugin-terser-7.0.2.tgz", + "integrity": "sha512-w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.10.4", + "jest-worker": "^26.2.1", + "serialize-javascript": "^4.0.0", + "terser": "^5.0.0" + }, + "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "terser": { + "version": "5.15.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.15.1.tgz", + "integrity": "sha512-K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw==", + "dev": true, + "requires": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + } + } + } + }, + "rollup-pluginutils": { + "version": "2.8.2", + "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz", + "integrity": "sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ==", + "dev": true, + "requires": { + "estree-walker": "^0.6.1" + }, + "dependencies": { + "estree-walker": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.6.1.tgz", + "integrity": "sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==", + "dev": true + } + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + }, + "serialize-javascript": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz", + "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", + "dev": true, + "requires": { + "randombytes": "^2.1.0" + } + }, + "setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "dev": true + }, + "shady-css-scoped-element": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/shady-css-scoped-element/-/shady-css-scoped-element-0.0.2.tgz", + "integrity": "sha512-Dqfl70x6JiwYDujd33ZTbtCK0t52E7+H2swdWQNSTzfsolSa6LJHnTpN4T9OpJJEq4bxuzHRLFO9RBcy/UfrMQ==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "dev": true + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "dev": true + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + } + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true + }, + "systemjs": { + "version": "6.12.1", + "resolved": "https://registry.npmjs.org/systemjs/-/systemjs-6.12.1.tgz", + "integrity": "sha512-hqTN6kW+pN6/qro6G9OZ7ceDQOcYno020zBQKpZQLsJhYTDMCMNfXi/Y8duF5iW+4WWZr42ry0MMkcRGpbwG2A==", + "dev": true + }, + "table-layout": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/table-layout/-/table-layout-1.0.2.tgz", + "integrity": "sha512-qd/R7n5rQTRFi+Zf2sk5XVVd9UQl6ZkduPFC3S7WEGJAmetDTjY3qPN50eSKzwuzEyQKy5TN2TiZdkIjos2L6A==", + "dev": true, + "requires": { + "array-back": "^4.0.1", + "deep-extend": "~0.6.0", + "typical": "^5.2.0", + "wordwrapjs": "^4.0.0" + }, + "dependencies": { + "array-back": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/array-back/-/array-back-4.0.2.tgz", + "integrity": "sha512-NbdMezxqf94cnNfWLL7V/im0Ub+Anbb0IoZhvzie8+4HJ4nMQuzHuy49FkGYCJK2yAloZ3meiB6AVMClbrI1vg==", + "dev": true + }, + "typical": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/typical/-/typical-5.2.0.tgz", + "integrity": "sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==", + "dev": true + } + } + }, + "terser": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz", + "integrity": "sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==", + "dev": true, + "requires": { + "commander": "^2.20.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.12" + }, + "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + } + } + }, + "thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dev": true, + "requires": { + "any-promise": "^1.0.0" + } + }, + "thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "dev": true, + "requires": { + "thenify": ">= 3.1.0 < 4" + } + }, + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "requires": { + "os-tmpdir": "~1.0.2" + } + }, + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + }, + "toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "dev": true + }, + "tr46": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", + "integrity": "sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "tsscmp": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/tsscmp/-/tsscmp-1.0.6.tgz", + "integrity": "sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==", + "dev": true + }, + "type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dev": true, + "requires": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + } + }, + "typescript": { + "version": "4.8.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.8.4.tgz", + "integrity": "sha512-QCh+85mCy+h0IGff8r5XWzOVSbBO+KfeYrMQh7NJ58QujwcE22u+NUSmUxqF+un70P9GXKxa2HCNiTTMJknyjQ==", + "dev": true + }, + "typical": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/typical/-/typical-4.0.0.tgz", + "integrity": "sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw==", + "dev": true + }, + "uglify-js": { + "version": "3.17.3", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.3.tgz", + "integrity": "sha512-JmMFDME3iufZnBpyKL+uS78LRiC+mK55zWfM5f/pWBJfpOttXAqYfdDGRukYhJuyRinvPVAtUhvy7rlDybNtFg==", + "dev": true + }, + "unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true + }, + "unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "requires": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + } + }, + "unicode-match-property-value-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz", + "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==", + "dev": true + }, + "unicode-property-aliases-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz", + "integrity": "sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==", + "dev": true + }, + "upper-case": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz", + "integrity": "sha512-WRbjgmYzgXkCV7zNVpy5YgrHgbBv126rMALQQMrmzOVC4GM2waQ9x7xtm8VU+1yF2kWyPzI9zbZ48n4vSxwfSA==", + "dev": true + }, + "useragent": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/useragent/-/useragent-2.3.0.tgz", + "integrity": "sha512-4AoH4pxuSvHCjqLO04sU6U/uE65BYza8l/KKBS0b0hnUPWi+cQ2BpeTEwejCSx9SPV5/U03nniDTrWx5NrmKdw==", + "dev": true, + "requires": { + "lru-cache": "4.1.x", + "tmp": "0.0.x" + }, + "dependencies": { + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + } + } + }, + "valid-url": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/valid-url/-/valid-url-1.0.9.tgz", + "integrity": "sha512-QQDsV8OnSf5Uc30CKSwG9lnhMPe6exHtTXLRYX8uMwKENy640pU+2BgBL0LRbDh/eYRahNCS7aewCx0wf3NYVA==", + "dev": true + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "dev": true + }, + "webidl-conversions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", + "dev": true + }, + "whatwg-fetch": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz", + "integrity": "sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA==", + "dev": true + }, + "whatwg-url": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", + "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", + "dev": true, + "requires": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" + } + }, + "wordwrapjs": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/wordwrapjs/-/wordwrapjs-4.0.1.tgz", + "integrity": "sha512-kKlNACbvHrkpIw6oPeYDSmdCTu2hdMHoyXLTcUKala++lx5Y+wjJ/e474Jqv5abnVmwxw08DiTuHmw69lJGksA==", + "dev": true, + "requires": { + "reduce-flatten": "^2.0.0", + "typical": "^5.2.0" + }, + "dependencies": { + "typical": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/typical/-/typical-5.2.0.tgz", + "integrity": "sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==", + "dev": true + } + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "yamlparser": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/yamlparser/-/yamlparser-0.0.2.tgz", + "integrity": "sha1-Mjk+avxwyMoGa2ZQrGc4tIFnjrw=", + "dev": true + }, + "ylru": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/ylru/-/ylru-1.3.2.tgz", + "integrity": "sha512-RXRJzMiK6U2ye0BlGGZnmpwJDPgakn6aNQ0A7gHRbD4I0uvK4TW6UqkK1V0pp9jskjJBAXd3dRrbzWkqJ+6cxA==", + "dev": true + } + } +} diff --git a/plugins/svc-rating/package.json b/plugins/svc-rating/package.json new file mode 100644 index 0000000..f6de68b --- /dev/null +++ b/plugins/svc-rating/package.json @@ -0,0 +1,22 @@ +{ + "dependencies": { + "lit": "^2.2.5", + "lit-fontawesome": "^0.1.3", + "lit-modal": "^1.2.38" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1", + "serve": "es-dev-server --app-component index.html --node-resolve --watch --open", + "build": "rollup -c" + }, + "devDependencies": { + "@rollup/plugin-node-resolve": "^15.0.0", + "@web/rollup-plugin-copy": "^0.3.0", + "@web/rollup-plugin-html": "^1.11.0", + "es-dev-server": "^2.1.0", + "rollup": "^2.79.1", + "rollup-plugin-minify-html-literals": "^1.2.6", + "rollup-plugin-summary": "^1.4.3", + "rollup-plugin-terser": "^7.0.2" + } +} diff --git a/plugins/svc-rating/rating-display.js b/plugins/svc-rating/rating-display.js new file mode 100644 index 0000000..304f6df --- /dev/null +++ b/plugins/svc-rating/rating-display.js @@ -0,0 +1,308 @@ +import { + LitElement, + html, + css, +} from "https://cdn.jsdelivr.net/gh/lit/dist@3/core/lit-core.min.js"; + +/* ----------------------------------------------------------------- */ +const googleApiKey = "AIzaSyAJ9pMGaHcmOiNeHEXQLGCiJcr5k3TV4F8"; // Google API Key +const timeLimit = 4 * 60 * 60 * 1000; // time limit for the rating data to be cached +/* ----------------------------------------------------------------- */ + +export class DisplayRating extends LitElement { + static get styles() { + return [ + css` + .star-images { + width: 22px; + } + + .empty-star { + margin: 0px 3px; + } + .fa::before { + color: #ffb931; + } + .fa-star-o { + color: #ffb931; + } + `, + ]; + } + + static get properties() { + return { + numberOfStars: { + type: Number, + }, + rating: { + type: Number, + }, + roundRating: { + type: Number, + }, + title: { + type: String, + }, + fullStars: { + type: Number, + }, + halfStars: { + type: Number, + }, + + // the sheet parameters + spreadsheetID: { + // the sheet ID to be referenced for the fetching the rating data + type: String, + }, + sheetName: { + // the sheet Name to be referenced in the main spreadsheet for the fetching the rating data + type: String, + }, + columnName: { + // the column name to be referenced for the fetching the rating data + type: String, + }, + columnValue: { + // the column value to be referenced for the fetching the rating data + // should be a unique identifier + // lab_name for lab rating + // exp_name for experiment rating + type: String, + }, + imagesDirectory: { + // the directory where the images are stored + type: String, + } + }; + } + // function too fetch the rating data from the google sheet + parse_local_storage_object(object, key) { + // function to parse the local storage object and return the rating data + // returns a dictionary with timeFetched and rating + if (object === null) { + return null; + } + const parsedObject = JSON.parse(object); + if (parsedObject[key] === undefined) { + return null; + } + + const newObject = { + timeFetched: parsedObject.timeFetched, + rating: parsedObject["rating"][key], + }; + return newObject; + } + async get_rating() { + // get the rating data from the experiment from local storage + console.debug("Getting the rating....", this.columnValue); + const key = this.columnValue; + + const dataObject = this.parse_local_storage_object( + localStorage.getItem("vl_data"), + key + ); + + const rating = localStorage.getItem(this.columnValue); + // see the time threshold for the rating data + const timeFetched = localStorage.getItem("timeFetched"); + const currentTime = new Date().getTime(); + // caching + if ( + dataObject && + dataObject.rating && + timeFetched && + currentTime - timeFetched < timeLimit + ) { + // set the rating data + this.rating = dataObject.rating; + return; + } else { + // need to make a request to the backend and save the data into the local storage of the browser + const url = `https://sheets.googleapis.com/v4/spreadsheets/${this.spreadsheetID}/values/${this.sheetName}!A:O?key=${googleApiKey}`; + const vl_data = {}; + vl_data["rating"] = {}; + try { + console.debug("Fetching the data"); + console.debug(url); + const response = await fetch(url); + if (!response.ok) { + throw new Error("HTTP error " + response.status); + } + const data = await response.json(); + console.debug(data); + const values = data.values; + // get the column index of the column name + const colIndex = values[1].indexOf(this.columnName); + const ratingIndex = values[1].indexOf("Rating"); + // go over the entire fetched data and cache it for next reference + + for (let i = 1; i < values.length; i++) { + vl_data["rating"][values[i][colIndex]] = values[i][ratingIndex]; + if (values[i][colIndex] === this.columnValue) { + // set the rating for the current display + this.rating = values[i][ratingIndex]; + } + } + // update the time fetched + vl_data["timeFetched"] = new Date().getTime(); + localStorage.setItem("vl_data", JSON.stringify(vl_data)); + } catch { + this.rating = 0; + console.debug("Something went wrong"); + } + console.debug("Rating is ", this.rating); + if (vl_data["rating"] == {}) { + console.debug("Something went wrong"); + this.rating = 0; + } + } + } + // as soon as the web component is loaded into the browser window + // the connectedCallback() method is called + connectedCallback() { + super.connectedCallback(); + console.debug("Connected Callback"); + this.rating = 0; + this.get_rating(this.experimentURL, this.experimentName); + } + // get and set methods for the properties + get sheetName() { + return this._sheetName; + } + set sheetName(name) { + this._sheetName = name; + this.requestUpdate(); + } + set spreadsheetID(id) { + this._spreadsheetID = id; + this.requestUpdate(); + } + get spreadsheetID() { + return this._spreadsheetID; + } + set columnName(name) { + this._columnName = name; + this.requestUpdate(); + } + get columnName() { + return this._columnName; + } + set imagesDirectory(directory) { + this._imagesDirectory = directory; + console.debug("Set"+this._imagesDirectory); + this.requestUpdate(); + } + get imagesDirectory() { + console.debug("Get"+this._imagesDirectory); + return this._imagesDirectory; + } + set columnValue(value) { + this._columnValue = value; + this.requestUpdate(); + } + get columnValue() { + return this._columnValue; + } + get fullStars() { + return this._fullStars; + } + set fullStars(newVal) { + this._fullStars = newVal; + this.requestUpdate(); + } + get halfStars() { + return this._halfStars; + } + set halfStars(newVal) { + this._halfStars = newVal; + this.requestUpdate(); + } + set rating(newRating) { + console.debug("New Rating is ", newRating); + this._rating = newRating; + this._roundRating = Math.round(2 * newRating) / 2; + if (this._roundRating % 1 === 0) { + this._fullStars = this._roundRating; + this._halfStars = 0; + } else { + this._fullStars = Math.floor(this._roundRating); + this._halfStars = 1; + } + console.debug(this._fullStars, this._halfStars); + this.requestUpdate(); + } + get rating() { + return this._rating; + } + set title(newTitle) { + this._title = newTitle; + } + get title() { + return this._title; + } + get numberOfStars() { + return this._numberOfStars; + } + set numberOfStars(newVal) { + this._numberOfStars = newVal; + this.requestUpdate(); + } + // constructor + constructor() { + super(); + this._numberOfStars = 5; + if (this._roundRating % 1 === 0) { + this._fullStars = this._roundRating; + this._halfStars = 0; + } else { + this._fullStars = Math.floor(this._roundRating); + this._halfStars = 1; + } + const fa = document.createElement("link"); + fa.rel = "stylesheet"; + fa.type = "text/javascript"; + fa.href = "https://unpkg.com/fontawesome@5.6.3/index.js"; + document.head.appendChild(fa); + } + render() { + console.debug(this._fullStars, this._halfStars); + const stars = []; + for (let i = 0; i < this._fullStars; i++) { + stars.push( + html`<img src=${this.imagesDirectory}star.svg class="star-images"></img>` + // html`<img src="http://localhost:5500/images/star.svg" class="star-images"></img>` + ); + } + for (let i = 0; i < this._halfStars; i++) { + // stars.push(html`<span class="fa fa-star-half"></span>`); + stars.push( + html`<img src=${this.imagesDirectory}half-star.svg class="star-images"></img>` + + // html`<img src="http://localhost:5500/images/half-star.svg" class="star-images"></img>` + ); + } + console.debug(this._numberOfStars, this._fullStars, this._halfStars); + for ( + let i = 0; + i < this._numberOfStars - this._fullStars - this._halfStars; + i++ + ) { + stars.push( + html`<img src=${this.imagesDirectory}empty-star.svg class="star-images empty-star"></img>` + + // html`<img src="http://localhost:5500/images/empty-star.svg" class="star-images empty-star"></img>` + ); + // stars.push(html`<input name="star" type="radio"></input>`) + } + console.debug(this.rating); + return html`<div> + <h3>${this.title}</h3> + <div class="star-div">${stars}</div> + </div>`; + } +} + +customElements.define("rating-display", DisplayRating); diff --git a/plugins/svc-rating/rating-submit.js b/plugins/svc-rating/rating-submit.js new file mode 100644 index 0000000..7086282 --- /dev/null +++ b/plugins/svc-rating/rating-submit.js @@ -0,0 +1,255 @@ +import { LitElement, html, css } from "https://cdn.jsdelivr.net/gh/lit/dist@3/core/lit-core.min.js"; +import { imageData } from "./imageData.js"; +// import event + +export class SubmitRating extends LitElement { + static get styles() { + return css` + :host { + font-family: Arial, Helvetica, sans-serif; + } + + #submit-button, + #cancel-button { + border: none; + color: #ffffff; + background-color: #288ec8; + text-align: center; + font-size: 1.05rem; + border-radius: 1em; + padding: 0.6em 1.2em; + cursor: pointer; + } + #cancel-button { + background-color: grey; + } + #cancel-button:hover { + background-color: #888; + } + + #rating-button:hover, + #submit-button:hover { + background-color: #a9a9a9; + } + + #rating-button { + margin-top: 1rem; + } + h1 { + margin-bottom: 0rem; + margin-top: 1rem; + } + .modal { + display: none; + position: fixed; + z-index: 1; + top: 0; + left: 0; + width: 100%; + height: 100%; + overflow: auto; + background-color: rgba(0, 0, 0, 0.4); + justify-content: right; + align-items: center; + } + + .vl-mobile-rating-button{ + position: fixed; + bottom : 80px; + right : 20px; + z-index: 1; + font-size: 0; + border: none; + padding: 25px; + background-image: url(https://upload.wikimedia.org/wikipedia/commons/thumb/2/23/Facebook_Like_button.svg/1024px-Facebook_Like_button.svg.png); + background-repeat: no-repeat; + background-position: center; + background-size: 50px; + border-radius: 50%; + } + + @media (min-width: 992px) { + .vl-mobile-rating-button{ + display: none; + } + .rating-button{ + display: block; + } + } + @media (max-width: 992px) { + .rating-button{ + display: none; + } + .vl-mobile-rating-button{ + display: block; + } + } + .modal-content { + position: relative; + top: 1px; + right: 1px; + background-color: #fefefe; + padding: 20px; + border: 1px solid #888; + display: flex; + flex-direction: column; + /* justify-content: center; */ + align-items: center; + border-radius: 14px; + transform: translate(-100%,-100%); + } + .close { + color: #aaaaaa; + font-size: 28px; + font-weight: bold; + } + .fa { + color: orange; + } + .modal { + display: none; + height: 100vh; + } + .rating-div { + display: flex; + justify-content: center; + align-items: center; + width: 100%; + height: 100%; + position: relative; + margin: 20px; + } + .rating-header { + width: 100%; + display: flex; + justify-content: space-between; + margin-bottom: 10px; + } + + .rating-header > img { + height: 48px; + } + .rating-button { + position: inherit; + border-radius: 1em; + padding: 0.6em 1.2em; + margin: 15px 0px; + font-size: 1.05rem; + border: none; + color: #ffffff; + background-color: #288ec8; + text-align: center; + font-size: 1.05rem; + border-radius: 1em; + padding: 0.76em 1.2em; + cursor: pointer; + + } + .rating-button:hover { + background-color: #288ec8; + } + #submit-button { + margin-right: 1rem; + } + + .close:hover, + .close:focus { + color: #000; + text-decoration: none; + cursor: pointer; + } + `; + } + open() { + this.shadowRoot.querySelector(".modal").style.display = "flex"; + } + close() { + this.shadowRoot.querySelector(".modal").style.display = "none"; + } + connectedCallback() { + super.connectedCallback(); + // add event listener and extract data + window.addEventListener("vl-rating-click", this.updateRating.bind(this)); + } + + updateRating(e){ + this.experiment_rating = e.detail; + } + handleSubmit(e) { + e.preventDefault(); + + const data = { + rating_name : this.rating_name, + rating: this.experiment_rating, + lab_rating: this.lab_rating, + }; + const myEvent = new CustomEvent("vl-rating-submit", { + detail: data, + bubbles: true, + composed: true, + }); + this.dispatchEvent(myEvent); + this.close(); + } + static properties = { + rating_name:{type: String}, + title : {type : String}, + text: { type: String }, + experiment_rating: { type: Number }, + lab_rating: { type: Number }, + }; + constructor() { + super(); + this.rating_name = "NULL"; + this.experiment_rating = 4.5; + this.lab_rating = 4.5; + } + get rating_name() { + return this._rating_name; + } + set rating_name(rating_name) { + this._rating_name = rating_name; + // console.debug("New Rating Nammeeee",this._rating_name); + this.requestUpdate(); + } + get title() { + return this._title; + } + set title(title) { + this._title = title; + this.requestUpdate(); + } + render() { + return html` + <div class="rating-page"> + + <div class=" modal"> + <div class="modal-content"> + <div class="rating-header"> + <img src="${imageData}" /> + <span class="close" @click=${this.close}>×</span> + </div> + <h1 id="title">${this.title}</h1> + <div class="rating-div"> + <rating-element rating="5"></rating-element> + </div> + <div class="button-div"> + <button id="submit-button" @click=${this.handleSubmit}> + Submit + </button> + <button id="cancel-button" @click=${this.close}>Cancel</button> + </div> + </div> + </div> + <button class="v-button rating-button" id="rating-button" @click=${this.open}> + Rate Me + </button> + <button class="vl-mobile-rating-button" id="rating-button" @click=${this.open}> + Rate Me + </button> + </div> + `; + } +} + +customElements.define("rating-submit", SubmitRating); diff --git a/plugins/svc-rating/rating.js b/plugins/svc-rating/rating.js new file mode 100644 index 0000000..5773756 --- /dev/null +++ b/plugins/svc-rating/rating.js @@ -0,0 +1,135 @@ +import { LitElement, html, css } from "https://cdn.jsdelivr.net/gh/lit/dist@3/core/lit-core.min.js"; + +export class RatingElement extends LitElement { + static styles = css` + :host { + display: block; + width: 100%; + height: 100%; + margin: 0 auto; + padding: 0; + font-family: Arial, Helvetica, sans-serif; + } + .star-div { + display: flex; + justify-content: center; + align-items: center; + width: 100%; + height: 100%; + margin: 0 auto; + padding: 0; + unicode-bidi: bidi-override; + direction: rtl; + } + input { + display: none; + } + + label::before { + content: "\u2606"; + position: relative; + top: 0px; + line-height: 26px; + } + label { + width: 30px; + height: 30px; + font-family: Verdana; + font-size: 30px; + color: orange; + transition: 0.2s ease; + } + label:hover { + color: #ffb931; + transition: 0.2s ease; + cursor: pointer; + } + input:checked ~ label::before { + content: "\u2605"; + } + `; + static get properties() { + return { + rating: { + type: Number, + }, + checked: { + type: Number, + }, + values: { + type: Array, + }, + ids: { + type: Array, + }, + }; + } + set rating(val) { + this._rating = val; + let arr = [], + idarr = []; + for (let i = this._rating; i > 0; i--) { + arr.push(i); + idarr.push(`star-${i}`); + } + this.values = arr; + this.ids = idarr; + this.checked = 0; + } + get rating() { + return this._rating; + } + handleClick(e) { + this.checked = e.target.value; + this._rating = parseInt(e.target.id.split("-")[1]); + + // dispatch event to submit rating from clicked element + const data = { + rating: this._rating + }; + const clickEvent = new CustomEvent("vl-rating-click", { + detail: this._rating, + bubbles: true, + composed: true, + }); + console.debug("My data: ", data); + console.debug("My event: ", clickEvent); + this.dispatchEvent(clickEvent); + + } + + constructor() { + super(); + this._rating = 0; + let arr = [], + idarr = []; + for (let i = this._rating; i > 0; i--) { + arr.push(i); + idarr.push(`star-${i}`); + } + this.values = arr; + this.ids = idarr; + this.checked = 0; + } + + render() { + return html` + <div class="star-div"> + ${this.values.map( + (value, index) => + html` + <input + type="radio" + @click=${this.handleClick} + name="stars" + id=${this.ids[index]} + /> + <label for=${this.ids[index]}></label> + ` + )} + </div> + `; + } +} + +customElements.define("rating-element", RatingElement); \ No newline at end of file diff --git a/plugins/tool-performance/LICENSE b/plugins/tool-performance/LICENSE new file mode 100644 index 0000000..0ad25db --- /dev/null +++ b/plugins/tool-performance/LICENSE @@ -0,0 +1,661 @@ + GNU AFFERO GENERAL PUBLIC LICENSE + Version 3, 19 November 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/> + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU Affero General Public License is a free, copyleft license for +software and other kinds of works, specifically designed to ensure +cooperation with the community in the case of network server software. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +our General Public Licenses are intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + Developers that use our General Public Licenses protect your rights +with two steps: (1) assert copyright on the software, and (2) offer +you this License which gives you legal permission to copy, distribute +and/or modify the software. + + A secondary benefit of defending all users' freedom is that +improvements made in alternate versions of the program, if they +receive widespread use, become available for other developers to +incorporate. Many developers of free software are heartened and +encouraged by the resulting cooperation. However, in the case of +software used on network servers, this result may fail to come about. +The GNU General Public License permits making a modified version and +letting the public access it on a server without ever releasing its +source code to the public. + + The GNU Affero General Public License is designed specifically to +ensure that, in such cases, the modified source code becomes available +to the community. It requires the operator of a network server to +provide the source code of the modified version running there to the +users of that server. Therefore, public use of a modified version, on +a publicly accessible server, gives the public access to the source +code of the modified version. + + An older license, called the Affero General Public License and +published by Affero, was designed to accomplish similar goals. This is +a different license, not a version of the Affero GPL, but Affero has +released a new version of the Affero GPL which permits relicensing under +this license. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU Affero General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Remote Network Interaction; Use with the GNU General Public License. + + Notwithstanding any other provision of this License, if you modify the +Program, your modified version must prominently offer all users +interacting with it remotely through a computer network (if your version +supports such interaction) an opportunity to receive the Corresponding +Source of your version by providing access to the Corresponding Source +from a network server at no charge, through some standard or customary +means of facilitating copying of software. This Corresponding Source +shall include the Corresponding Source for any work covered by version 3 +of the GNU General Public License that is incorporated pursuant to the +following paragraph. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the work with which it is combined will remain governed by version +3 of the GNU General Public License. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU Affero General Public License from time to time. Such new versions +will be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU Affero General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU Affero General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU Affero General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + <one line to give the program's name and a brief idea of what it does.> + Copyright (C) <year> <name of author> + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published + by the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see <https://www.gnu.org/licenses/>. + +Also add information on how to contact you by electronic and paper mail. + + If your software can interact with users remotely through a computer +network, you should also make sure that it provides a way for users to +get its source. For example, if your program is a web application, its +interface could display a "Source" link that leads users to an archive +of the code. There are many ways you could offer source, and different +solutions will be better for different programs; see section 13 for the +specific requirements. + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU AGPL, see +<https://www.gnu.org/licenses/>. diff --git a/plugins/tool-performance/README.md b/plugins/tool-performance/README.md new file mode 100644 index 0000000..f4eab19 --- /dev/null +++ b/plugins/tool-performance/README.md @@ -0,0 +1,149 @@ +# Performance-Tool + +## Overview + +This tool generates performance reports which include various scores and metrics as well as suggestions for improvement. The reports are broadly divided into 4 categories: +1. Performance: Performance is the speed at which a page loads. +2. Accessibility: Measures how accessible and easy to operate the page is. +3. Best Practices: Checks for common mistakes in the web development process. +4. Search Engine Optimization (SEO): Optimizes for search engine rankings. + +These reports are generated using a lighthouse API. [Learn More](https://web.dev/learn/#lighthouse). + +Additionally, this tool also informs on whether a page is mobile-friendly or not, and in the case that it is not, it points out the issues/reasons for this. We make use of a google search console (GSC) API for this. [Learn More](https://search.google.com/test/mobile-friendly). + +Note that the tool does the above tasks for all the pages accessible from the base URL where it is hosted, i.e, if it is hosted on an experiment, it will generate the above reports for all the pages part of that experiment. This tool has been integrated into the testing build script for VLABS experiments and will be available for all experiments. + +## Target Audience + +This tool primarily is to help developers better enhance the pages they are building by giving them comprehensive insights into the various aspects of their pages. It allows developers to improve the overall user experience. + +## Technology Used + +The entire tool has been built in nodejs (javascript). Additionally, we make use of the APIs provided by Google by simple HTTP requests. + +## Overall Architecture + +The performance page is organised as per a tab structure where each tab pertains to a learning unit or task of the experiment. For learning units, a second layer of tabs is used for all the tasks under that specific LU. The basic page structure (including the tabs) is set up by a template file. + +Whenever the performance page is loaded, we obtain the links to all the tasks using the 'data-url' attribute set for all the tabs. Then, we check if the local storage already contains valid reports for all the tasks (tab). By valid, we mean that we first check if the timestamp stored for the current set of reports in the local storage is expired (we give a 2 hour lifetime). If it is expired or not at all set (in case this is the first-ever run of the tool or local storage was manually cleared), a new report is generated for all the tasks. + +We loop through all the tasks and color code the tabs as per their lighthouse mobile device performance score for each tab/task. In the case of LU tabs, the tab is color-coded with the color of the worst-performing task under that LU. If the report is being newly generated, the color is added as and when the report is ready. During this loop, we also check if the current task under consideration is the currently active tab and accordingly populate the page with the report for that tab/task. + +Whenever we switch tabs, we check if the report is available for that task and accordingly populate the page with the report. For the population, we have divided the page into two segments, one for the lighthouse report and the other for the mobile friendliness report. + +For the report generation, we use the lighthouse and mobile-friendliness test API (part of Google Search Console tools) APIs. We use separate API keys and parameters for each. It should be noted that the lighthouse API is run twice for each task as we run it once for a desktop device environment and once for a mobile device environment. We use these APIs by simply sending HTTP requests to the relevant URLs with all the parameters encoded within the URL. + +We make sure to generate the reports for a maximum of 5 tasks simultaneously as the lighthouse API has a limit of a maximum of 10 requests at a time, and since each task sends two requests, we make use of all the 10 requests. We enforce this limit by dividing the original array with the links to all the tasks into 5 subarrays and run 5 promises at a time but within the subarrays, only call the API for 1 task at a time. + +## Code Explanation + +The code has been made in a highly modular way such that each file consists of functions that achieve a single common task. + +1. Handlebars + + The handlebar files are used to set up the basic template for the page where the reports will be displayed. + + 1. 'handlebars/performance-report.handlebars' + + This is the main file that setups the entire page template. It imports all the required CSS and js files, which will be covered later on in this document. It sets up all the essential components such as the title, legend, etc, as well as the divs where the data will be populated. + + The most important part is where it sets up the tabs for each of the experiment units with a data attribute 'data-url' set with the relative path to the page/directory of that unit. In the case of learning units, the path is to the directory of that unit, and for tasks, the path is to the page itself. + + For experiments with learning units, the handlebar further sets up the second layer of tabs (nested tabs) for each learning unit. However, here it is assumed that the learning unit itself does not consist of any nested learning units, and hence the tab hierarchy is restricted to a maximum of two levels. To easily identify this second layer as being nested (belonging to another unit), the enclosing 'columns' div id is set to the learning unit's name/label followed by the phrase 'SubTabs'. + + We make use of separate divs for the lighthouse and mobile-friendliness reports. The same divs are used by each of the tabs and these are treated as a common area. + +2. CSS + + The CSS files help format and beautify the performance page. + + 1. 'css/main.css' + + We only make use of a single CSS file, 'main.css'. This file contains all the stylings applied to the various classes. + +3. JS + + The js files are where the main processing occurs, including the parsing of the HTML file setup by the handlebar templates to obtain the pages for which the reports are to be run, the actual report generation using the APIs, the population of the HTML file with the concerned data, etc. + + 1. 'js/main.js' + + This is the main js file where all the functionality is tied together. This file mainly involves the calling of the concerned functions and some basic logic to tie everything together. + + The 'clear' function is to clear the main common area where the data is populated. + + The 'colorClear' function removes the color formatting for all the tabs (both levels). + + The 'newReport' function resets the page to the initial conditions where all data and formatting is cleared from the HTML page, the runtime variables ('reports' and 'luColors'), and the local storage. After this is done, it also starts the generation of new reports for all the pages. + + The 'getDate' function mainly takes a timestamp as input and returns the formatted stamp in a readable form. + + The 'expiryCheck' function checks if the local storage timestamp is set or not. If not, it sets it to the current time and sets the validity duration to 2 hours. If it is already set, it checks if the timestamp is older than the set duration, in which case the storage is considered expired, is reset, and new reports are generated for all the pages. If it has not expired or has just been set, it populates the appropriate div with the timestamp. The timestamp mentioned is considered to be the report timestamp, i.e, the time of when the latest report was generated. + + The 'isElement' function checks if a given element is an HTML element or not. + + The 'changeActive' function is the function that is called whenever tabs are switched by adding it as the callback function for the 'click' event for all the tab divs. First, it removes the 'is-active' class from all the siblings of the newly selected tab and sets it for the new tab. Next, it checks if the previously selected tab was a learning unit tab (in the 1st layer) and not a parent of the new tab. If it satisfies these conditions, it removes the display for the 2nd layer of tabs for that learning unit. Next, it checks if the new tab is a task tab or a learning unit tab. For a task tab, it checks if the report is available and accordingly calls a function to populate the common area with the report. For a learning unit tab, it displays the second layer of tabs and also calls itself for the task tab that is supposed to be active in the 2nd layer. + + The 'populate' function calls the suitable functions for each report segment (lighthouse and GSC) to populate the common area with a given report. + + The 'reportGen' function generates the reports for all the pages 5 at a time (this restriction is due to the limitations of the APIs) by calling the appropriate functions to send the required HTTP requests and obtain the data. But first, it checks if a valid (non-expired) report is directly available in the local storage and only if it is not that it generates a new report for that task and updates the local storage with the new report. It then sets the color coding for the tab (also sets for the parent LU tab if the current task is in the 2nd layer, the parent LU color is set as per the task with the lowest score) and populates the common area with the report if the task tab is the currently active one. + + We call 'parse' upon loading the page directly to obtain the paths for all the tasks and LUs and then call 'reportGen'. We also set a 'click' event for the 'Refresh Report' button to generate a new report when clicked. + + 2. 'js/parse.js' + + It takes all the tabs as input and first resets each of their 'data-url' attributes to the absolute URL using the base URL of the performance page and the relative path given in the old value of the attribute. It returns two arrays, one with the URLs of all the task tabs and the second with the labels of all the LUs. It makes this distinction for each tab by checking if an element exists in the page with the id as the 'data-url' value + the phrase 'SubTabs'. + + 3. 'js/commonData.js' + + It contains all the common data to be shared across multiple files such as API keys, score descriptions, etc. + + 4. 'js/api/lighthouse.js' + + It generates the lighthouse report for a given link for different devices (mobile and desktop) by sending separate HTTP requests for each device with the required parameters (including the API key). It organizes the obtained results into an object with only the required scores and metrics. It also includes a link to generate the detailed report (including suggestions, etc). This link is a direct link to the lighthouse report viewer with various parameters (like device, page, and API key) set. + + 5. 'js/api/gsc.js' + + It sends a HTTP request to the Google Search Console (GSC) mobile-friendliness API with the required parameters (including API key) set appropriately. It checks if the returned status says 'MOBILE_FRIENDLY' or not. If not, then the API will also have returned some issues to fix, which are also included in the report. + + 6. 'js/populate/lighthouse.js' + + The 'genLink' function returns a HTML link element for the detailed report link passed to it. + + The 'drawCircle' function uses HTML canvas to render the dials used for the main lighthouse scores. + + The 'scoreDial' function handles all the main logic and formatting for each lighthouse score dial, including the filling of the dial with the score text, etc. + + The 'genTitle' function is responsible for the device titles 'Mobile' and 'Desktop' for the two lighthouse reports generated per page/task. + + The 'lighthousePopulate' function encapsulates the overall rendering of the entire lighthouse reports by generating the required divs and columns and calling the required functions to populate each of those with the required segments like the titles, dials, metric tables, etc. It loops through all the keys for each report and populates the corresponding data in the appropriate parts. + + 7. 'js/populate/gsc.js' + + The 'gscPopulate' function handles the entire rendering of the mobile-friendliness report. It sets the dropdown's/card's title to the status returned by the report and checks if the issues array has any entries and accordingly populates the droppable segment. It also adds the 'click' event listener for the dropdown/card so that the issues are displayed upon click. + + 8. 'js/util.js' + + This file consists of various functions that may need to be shared across files. + + The 'splitToChunks' function divides a given array into the given number of subarrays. We use this to divide the pages/tasks array (contains all the links for which reports are to be generated) into 5 arrays to loop through the 5 arrays simultaneously to generate reports 5 at a time. + + The 'setUpQuery' function is used to set up the link/API to which we send a HTTP request. It takes the API's base URL, the API key, and the various parameters and sets up the URL to which the request/query is to be sent. It is used for generating both reports (lighthouse and mobile-friendliness). + + The 'genCols' function returns a Bulma columns div appended as a child to the passed div/element. + + The 'genColumn' function returns a Bulma column div appended as a child to the passed div/element (usually appended to a Bulma columns div). + + The 'genText' function appends/adds a given text to a given element/div with the required text formatting. If the flag is set, then it also calls the required function to generate a tooltip for that particular text. + + The 'genToolTip' function handles the generation of a tooltip (hoverable text, usually to give an explanation for the given text) for a given text. + + The 'colorScheme' function returns the appropriate color code based on a given score. This is used for the color-coding of tabs and dials based on the lighthouse scores. + +## Note + +All the code and function calls related to the GSC mobile-friendliness API have been commented out for now as it was found to be inadequate as it runs only very basic tests which most experiments satisfy and misleads developers to believe the experiment is mobile-friendly even though it is not. Possible solutons include: + +1. Adding some tests (manually designed) in addition to the ones run by the API for a more rigorous and accurate result. +2. Using an alternatve tool instead of this API. +3. Changing the nomenclature to more accurately describe the test and to explain that this is only a very basic check and does not guarentee mobile-friendliness. diff --git a/plugins/tool-performance/config.json b/plugins/tool-performance/config.json new file mode 100644 index 0000000..647b269 --- /dev/null +++ b/plugins/tool-performance/config.json @@ -0,0 +1,11 @@ +{ + "jsFiles": [], + "cssFiles": [], + "divs": [], + "pages": [ + { + "targetPage": "", + "template": "" + } + ] +} diff --git a/plugins/tool-performance/css/main.css b/plugins/tool-performance/css/main.css new file mode 100644 index 0000000..a854771 --- /dev/null +++ b/plugins/tool-performance/css/main.css @@ -0,0 +1,120 @@ +.loader { + position: absolute; + left: 50%; + top: 50%; + z-index: 1; + width: 120px; + height: 120px; + margin: -76px 0 0 -76px; + border: 16px solid #f3f3f3; + border-radius: 50%; + border-top: 16px solid #3498db; + -webkit-animation: spin 2s linear infinite; + animation: spin 2s linear infinite; +} + +@-webkit-keyframes spin { + 0% { -webkit-transform: rotate(0deg); } + 100% { -webkit-transform: rotate(360deg); } +} + +@keyframes spin { + 0% { transform: rotate(0deg); } + 100% { transform: rotate(360deg); } +} + +.red { + color: red; +} + +.orange { + color: orange; +} + +.green { + color: green; +} + +.lined { + border-style: solid; + border-width: 2px; + border-color: #bbb; +} + +.no-show { + display: none; +} + +.legend { + list-style: none; + display: inline; +} + +.legend-common::before { + content: "• "; + font-size: 200%; + vertical-align: middle; +} + +.legend-red::before { + color: red; +} + +.legend-orange::before { + color: orange; +} + +.legend-green::before { + color: green; +} + +.tool-tip { + position: relative; + cursor: pointer; +} + +.tooltip-text { + visibility: hidden; + width: 200px; + background-color: black; + color: #fff; + text-align: center; + border-radius: 6px; + padding: 5px 0; + + /* Position the tooltip */ + position: absolute; + z-index: 1; + bottom: 100%; + left: 50%; + margin-left: -60px; /* Use half of the width (120/2 = 60), to center the tooltip */ +} + +.tool-tip:hover .tooltip-text { + visibility: visible; +} + +.link { + text-decoration: underline; +} + +.time-stamp { + color: #2c99ce; +} + +.card-header { + background-color: #ffffff; + color: green; + border: 1px solid #bbbbbb; +} + +.card-header:hover { + cursor: pointer; + background-color: #ffffc2; +} + +.issue { + background-color: #ffffff; + color: red; + border: 1px solid #bbbbbb; +} diff --git a/plugins/tool-performance/handlebars/performance-report.handlebars b/plugins/tool-performance/handlebars/performance-report.handlebars new file mode 100644 index 0000000..37371e1 --- /dev/null +++ b/plugins/tool-performance/handlebars/performance-report.handlebars @@ -0,0 +1,120 @@ +<!DOCTYPE html> +<html lang="en"> + <head> + {{> meta }} + {{> commons }} + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css"> + <link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/virtual-labs/virtual-style@0.0.6-b/css/style.min.css"> + <link rel="stylesheet" href="{{this.cssModule}}"> + </head> + + <body> + <div> + <div class="columns is-mobile is-centered is-vcentered"> + <div class="column is-2"> + <a href="http://vlab.co.in" class="navbar-brand"> + <img src="{{this.assets_path}}/assets/images/vlabs-color-small-moe.jpg" alt="vlabs logo" class="vlabs-logo"> + </a> + </div> + <div class="column is-8 has-text-centered"> + <div class="title is-2"> + {{{this.experiment_name}}} + </div> + </div> + <div class="column is-2"> + </div> + </div> + </div> + + <div id="loader" class="loader"> + </div> + + <div class="columns is-mobile is-centered is-flex"> + <div class="column has-text-centered"> + <div class="title">Pagewise Performance Summary</div> + </div> + </div> + + <div class="columns is-mobile is-centered is-vcentered is-flex"> + <div class="column has-text-centered is-3 is-size-4 time-stamp" id="timeStamp"> + </div> + <div class="column has-text-centered is-6"> + <button class="v-button" id="newReport">Refresh Report</button> + </div> + <div class="column has-text-centered is-3"> + <ul class="legend is-flex if-flex-wrap is-justify-content-space-between"> + <li class="legend-common legend-red is-size-5">Critical</li> + <li class="legend-common legend-orange is-size-5">Needs Work</li> + <li class="legend-common legend-green is-size-5">Good</li> + </ul> + </div> + </div> + + <div class="columns is-mobile is-centered"> + <div class="column has-text-centered"> + <div class="v-tabs"> + <ul> + {{#each units}} + <li {{#if this.units}} data-url="{{this.label}}" {{/if}} {{#unless this.units}} data-url="{{this.target}}" {{/unless}} {{#if this.isCurrentItem}} class="is-active" {{/if}}> + <a> + <span class="is-size-5">{{this.label}}</span> + </a> + </li> + {{/each}} + </ul> + </div> + </div> + </div> + + {{#each units}} + {{#if this.units}} + <div class="columns is-mobile is-centered no-show" id="{{this.label}}SubTabs"> + <div class="column has-text-centered"> + <div class="v-tabs"> + <ul> + {{#each this.units}} + <li data-url="{{this.target}}" {{#if this.isCurrentItem}} class="is-active" {{/if}}> + <a> + <span class="is-size-5">{{this.label}}</span> + </a> + </li> + {{/each}} + </ul> + </div> + </div> + </div> + {{/if}} + {{/each}} + + <!--<div class="columns is-mobile is-centered" id="gsc">--> + <!--<div class="column has-text-centered" id="gscRes">--> + <!--<div class="card is-fullwidth">--> + <!--<header class="card-header card-toggle is-flex is-justify-content-space-between" id="card-toggle">--> + <!--<a class="card-header-title" id="gscStatus"></a>--> + <!--<a class="card-header-icon icon" id="gscIcon">--> + <!--<i class="fa fa-angle-down"></i>--> + <!--</a>--> + <!--</header>--> + <!--<div class="card-content is-hidden">--> + <!--<div class="content" id="gscIssues">--> + <!--</div>--> + <!--</div>--> + <!--</div>--> + <!--</div>--> + <!--</div>--> + + <div class="columns is-centered" id="lighthouse"> + <div class="column has-text-centered lined" id="mobile"> + </div> + <div class="column has-text-centered lined" id="desktop"> + </div> + </div> + + <div class="is-size-5"> + <b>*</b>NOTE: The scores may slightly vary between the detailed report and the given summary due to the use of different APIs for each. <a href='https://www.debugbear.com/blog/why-is-my-lighthouse-score-different-from-pagespeed-insights' target='_blank'>Learn more</a>. + </div> + + <script src="https://cdnjs.cloudflare.com/ajax/libs/axios/0.21.1/axios.min.js" integrity="sha512-bZS47S7sPOxkjU/4Bt0zrhEtWx0y0CRkhEp8IckzK+ltifIIE9EMIMTuT/mEzoIMewUINruDBIR/jJnbguonqQ==" crossorigin="anonymous" referrerpolicy="no-referrer"></script> + <script type="module" src="{{this.jsModule}}"></script> + </body> +</html> diff --git a/plugins/tool-performance/index.html b/plugins/tool-performance/index.html new file mode 100644 index 0000000..2d1f456 --- /dev/null +++ b/plugins/tool-performance/index.html @@ -0,0 +1,16 @@ +<!DOCTYPE html> +<html> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + <link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/virtual-labs/virtual-style@0.0.6-b/css/style.min.css"> + </head> + + <body class="page"> + <div class="columns is-mobile is-centered is-flex"> + <div class="column has-text-centered"> + <a href='./performance.html'>Performance</a> + </div> + </div> + </body> +</html> diff --git a/plugins/tool-performance/js/api/gsc.js b/plugins/tool-performance/js/api/gsc.js new file mode 100644 index 0000000..65a9b4c --- /dev/null +++ b/plugins/tool-performance/js/api/gsc.js @@ -0,0 +1,20 @@ +import * as util from '../util.js'; + +export async function gscApi(link, api) { + const parameters = { key: api.key }, url = util.setUpQuery(link, api.url, parameters), result = {}; + + const response = await axios.post(url, { + "url": link, + "requestScreenshot": false + }); + + const json = response.data; + result['Status'] = json['mobileFriendliness']; + result['Issues'] = []; + + if (json.mobileFriendlyIssues) { + result['Issues'] = json['mobileFriendlyIssues']; + } + + return {...result}; +}; diff --git a/plugins/tool-performance/js/api/lighthouse.js b/plugins/tool-performance/js/api/lighthouse.js new file mode 100644 index 0000000..21e6479 --- /dev/null +++ b/plugins/tool-performance/js/api/lighthouse.js @@ -0,0 +1,48 @@ +import * as util from '../util.js'; + +function detailedLink(url, strategy) { + return 'https://googlechrome.github.io/lighthouse/viewer/?psiurl=' + url + '&strategy=' + strategy; +} + +export async function lighthouseApi(link, api) { + const strategy = ['mobile', 'desktop'], pageData = {}; + + const proms = strategy.map(async (val, ind) => { + const parameters = { + url: encodeURIComponent(link), + key: api.key, + category: ['performance', 'accessibility', 'best-practices', 'seo'/*, 'pwa'*/], + strategy: val + }, url = util.setUpQuery(link, api.url, parameters); + + + const response = await axios.get(url); + const json = response.data; + + //const cruxMetrics = { + //"First Contentful Paint": json.loadingExperience.metrics.FIRST_CONTENTFUL_PAINT_MS.category, + //"First Input Delay": json.loadingExperience.metrics.FIRST_INPUT_DELAY_MS.category + //}; + + const lighthouse = json.lighthouseResult; + const metrics = { + 'Time To Interactive': lighthouse.audits['interactive'].displayValue, + 'Speed Index': lighthouse.audits['speed-index'].displayValue, + 'First Contentful Paint': lighthouse.audits['first-contentful-paint'].displayValue, + 'Total Blocking Time': lighthouse.audits['total-blocking-time'].displayValue, + 'Largest Contentful Paint': lighthouse.audits['largest-contentful-paint'].displayValue, + 'Cumulative Layout Shift': lighthouse.audits['cumulative-layout-shift'].displayValue, + }; + + metrics['Scores'] = {}; + Object.keys(lighthouse.categories).forEach(function(category, index) { + metrics['Scores'][category] = lighthouse.categories[category].score * 100; + }); + + metrics['Detailed Report'] = detailedLink(link, val); + pageData[val] = metrics; + }); + + await Promise.all(proms); + return {...pageData}; +}; diff --git a/plugins/tool-performance/js/commonData.js b/plugins/tool-performance/js/commonData.js new file mode 100644 index 0000000..adbcc8b --- /dev/null +++ b/plugins/tool-performance/js/commonData.js @@ -0,0 +1,30 @@ +export const commonData = { + "api": { + "lighthouse": { + "url": "https://www.googleapis.com/pagespeedonline/v5/runPagespeed", + "key": "AIzaSyAVkdhwABn964MsgQmYvLF7MQsASFNSEQ8", + }, + "gsc": { + "url": "https://searchconsole.googleapis.com/v1/urlTestingTools/mobileFriendlyTest:run", + "key": "AIzaSyBJ5sSM3HpctL3mQyxibLr6ceYQHlPL7oc", + }, + }, + "scoreMap": { + "performance": "Performance", + "accessibility": "Accessibility", + "best-practices": "Best Practices", + "seo": "SEO", + }, + "descriptions": { + "performance": "Performance is the speed at which a website loads. <a href='https://web.dev/performance-scoring/?utm_source=lighthouse&utm_medium=lr' target='_blank'>Learn more</a>.", + "accessibility": "These checks highlight opportunities to <a href='https://developers.google.com/web/fundamentals/accessibility?utm_source=lighthouse&utm_medium=lr' target='_blank'>improve the accessibility of your web app</a>. A site is said to be accessible if the site's content is available and its functionality can be operated by literally anyone.", + "best-practices": "Best Practices is a list of audits that check common mistakes in web development. <a href='https://web.dev/lighthouse-best-practices/' target='_blank'>Learn more</a>.", + "seo": "It stands for Search Engine Optimization. These checks ensure that your page is optimized for search engine results ranking. <a href='https://support.google.com/webmasters/answer/35769' target='_blank'>Learn more</a>.", + "First Contentful Paint": "First Contentful Paint marks the time at which the first text or image is painted. <a href='https://web.dev/first-contentful-paint/?utm_source=lighthouse&utm_medium=lr' target='_blank'>Learn more</a>.", + "Speed Index": "Speed Index shows how quickly the contents of a page are visibly populated. <a href='https://web.dev/speed-index/?utm_source=lighthouse&utm_medium=lr' target='_blank'>Learn more</a>.", + "Largest Contentful Paint": "Largest Contentful Paint marks the time at which the largest text or image is painted. <a href='https://web.dev/lighthouse-largest-contentful-paint/?utm_source=lighthouse&utm_medium=lr' target='_blank'>Learn more</a>", + "Time To Interactive": "Time to interactive is the amount of time it takes for the page to become fully interactive. <a href='https://web.dev/interactive/?utm_source=lighthouse&utm_medium=lr' target='_blank'>Learn more</a>.", + "Total Blocking Time": "Sum of all time periods between FCP and Time to Interactive, when task length exceeds 50ms, expressed in milliseconds. <a href='https://web.dev/lighthouse-total-blocking-time/?utm_source=lighthouse&utm_medium=lr' target='_blank'>Learn more</a>.", + "Cumulative Layout Shift": "Cumulative Layout Shift measures the movement of visible elements within the viewport. <a href='https://web.dev/cls/?utm_source=lighthouse&utm_medium=lr' target='_blank'>Learn more</a>.", + }, +}; diff --git a/plugins/tool-performance/js/main.js b/plugins/tool-performance/js/main.js new file mode 100644 index 0000000..afe43d9 --- /dev/null +++ b/plugins/tool-performance/js/main.js @@ -0,0 +1,201 @@ +'use strict'; + +import * as util from './util.js'; +import {commonData} from './commonData.js'; +import {parse} from './parse.js'; +import {lighthouseApi} from './api/lighthouse.js'; +//import {gscApi} from './api/gsc.js'; +import {lighthousePopulate} from './populate/lighthouse.js'; +//import {gscPopulate} from './populate/gsc.js'; + +document.addEventListener('DOMContentLoaded', async function() { + + function clear() { + document.getElementById('mobile').innerHTML = ''; + document.getElementById('desktop').innerHTML = ''; + //document.getElementById('gscStatus').innerHTML = ''; + //document.getElementById('gscIssues').innerHTML = ''; + }; + + function colorClear(elemIds) { + elemIds.forEach((elemId) => { + const element = document.querySelector(`[data-url='${elemId}']`); + element.children[0].children[0].classList.remove(...colors); + }); + }; + + function newReport() { + clear(); + reports = {}; + luColors = {}; + colorClear(pages); + colorClear(LUs); + storage.clear(); + document.getElementById('loader').style.display = 'block'; + reportGen(); + }; + + function getDate(ts) + { + const date = new Date(ts), days = ["Sun", "Mon", "Tue", "Wed", "Thurs", "Fri", "Sat"]; + const dateStrg = `${days[date.getDay()]}, ${date.getDate()}/${('0' + String(date.getMonth())).slice(-2)}/${date.getFullYear()} ${('0' + String(date.getHours())).slice(-2)}:${('0' + String(date.getMinutes())).slice(-2)}:${('0' + String(date.getSeconds())).slice(-2)}`; + return dateStrg; + }; + + function expiryCheck(storage) { + let timeStamp = JSON.parse(storage.getItem('timeStamp')), duration = JSON.parse(storage.getItem('duration')); + if (timeStamp === null) { + timeStamp = Date.now(); + duration = 2 * 60 * 60 * 1000; + storage.setItem('timeStamp', JSON.stringify(timeStamp)); + storage.setItem('duration', JSON.stringify(duration)); + } + + else if (Date.now() > timeStamp + duration) { + newReport(); + return true; + } + + document.getElementById("timeStamp").innerHTML = getDate(timeStamp); + return false; + }; + + function isElement(element) { + return element instanceof Element || element instanceof HTMLDocument; + }; + + async function changeActive(elem) { + const siblingTabs = elem.parentNode.children, subtabs = document.getElementById(elem.getAttribute('data-url') + 'SubTabs'); + Object.keys(siblingTabs).forEach((key, i) => { + siblingTabs[key].classList.remove('is-active'); + }); + + elem.classList.add('is-active'); + if(isElement(active) && !active.contains(elem)) + { + active.classList.add('no-show'); + active.style.display = 'none'; + active = {}; + } + + if(subtabs === null) + { + if(!(elem.getAttribute('data-url') in reports)) + { + document.getElementById('loader').style.display = 'block'; + clear(); + } + + else + { + document.getElementById('loader').style.display = 'none'; + populate(elem.getAttribute('data-url'), reports[elem.getAttribute('data-url')]); + } + } + + else + { + subtabs.classList.remove('no-show'); + subtabs.style.display = 'block'; + active = subtabs; + + const currTabs = document.getElementsByClassName('is-active'); + Object.keys(currTabs).forEach((key, ind) => { + if(subtabs.contains(currTabs[key])) + { + changeActive(currTabs[key]); + } + }); + } + }; + + function populate(link, report) { + lighthousePopulate(link, report['lighthouse']); + //gscPopulate(link, report['gsc']); + }; + + const storage = window.localStorage, tabs = document.getElementsByClassName('v-tabs'), colors = ['red', 'orange', 'green']; + let active = {}, luColors = {}; + const [pages, LUs] = parse(tabs); + + const subArrs = util.splitToChunks([...pages], 5); + let reports = {}; + + function reportGen() { + const promises = subArrs.map(async (pages, i) => { + for(let i = 0; i < pages.length; i += 1) + { + const report = JSON.parse(storage.getItem(pages[i])); + + if(expiryCheck(storage)) + { + break; + } + + if(report !== null && /*Object.keys(report.gsc).length &&*/ Object.keys(report.lighthouse).length) + { + reports[pages[i]] = {...report}; + } + + else + { + const lighthouseRes = await lighthouseApi(pages[i], commonData.api['lighthouse']); + //gscRes = await gscApi(pages[i], commonData.api['gsc']); + reports[pages[i]] = { + lighthouse: {...lighthouseRes}, + //gsc: {...gscRes} + }; + + storage.setItem(pages[i], JSON.stringify(reports[pages[i]])); + } + + const mobPerfScore = reports[pages[i]]['lighthouse']['mobile']['Scores']['performance'], tab = document.querySelector(`[data-url='${pages[i]}']`), currColor = util.colorScheme(mobPerfScore); + let parentLU = null; + + LUs.forEach((lu, ix) => { + const luElem = document.getElementById(lu + 'SubTabs'); + if(luElem.contains(tab)) + { + parentLU = document.querySelector(`[data-url='${lu}']`); + const parentTabText = parentLU.children[0].children[0]; + if(!(lu in luColors)) + { + luColors[lu] = currColor; + parentTabText.classList.add(colors[currColor]); + } + + else if(luColors[lu] > currColor) + { + parentTabText.classList.remove(colors[luColors[lu]]); + luColors[lu] = currColor; + parentTabText.classList.add(colors[currColor]); + } + } + }); + + tab.children[0].children[0].classList.add(colors[currColor]); + + if(tab.classList.contains('is-active')) + { + if(parentLU === null || parentLU.classList.contains('is-active')) + { + document.getElementById('loader').style.display = 'none'; + populate(pages[i], reports[pages[i]]); + } + } + } + }); + + Promise.all(promises); + }; + + reportGen(); + Object.keys(tabs).forEach((listIdx, ix) => { + const tabList = tabs[listIdx].children[0].children; + Object.keys(tabList).forEach((tab, ix) => { + tabList[tab].addEventListener("click", (event) => changeActive(event.currentTarget)); + }); + }); + + document.getElementById('newReport').addEventListener("click", (event) => newReport()); +}); diff --git a/plugins/tool-performance/js/parse.js b/plugins/tool-performance/js/parse.js new file mode 100644 index 0000000..c199bfd --- /dev/null +++ b/plugins/tool-performance/js/parse.js @@ -0,0 +1,32 @@ +export function parse(tabs) { + let pages = [], LUs = []; + const origin = window.location.origin, pathArray = window.location.pathname.split('/'); + let base_url = origin; + pathArray.forEach((part, ix) => { + if(ix !== pathArray.length - 1) + { + base_url += "/" + part; + } + }); + + //base_url = "https://virtual-labs.github.io/temp-exp-bubble-sort-iiith"; + Object.keys(tabs).forEach((listIdx, ix) => { + const tabList = tabs[listIdx].children[0].children; + Object.keys(tabList).forEach((tab, ix) => { + const subtabs = document.getElementById(tabList[tab].getAttribute('data-url') + 'SubTabs'); + if(subtabs === null) + { + tabList[tab].setAttribute('data-url', base_url + '/' + tabList[tab].getAttribute('data-url')); + pages.push(tabList[tab].getAttribute('data-url')); + } + + else + { + subtabs.style.display = 'none'; + LUs.push(tabList[tab].getAttribute('data-url')); + } + }); + }); + + return [pages, LUs]; +}; diff --git a/plugins/tool-performance/js/populate/gsc.js b/plugins/tool-performance/js/populate/gsc.js new file mode 100644 index 0000000..1d13da7 --- /dev/null +++ b/plugins/tool-performance/js/populate/gsc.js @@ -0,0 +1,35 @@ +import * as util from '../util.js'; + +export function gscPopulate(link, data) +{ + const statusElem = document.getElementById('gscStatus'); + statusElem.innerHTML = ''; + util.genText(statusElem, "Mobile Friendliness Status: " + data['Status'], "Mobile Friendliness Status: " + data['Status'].replace(/_/g, " ")); + + const issuesElem = document.getElementById('gscIssues'); + issuesElem.innerHTML = ''; + if(data['Issues'].length) + { + document.getElementById('gscIcon').style.display = 'inline-block'; + document.getElementById('card-toggle').style.color = 'red'; + data['Issues'].forEach((issue, idx) => { + const issueDiv = document.createElement("div"); + util.genText(issueDiv, issue, issue); + issueDiv.classList.add('issue'); + issuesElem.appendChild(issueDiv); + }); + } + + else + { + document.getElementById('gscIcon').style.display = 'none'; + document.getElementById('card-toggle').style.color = 'green'; + } + + const cardToggles = document.getElementsByClassName('card-toggle'); + Object.keys(cardToggles).forEach((key, ind) => { + cardToggles[ind].addEventListener('click', e => { + e.currentTarget.parentNode.children[1].classList.toggle('is-hidden'); + }); + }); +}; diff --git a/plugins/tool-performance/js/populate/lighthouse.js b/plugins/tool-performance/js/populate/lighthouse.js new file mode 100644 index 0000000..cc4621f --- /dev/null +++ b/plugins/tool-performance/js/populate/lighthouse.js @@ -0,0 +1,106 @@ +import {commonData} from '../commonData.js'; +import * as util from '../util.js'; + +function genLink(elem, link) +{ + const a = document.createElement('a'); + a.textContent = 'Detailed Report'; + a.href = link; + a.target = "_blank"; + a.classList.add('is-size-4', 'link'); + elem.appendChild(a); +}; + +function drawCircle(ctx, radius, color, percent) { + percent = Math.min(Math.max(0, percent || 1), 1); + ctx.beginPath(); + ctx.arc(0, 0, radius, 0, Math.PI * 2 * percent, false); + ctx.strokeStyle = color; + ctx.stroke(); +}; + +function scoreDial(segment, score) +{ + const canvas = document.createElement('canvas'), ctx = canvas.getContext('2d'); + const options = { + size: 100, + lineWidth: 5, + rotate: 0 + }; + + canvas.width = canvas.height = options.size; + ctx.translate(options.size / 2, options.size / 2); // change center + ctx.rotate((-1 / 2 + options.rotate / 180) * Math.PI); // rotate -90 deg + + const radius = (options.size - options.lineWidth) / 2; + ctx.lineCap = 'round'; + ctx.lineWidth = options.lineWidth; + const colors = ['red', 'orange', 'green']; + const color = colors[util.colorScheme(score)]; + + drawCircle(ctx, radius, '#efefef', 100 / 100); + drawCircle(ctx, radius, color, score / 100); + + ctx.rotate((1 / 2 + options.rotate / 180) * Math.PI); // rotate 90 deg to original config + ctx.font = "30px Arial"; + ctx.fillStyle = color; + ctx.fillText(score, -15, 10); + + segment.appendChild(canvas); +}; + +function genTitle(elem, title) { + const titleDiv = document.createElement("div"); + titleDiv.classList.add('subtitle', 'is-2'); + const text = document.createTextNode(title); + titleDiv.appendChild(text); + elem.appendChild(titleDiv); +}; + +export function lighthousePopulate(link, data) +{ + Object.keys(data).forEach((device, idx) => { + const segment = document.getElementById(device); + segment.innerHTML = ''; + + const titleCols = util.genColumnsContainer(segment), linkCols = util.genColumnsContainer(segment), dialsCols = util.genColumnsContainer(segment), metricCols = util.genColumnsContainer(segment); + const titleColumn = util.genColumn(titleCols), metricColumn = util.genColumn(metricCols), half = Math.floor((Object.keys(data[device]).length - 2) / 2), table = document.createElement('table'); + table.classList.add('table', 'is-bordered'); + metricColumn.appendChild(table); + + let ctr = 0, row = table.insertRow(); + genTitle(titleColumn, device[0].toUpperCase() + device.slice(1)); + + Object.keys(data[device]).reverse().forEach(function(metric, ind) { + if(metric === 'Scores') + { + Object.keys(data[device]['Scores']).forEach((key, ix) => { + const column = util.genColumn(dialsCols); + scoreDial(column, data[device]['Scores'][key]); + util.genText(column, key, commonData.scoreMap[key], true); + }); + } + + else if(metric === 'Detailed Report') + { + const column = util.genColumn(linkCols); + column.innerHTML = "<sup><b>*</b></sup>"; + genLink(column, data[device]['Detailed Report']); + } + + else + { + if(Object.keys(row.children).length === 4) + { + row = table.insertRow(); + } + + let cell = row.insertCell(); + util.genText(cell, metric, metric, true); + cell = row.insertCell(); + util.genText(cell, data[device][metric], data[device][metric]); + ctr += 1; + } + }); + }); +}; diff --git a/plugins/tool-performance/js/util.js b/plugins/tool-performance/js/util.js new file mode 100644 index 0000000..622a6e0 --- /dev/null +++ b/plugins/tool-performance/js/util.js @@ -0,0 +1,90 @@ +import {commonData} from './commonData.js'; + +export function splitToChunks(array, parts) { + let result = []; + for (let i = parts; i > 0; i--) { + result.push(array.splice(0, Math.ceil(array.length / i))); + } + return result; +}; + +export function setUpQuery(link, api, parameters) { + let query = `${api}?`; + Object.keys(parameters).forEach(function(key, i) { + if(Array.isArray(parameters[key])) + { + parameters[key].forEach(function(elem, idx) { + query += `${key}=${elem}&`; + }); + } + + else + { + query += `${key}=${parameters[key]}&`; + } + }); + + query = query.slice(0, -1); + return query; +}; + +export function genColumnsContainer(elem) { + const cols = document.createElement("div"); + cols.classList.add('columns', 'is-centered'); + elem.appendChild(cols); + return cols; +}; + +export function genColumn(elem) { + const column = document.createElement("div"); + column.classList.add('column', 'has-text-centered'); + elem.appendChild(column); + return column; +}; + +export function genText(elem, metric, content, toolTipFlag) { + const textElem = document.createElement("div"); + textElem.classList.add('is-size-5'); + const text = content[0].toUpperCase() + content.slice(1); + textElem.innerHTML = text; + + if(toolTipFlag) + { + const infoIcon = document.createElement("i"); + infoIcon.classList.add('fa', 'fa-info-circle'); + genToolTip(infoIcon, commonData.descriptions[metric]); + textElem.innerHTML += " "; + textElem.appendChild(infoIcon); + } + elem.appendChild(textElem); +}; + + +export function genToolTip(elem, text) { + elem.classList.add('tool-tip'); + const desc = document.createElement("span"); + desc.classList.add('tooltip-text'); + desc.innerHTML = text; + elem.appendChild(desc); +}; + +export function colorScheme(score) { + const colors = { + "red": 0, + "orange": 1, + "green": 2, + }; + let color = colors.green; + + if(score < 50) + { + color = colors.red; + } + + else if(score < 90) + { + color = colors.orange; + } + + return color; +}; diff --git a/plugins/tool-validation/.gitignore b/plugins/tool-validation/.gitignore new file mode 100644 index 0000000..b512c09 --- /dev/null +++ b/plugins/tool-validation/.gitignore @@ -0,0 +1 @@ +node_modules \ No newline at end of file diff --git a/plugins/tool-validation/README.md b/plugins/tool-validation/README.md new file mode 100644 index 0000000..2af3698 --- /dev/null +++ b/plugins/tool-validation/README.md @@ -0,0 +1,48 @@ +# Build-Validation + +This repository contains the code that validates code after the experiments are build. + +## Plugin Information + +1. This repository is acting like a plugin for the repository ph3-lab-mgmt. +2. It is integrated with the build process for that you could check the `validation-plugin-Aditya` branch. +3. For integrating this plugin a new pluginscope by the name `POSTBUILD` is created as well a new plugin function `processPostBuildPlugins` in plugin.js has been created. +4. The below function is called after experiment builds in experiment.js. +5. The information of this plugin is in file `plugin-config.testing.js` + +## [link_validation.js](https://github.com/virtual-labs/build-validation/blob/main/link_validation.js) + +This file has 2 functions: +1. `findFiles` : This function recursively finds all the html files in the directory. Since this repository is a plugin for the main repository the path to directory is hard-coded as `let testFolder = '../../../build/';`. + +2. `checkLinks`: This function checks if the links in the html files contains only valid links, i.e. the link must start with `https:` not with `http:`. For this purpose JSDOM is used. + +## How to Run it on a Local Machine - For Developers + +1. For running this you must have a node.js and npm installed on your local machine. +2. Preferred version of node.js is 16.14.2 and npm is 8.5.0. +3. Run the following command: +``` +npm install +node node link_validation.js +``` + +# Eslint configuration + +The repository [ph3-lab-mgmt](https://github.com/virtual-labs/ph3-lab-mgmt) has an eslint configuration file [.eslintrc.js](https://github.com/virtual-labs/ph3-lab-mgmt/blob/master/.eslintrc.js). Click here for eslint documentation: [eslint.org](https://eslint.org/docs/latest/user-guide/configuring/). + +Eslint is configured with the eslint recommended, with plugin as only warning. The warnings can be changed to error by adding it in the rules section of eslintrc.js. + +## How to Run it on a Local Machine - For Developers + +The command to run eslint is `npx eslint -c ./.eslintrc.js ../experiment` which is also added in the [package.json](https://github.com/virtual-labs/ph3-lab-mgmt/blob/master/package.json). + +## Fixing Issues using ESLINT +Add the relevant issue is the .eslintrc.js file and run `npx eslint -c ./.eslintrc.js ../experiment --fix`. +For example: +``` +"rules": { + "semi": [2, "always"] +}, +``` +Then run the command `npx eslint -c ./.eslintrc.js ../experiment --fix` it will add semi-colon at end of those line where semi-colon is not present. diff --git a/plugins/tool-validation/config.json b/plugins/tool-validation/config.json new file mode 100644 index 0000000..647b269 --- /dev/null +++ b/plugins/tool-validation/config.json @@ -0,0 +1,11 @@ +{ + "jsFiles": [], + "cssFiles": [], + "divs": [], + "pages": [ + { + "targetPage": "", + "template": "" + } + ] +} diff --git a/plugins/tool-validation/css/main.css b/plugins/tool-validation/css/main.css new file mode 100644 index 0000000..0a489e8 --- /dev/null +++ b/plugins/tool-validation/css/main.css @@ -0,0 +1,293 @@ +.loader { + position: absolute; + left: 50%; + top: 50%; + z-index: 1; + width: 120px; + height: 120px; + margin: -76px 0 0 -76px; + border: 16px solid #f3f3f3; + border-radius: 50%; + border-top: 16px solid #3498db; + -webkit-animation: spin 2s linear infinite; + animation: spin 2s linear infinite; +} + +@-webkit-keyframes spin { + 0% { + -webkit-transform: rotate(0deg); + } + 100% { + -webkit-transform: rotate(360deg); + } +} + +@keyframes spin { + 0% { + transform: rotate(0deg); + } + 100% { + transform: rotate(360deg); + } +} + +.red { + color: red; +} + +.orange { + color: orange; +} + +.green { + color: green; +} + +.lined { + border-style: solid; + border-width: 2px; + border-color: #bbb; +} + +.no-show { + display: none; +} + +.legend { + list-style: none; + display: inline; +} + +.legend-common::before { + content: "• "; + font-size: 200%; + vertical-align: middle; +} + +.legend-red::before { + color: red; +} + +.legend-orange::before { + color: orange; +} + +.legend-green::before { + color: green; +} + +.tool-tip { + position: relative; + cursor: pointer; +} + +.tooltip-text { + visibility: hidden; + width: 200px; + background-color: black; + color: #fff; + text-align: center; + border-radius: 6px; + padding: 5px 0; + + /* Position the tooltip */ + position: absolute; + z-index: 1; + bottom: 100%; + left: 50%; + margin-left: -60px; /* Use half of the width (120/2 = 60), to center the tooltip */ +} + +.tool-tip:hover .tooltip-text { + visibility: visible; +} + +.link { + text-decoration: underline; +} + +.time-stamp { + color: #2c99ce; +} + +.card-header { + background-color: #ffffff; + color: green; + border: 1px solid #bbbbbb; +} + +.card-header:hover { + cursor: pointer; + background-color: #ffffc2; +} + +.issue { + background-color: #ffffff; + color: red; + border: 1px solid #bbbbbb; +} + +/* Card */ + +.card { + background: #fff; + border-radius: 2px; + display: inline-block; + width: 98%; + margin: 1rem; + padding: 2rem; + position: relative; + box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23); +} + +.card-title { + font-size: 1.5rem; + padding: 1rem; + font-weight: 700; + color: black; +} + +.tabs { + overflow: hidden; + box-shadow: 0 4px 4px -2px rgba(0, 0, 0, 0.5); + border-radius: 8px; + width: 95%; + margin: auto; +} +.tab { + width: 100%; + color: white; + overflow: hidden; + margin-bottom: -8px; +} +.tab-label { + display: flex; + justify-content: space-between; + padding: 1em; + background: #2c99ce; + font-weight: bold; + cursor: pointer; + /* Icon */ +} +.tab-label:hover { + background: #22759f; +} +.tab-label::after { + content: "\276F"; + width: 1em; + height: 1em; + text-align: center; + transition: all 0.35s; +} +.tab-content { + max-height: 0; + padding: 0 1em; + color: #808080; + background: white; + transition: all 0.35s; +} +.tab-close { + display: flex; + justify-content: flex-end; + padding: 1em; + font-size: 0.75em; + background: #2c99ce; + cursor: pointer; +} + +.cb { + position: absolute; + opacity: 0; + z-index: -1; +} + +.tab-close:hover { + background: #22759f; +} +input:checked + .tab-label { + background: #22759f; +} +input:checked + .tab-label::after { + transform: rotate(90deg); +} +input:checked ~ .tab-content { + max-height: 80vh; + padding: 1em 2em 2em 2em; + overflow-y: scroll; +} + +.data-table { + width: 100%; + table-layout: fixed; +} + +.table-cell { + padding: 5px 0px; + vertical-align: middle; + text-align: left; +} + +.eslint-message { + overflow: hidden; + text-overflow: ellipsis; + margin-right: 10%; +} + +.table-row { + border-bottom: 1px solid #e0e0e0; +} + +.status-chip { + padding: 5px 10px; + border-radius: 50px; + display: inline-flex; + width: 4.5rem; + justify-content: center; + align-items: center; +} + +.background-warning { + background: #f0ad4e; + color: #ffffff; +} + +.background-error { + background: #d9534f; + color: #ffffff; +} + +/* panel */ +.panel { + background: #fff; + border-radius: 2px; + display: inline-block; + width: 100%; + margin: 1rem; + padding: 2rem; + position: relative; + box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23); +} + +.panel-label { + font-size: 1.3rem; + font-weight: bold; + margin-top: 1rem; +} + + +.collapse-icon { + /* top-right */ + position: absolute; + top: 0; + right: 0; + padding: 3rem 6rem 0 0; + cursor: pointer; +} + +.small-btn { + margin-top: 1rem; + height: 2rem; + font-size: 1rem; + padding: 0.2rem 0.5rem; + border-radius: 10px; +} \ No newline at end of file diff --git a/plugins/tool-validation/handlebars/validator-report.handlebars b/plugins/tool-validation/handlebars/validator-report.handlebars new file mode 100644 index 0000000..fb9f16a --- /dev/null +++ b/plugins/tool-validation/handlebars/validator-report.handlebars @@ -0,0 +1,125 @@ +<!DOCTYPE html> +<html lang="en"> + <head> + {{> meta }} + {{> commons }} + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css"> + <link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/virtual-labs/virtual-style@0.0.6-b/css/style.min.css"> + <link rel="stylesheet" href="{{this.cssModule}}"> + </head> + + <body> + <div> + <div class="columns is-mobile is-centered is-vcentered"> + <div class="column is-2"> + <a href="http://vlab.co.in" class="navbar-brand"> + <img src="{{this.assets_path}}/assets/images/vlabs-color-small-moe.jpg" alt="vlabs logo" class="vlabs-logo"> + </a> + </div> + <div class="column is-8 has-text-centered"> + <div class="title is-2"> + {{{this.experiment_name}}} + </div> + </div> + <div class="column is-2"> + </div> + </div> + </div> + + {{!-- <div id="loader" class="loader"> + </div> --}} + + <div class="columns is-mobile is-centered is-flex"> + <div class="column has-text-centered"> + <div class="title">Validator</div> + </div> + </div> + + + <div class="columns is-mobile is-centered is-flex"> + <div class="column is-4-desktop is-3-mobile is-3-tablet has-text-centered"> + <div class="panel"> + <label for="checkbox-eslint" class="v-checkbox"> + <input type="checkbox" id="checkbox-eslint" class="v-checkbox-input" checked onclick="toggleEslint()"> + ESLint + </label> + + <label for="checkbox-https" class="v-checkbox"> + <input type="checkbox" id="checkbox-https" class="v-checkbox-input" checked onclick="toggleHttps()"> + HTTPS + </label> + + <label for="checkbox-descriptor" class="v-checkbox"> + <input type="checkbox" id="checkbox-descriptor" class="v-checkbox-input" checked onclick="toggleDescriptor()"> + Descriptor + </label> + + <label for="checkbox-assesment" class="v-checkbox"> + <input type="checkbox" id="checkbox-assesment" class="v-checkbox-input" checked onclick="toggleAssesment()"> + Assesment + </label> + + + <div class="panel-label"> + Severity + </div> + <label for="checkbox-warning" class="v-checkbox"> + <input type="checkbox" id="checkbox-warning" class="v-checkbox-input" checked onclick="toggleWarning()"> + Warning + </label> + + <label for="checkbox-error" class="v-checkbox"> + <input type="checkbox" id="checkbox-error" class="v-checkbox-input" checked onclick="toggleError()"> + Error + </label> + + + <button class="v-button small-btn" onclick="collapseAll()">Collapse All</button> + </div> + </div> + <div class="column is-8-desktop is-9-mobile is-9-tablet has-text-centered"> + <div id="eslint" class="card"> + <div class="card-title"> + ESLint + </div> + <div id="eslint-collapse-icon" class="collapse-icon" onclick="collapseEslint()"> + <i class="fa fa-chevron-down"></i> + </div> + <div id="output-eslint" class="card-content"> + </div> + </div> + <div id="https" class="card"> + <div class="card-title"> + HTTPS + </div> + <div id="https-collapse-icon" class="collapse-icon" onclick="collapseHttps()"> + <i class="fa fa-chevron-down"></i> + </div> + <div id="output-https" class="card-content"> + </div> + </div> + <div id="descriptor" class="card"> + <div class="card-title"> + Experiment Descriptor + </div> + <div id="https-collapse-icon" class="collapse-icon" onclick="collapseDescriptor()"> + <i class="fa fa-chevron-down"></i> + </div> + <div id="output-descriptor" class="card-content"> + </div> + </div> + <div id="assesment" class="card"> + <div class="card-title"> + Assesment Task + </div> + <div id="https-collapse-icon" class="collapse-icon" onclick="collapseAssesment()"> + <i class="fa fa-chevron-down"></i> + </div> + <div id="output-assesment" class="card-content"> + </div> + </div> + </div> + </div> + <script type="module" src="{{this.jsModule}}"></script> + </body> +</html> diff --git a/plugins/tool-validation/index.html b/plugins/tool-validation/index.html new file mode 100644 index 0000000..7f73631 --- /dev/null +++ b/plugins/tool-validation/index.html @@ -0,0 +1,16 @@ +<!DOCTYPE html> +<html> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + <link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/virtual-labs/virtual-style@0.0.6-b/css/style.min.css"> + </head> + + <body class="page"> + <div class="columns is-mobile is-centered is-flex"> + <div class="column has-text-centered"> + <a href='./validator.html'>Validator</a> + </div> + </div> + </body> +</html> diff --git a/plugins/tool-validation/js/link_validation.js b/plugins/tool-validation/js/link_validation.js new file mode 100644 index 0000000..13ca772 --- /dev/null +++ b/plugins/tool-validation/js/link_validation.js @@ -0,0 +1,52 @@ +let testFolder = process.argv[2]; +const fs = require('fs'); +// const got = require('got'); +const { JSDOM } = require("jsdom"); +const filename = testFolder + 'links.log'; + +function appendToFile(filename,data) +{ + fs.appendFile(filename, data, function (err) { + if (err) throw err; + }); +} + +function main() { + findFiles(testFolder); +} + +main(); + +function checkLinks(file) { + const html = fs.readFileSync(file); + const dom = new JSDOM(html); + const { document } = dom.window; + const shortenedFile = file.replace(testFolder, ''); + + const links = document.querySelectorAll('a'); + links.forEach(link => { + const href = link.getAttribute('href'); + if (href !== null) { + if (href.startsWith('http://')) { + appendToFile(filename, shortenedFile + ' ' + href + '\n'); + } + } + }); +} + +function findFiles(folder) { + fs.readdir(folder, { withFileTypes: true }, (err, files) => { + if (err) { + console.log(err); + } + files.forEach(file => { + if (file.isDirectory()) { + findFiles(folder + file.name + "/"); + } else { + if (file.name.endsWith('.html')) { + checkLinks(folder + file.name); + } + } + }); + }); +} \ No newline at end of file diff --git a/plugins/tool-validation/js/main.js b/plugins/tool-validation/js/main.js new file mode 100644 index 0000000..0755f0d --- /dev/null +++ b/plugins/tool-validation/js/main.js @@ -0,0 +1,422 @@ +"use strict"; + +function display(text) { + let logs = text.split("\n"); + let output = ""; + logs.forEach((log) => { + output += `<p>${log}\n</p>`; + }); + document.getElementById("output").innerHTML = output; +} + +async function getLog(file, type) { + let x = await fetch(file); + let y = await x.text(); + let output = ""; + if (type === "eslint") { + output = generateTabs(handleDataEslint(y), type); + document.getElementById("output-eslint").innerHTML = output; + } else if (type === "https") { + output = generateTabs(handleDataHttps(y), type); + document.getElementById("output-https").innerHTML = output; + } else if (type === "descriptor") { + output = generateTabs(handleDataDescriptor(y), type); + document.getElementById("output-descriptor").innerHTML = output; + } else if (type === "assesment") { + output = generateTabs(handleAssesment(y), type); + document.getElementById("output-assesment").innerHTML = output; + } +} + +function handleAssesment(data){ + let logs = data.split("\n"); + let formatted_data = {}; + let currentKey = ""; + let totalFiles = 0; + let count = 0; + for (let i=0;i<logs.length;i++){ + if(logs[i].startsWith("=")){ + totalFiles++; + // key is everything after = + const key = getFilenameFromPath(logs[i].split("=")[1]); + if(key in formatted_data){ + continue; + } + else{ + formatted_data[key] = []; + } + currentKey = key; + // skip next 10 lines + i+=13; + } + else if(logs[i] === "Validated true"){ + // remove key from formatted_data + delete formatted_data[currentKey]; + continue; + // formatted_data[currentKey].push("Validated true"); + } + // else if logs[i] is not empty + else if(logs[i].length > 0){ + count++; + formatted_data[currentKey].push(logs[i]); + } + } + let stats = `Total Files: ${totalFiles} <br> + ✖ ${count} problems (0 errors, ${count} warnings)`; + formatted_data["FINAL_STATS"] = stats; + return formatted_data; +} + +function getFilenameFromPath(path) { + // get filename from path by splitting path by last occurence of / or \ + const filename = path.split(/[\\/]/).pop(); + return filename; +} + + +function handleDataEslint(data) { + let logs = data.split("\n"); + let formatted_data = {}; + let stats = ""; + let flag = false; + let last_key = ""; + for (let i = 0; i < logs.length; i++) { + if (flag == true) { + if (logs[i].startsWith(" ")) { + formatted_data[last_key].push(logs[i]); + } else { + flag = false; + } + } else { + if (logs[i].length > 0) { + if (logs[i].startsWith("✖")) { + stats = logs[i]; + continue; + } + const filename = getFilenameFromPath(logs[i]); + formatted_data[filename] = []; + last_key = filename; + flag = true; + } + } + } + formatted_data["FINAL_STATS"] = stats; + return formatted_data; +} + +function handleDataHttps(data) { + let logs = data.split("\n"); + let formatted_data = {}; + let count = 0; + for (let i = 0; i < logs.length; i++) { + if (logs[i].length == 0) continue; + let log = logs[i].split(" "); + const key = log[0]; + const value = log[1] || ""; + if (value !== "") { + count++; + } else { + continue; + } + if (key in formatted_data) { + formatted_data[key].push(value); + } else { + formatted_data[key] = [value]; + } + } + let stats = `Total Links: ${count} <br> + ✖ ${count} problems (0 errors, ${count} warnings)`; + + formatted_data["FINAL_STATS"] = stats; + // console.log(formatted_data); + return formatted_data; +} + +function handleDataDescriptor(data) { + let logs = data.split("\n"); + // remove first 6 lines and last 2 lines + logs = logs.slice(6, logs.length - 2); + let formatted_data = {}; + let count = 0; + for (let i = 0; i < logs.length; i++) { + // check if line starts with / + if (logs[i].startsWith("/")) { + count++; + // get filename + const head = logs[i].split(":")[0]; + let text = logs[i].split(":")[1]; + text = text.trim(); + const filename = head[i].split("/")[1]; + + // get index + let index = ""; + let path = head.split("/"); + for (let i = 0; i < path.length; i++) { + // if path[i] is a string of numbers + if (!isNaN(path[i])) { + if (index === "") { + index = path[i]; + } else { + index += `.${path[i]}`; + } + } + } + // add index to text + text = `${index}: ${text}`; + if (filename in formatted_data) { + formatted_data[filename].push(text); + } else { + formatted_data[filename] = [text]; + } + } else if (logs[i].startsWith("Json Error:")) { + if("base" in formatted_data) { + formatted_data["base"].push(`0: ${logs[i].split(":")[1].trim()}`); + } else { + formatted_data["base"] = [`0: ${logs[i].split(":")[1].trim()}`]; + } + count++; + } + } + let stats = `✖ ${count} problems (0 errors, ${count} warnings)`; + + formatted_data["FINAL_STATS"] = stats; + // console.log(formatted_data); + return formatted_data; +} + +function generateTab(filename, data, index, type) { + const tabulated_data = generateTable(data, type); + const tab = ` + <div class="tab"> + <input class="cb" type="checkbox" id="chck${index}"> + <label class="tab-label" for="chck${index}">${filename}</label> + <div class="tab-content" align="left"> + ${tabulated_data} + </div> + </div>`; + return tab; +} + +// data is a dictionary with key as filename and value as array of data strings +function generateTabs(data, type) { + let stats = ""; + stats = data["FINAL_STATS"]; + delete data["FINAL_STATS"]; + let tabs = ""; + let index = 0; + for (let filename in data) { + index++; + tabs += generateTab(filename, data[filename], `-${type}${index}`, type); + } + return ` + <div class="tabs is-flex is-flex-direction-column"> + ${tabs} + </div> + <div class="is-flex is-flex-direction-column"> + <p>${stats}</p> + </div>`; +} + +function generateTable(data, type) { + let table = ""; + for (let i = 0; i < data.length; i++) { + table += generateRow(data[i], type); + } + const headers = generateHeaders(type); + return ` + <table class="data-table"> + ${headers} + <tbody> + ${table} + </tbody> + </table>`; +} + +function generateHeaders(type) { + let headers = ""; + if (type === "eslint") { + headers = ` + <th style="width: 10%;">Position</th> + <th style="width: 10%;">Severity</th> + <th style="width: 60%; margin-right: 5%;">Message</th> + <th style="width: 15%;">Rule</th>`; + } else if (type === "https" || type === "assesment") { + headers = `<th style="width: 15%;">Severity</th> + <th>Link</th>`; + } + else if (type === "descriptor") { + headers = `<th style="width: 10%;">Index</th> + <th style="width: 15%;">Severity</th> + <th>Message</th>`; + } + let head = `<thead><tr>${headers}</tr></thead>`; + return head; +} + +function generateRow(data, type) { + let row = ""; + // split with tab + let split_data = data.split(" "); + // remove all empty strings + split_data = split_data.filter(function (el) { + return el != ""; + }); + + let severity = ""; + + if (type === "eslint") { + // check severity + // clear all whitespaces + split_data[1] = split_data[1].replace(/\s/g, ""); + severity = split_data[1]; + if (split_data[1] == "error") { + split_data[1] = `<div class="status-chip background-error">${split_data[1]}</div>`; + } else if (split_data[1] == "warning") { + split_data[1] = `<div class="status-chip background-warning">${split_data[1]}</div>`; + } + + // message + split_data[2] = `<div class="eslint-message">${split_data[2]}</div>`; + } else if (type === "https" || type === "assesment") { + split_data.unshift( + `<div class="status-chip background-warning">warning</div>` + ); + severity = "warning"; + // link + split_data[1] = `<div class="https-link">${split_data[1]}</div>`; + } + else if (type === "descriptor") { + split_data = [] + split_data.push(data.split(":")[0]); + split_data.push(`<div class="status-chip background-warning">warning</div>`); + split_data.push(data.split(":")[1]); + } + + for (let i = 0; i < split_data.length; i++) { + row += `<td class="table-cell">${split_data[i]}</td>`; + } + return `<tr class="table-row is-${severity}">${row}</tr>`; +} + +window.toggleEslint = () => { + const eslint = document.getElementById("eslint"); + const checkbox = document.getElementById("checkbox-eslint"); + if (checkbox.checked) { + eslint.style.display = "inline-block"; + } else { + eslint.style.display = "none"; + } +}; + +window.toggleHttps = () => { + const https = document.getElementById("https"); + const checkbox = document.getElementById("checkbox-https"); + if (checkbox.checked) { + https.style.display = "inline-block"; + } else { + https.style.display = "none"; + } +}; + +window.toggleDescriptor = () => { + const descriptor = document.getElementById("descriptor"); + const checkbox = document.getElementById("checkbox-descriptor"); + if (checkbox.checked) { + descriptor.style.display = "inline-block"; + } else { + descriptor.style.display = "none"; + } +}; + +window.toggleAssesment = () => { + const assesment = document.getElementById("assesment"); + const checkbox = document.getElementById("checkbox-assesment"); + if (checkbox.checked) { + assesment.style.display = "inline-block"; + } else { + assesment.style.display = "none"; + } +}; + +function collapseEslint() { + const eslint = document.getElementById("eslint"); + const checkboxes = eslint.querySelectorAll(".cb"); + for (let i = 0; i < checkboxes.length; i++) { + checkboxes[i].checked = false; + } +} + +function collapseHttps() { + const https = document.getElementById("https"); + const checkboxes = https.querySelectorAll(".cb"); + for (let i = 0; i < checkboxes.length; i++) { + checkboxes[i].checked = false; + } +} + +function collapseDescriptor() { + const descriptor = document.getElementById("descriptor"); + const checkboxes = descriptor.querySelectorAll(".cb"); + for (let i = 0; i < checkboxes.length; i++) { + checkboxes[i].checked = false; + } +} + +function collapseAssesment() { + const assesment = document.getElementById("assesment"); + const checkboxes = assesment.querySelectorAll(".cb"); + for (let i = 0; i < checkboxes.length; i++) { + checkboxes[i].checked = false; + } +} + +function toggleWarning() { + const checkbox = document.getElementById("checkbox-warning"); + const warnings = document.getElementsByClassName("is-warning"); + + if (checkbox.checked) { + for (let i = 0; i < warnings.length; i++) { + warnings[i].style.display = "table-row"; + } + } else { + for (let i = 0; i < warnings.length; i++) { + warnings[i].style.display = "none"; + } + } +} + +function toggleError() { + const checkbox = document.getElementById("checkbox-error"); + const errors = document.getElementsByClassName("is-error"); + + if (checkbox.checked) { + for (let i = 0; i < errors.length; i++) { + errors[i].style.display = "table-row"; + } + } else { + for (let i = 0; i < errors.length; i++) { + errors[i].style.display = "none"; + } + } +} + +function collapseAll() { + collapseEslint(); + collapseHttps(); + collapseDescriptor(); + collapseAssesment(); +} + +window.collapseEslint = collapseEslint; +window.collapseHttps = collapseHttps; +window.collapseDescriptor = collapseDescriptor; +window.collapseAssesment = collapseAssesment; +window.collapseAll = collapseAll; + +window.toggleWarning = toggleWarning; +window.toggleError = toggleError; + +await getLog("eslint.log", "eslint"); +await getLog("links.log", "https"); +await getLog("assesment.log", "assesment"); +await getLog("validate.log", "descriptor"); diff --git a/plugins/tool-validation/package-lock.json b/plugins/tool-validation/package-lock.json new file mode 100644 index 0000000..1ee31d9 --- /dev/null +++ b/plugins/tool-validation/package-lock.json @@ -0,0 +1,1645 @@ +{ + "name": "validation", + "version": "1.0.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "validation", + "version": "1.0.0", + "license": "ISC", + "dependencies": { + "fs": "^0.0.1-security", + "got": "^10.4.0", + "jsdom": "^16.2.1" + } + }, + "node_modules/@sindresorhus/is": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-2.1.1.tgz", + "integrity": "sha512-/aPsuoj/1Dw/kzhkgz+ES6TxG0zfTMGLwuK2ZG00k/iJzYHTLCE8mVU8EPqEOp/lmxPoq1C1C9RYToRKb2KEfg==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" + } + }, + "node_modules/@szmarczak/http-timer": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", + "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", + "dependencies": { + "defer-to-connect": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/@types/cacheable-request": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.2.tgz", + "integrity": "sha512-B3xVo+dlKM6nnKTcmm5ZtY/OL8bOAOd2Olee9M1zft65ox50OzjEHW91sDiU9j6cvW8Ejg1/Qkf4xd2kugApUA==", + "dependencies": { + "@types/http-cache-semantics": "*", + "@types/keyv": "*", + "@types/node": "*", + "@types/responselike": "*" + } + }, + "node_modules/@types/http-cache-semantics": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz", + "integrity": "sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==" + }, + "node_modules/@types/json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha512-3YP80IxxFJB4b5tYC2SUPwkg0XQLiu0nWvhRgEatgjf+29IcWO9X1k8xRv5DGssJ/lCrjYTjQPcobJr2yWIVuQ==" + }, + "node_modules/@types/keyv": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz", + "integrity": "sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/node": { + "version": "18.0.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.0.3.tgz", + "integrity": "sha512-HzNRZtp4eepNitP+BD6k2L6DROIDG4Q0fm4x+dwfsr6LGmROENnok75VGw40628xf+iR24WeMFcHuuBDUAzzsQ==" + }, + "node_modules/@types/responselike": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.0.tgz", + "integrity": "sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==" + }, + "node_modules/acorn": { + "version": "8.7.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", + "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-globals": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", + "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "dependencies": { + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" + } + }, + "node_modules/acorn-globals/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "node_modules/browser-process-hrtime": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==" + }, + "node_modules/cacheable-lookup": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-2.0.1.tgz", + "integrity": "sha512-EMMbsiOTcdngM/K6gV/OxF2x0t07+vMOWxZNSCRQMjO2MY2nhZQ6OYhOOpyQrbhqsgtvKGI7hcq6xjnA92USjg==", + "dependencies": { + "@types/keyv": "^3.1.1", + "keyv": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/cacheable-request": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.2.tgz", + "integrity": "sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==", + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^4.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^6.0.1", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/clone-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", + "integrity": "sha512-yjLXh88P599UOyPTFX0POsd7WxnbsVsGohcwzHOLspIhhpalPw1BcqED8NblyZLKcGrL8dTgMlcaZxV2jAD41Q==", + "dependencies": { + "mimic-response": "^1.0.0" + } + }, + "node_modules/clone-response/node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/compress-brotli": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/compress-brotli/-/compress-brotli-1.3.8.tgz", + "integrity": "sha512-lVcQsjhxhIXsuupfy9fmZUFtAIdBmXA7EGY6GBdgZ++qkM9zG4YFT8iU7FoBxzryNDMOpD1HIFHUSX4D87oqhQ==", + "dependencies": { + "@types/json-buffer": "~3.0.0", + "json-buffer": "~3.0.1" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/cssom": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", + "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==" + }, + "node_modules/cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "dependencies": { + "cssom": "~0.3.6" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==" + }, + "node_modules/data-urls": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", + "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "dependencies": { + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decimal.js": { + "version": "10.3.1", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.3.1.tgz", + "integrity": "sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ==" + }, + "node_modules/decompress-response": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-5.0.0.tgz", + "integrity": "sha512-TLZWWybuxWgoW7Lykv+gq9xvzOsUjQ9tF09Tj6NSTYGMTCHNXzrPnD6Hi+TgZq19PyTAGH4Ll/NIM/eTGglnMw==", + "dependencies": { + "mimic-response": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==" + }, + "node_modules/defer-to-connect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", + "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==", + "engines": { + "node": ">=10" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/domexception": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", + "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "dependencies": { + "webidl-conversions": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/domexception/node_modules/webidl-conversions": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", + "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha512-CEj8FwwNA4cVH2uFCoHUrmojhYh1vmCdOaneKJXwkeY1i9jnlslVo9dx+hQ5Hl9GnH/Bwy/IjxAyOePyPKYnzA==" + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/escodegen": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz", + "integrity": "sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==", + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==" + }, + "node_modules/form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fs": { + "version": "0.0.1-security", + "resolved": "https://registry.npmjs.org/fs/-/fs-0.0.1-security.tgz", + "integrity": "sha512-3XY9e1pP0CVEUCdj5BmfIZxRBTSDycnbqhIOGec9QYtmVH2fbLpj86CFWkrNOkt/Fvty4KZG5lTglL9j/gJ87w==" + }, + "node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/got": { + "version": "10.7.0", + "resolved": "https://registry.npmjs.org/got/-/got-10.7.0.tgz", + "integrity": "sha512-aWTDeNw9g+XqEZNcTjMMZSy7B7yE9toWOFYip7ofFTLleJhvZwUxxTxkTpKvF+p1SAA4VHmuEy7PiHTHyq8tJg==", + "dependencies": { + "@sindresorhus/is": "^2.0.0", + "@szmarczak/http-timer": "^4.0.0", + "@types/cacheable-request": "^6.0.1", + "cacheable-lookup": "^2.0.0", + "cacheable-request": "^7.0.1", + "decompress-response": "^5.0.0", + "duplexer3": "^0.1.4", + "get-stream": "^5.0.0", + "lowercase-keys": "^2.0.0", + "mimic-response": "^2.1.0", + "p-cancelable": "^2.0.0", + "p-event": "^4.0.0", + "responselike": "^2.0.0", + "to-readable-stream": "^2.0.0", + "type-fest": "^0.10.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/got?sponsor=1" + } + }, + "node_modules/html-encoding-sniffer": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", + "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", + "dependencies": { + "whatwg-encoding": "^1.0.5" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==" + }, + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "dependencies": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==" + }, + "node_modules/jsdom": { + "version": "16.7.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", + "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "dependencies": { + "abab": "^2.0.5", + "acorn": "^8.2.4", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.3.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.1", + "domexception": "^2.0.1", + "escodegen": "^2.0.0", + "form-data": "^3.0.0", + "html-encoding-sniffer": "^2.0.1", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.0", + "parse5": "6.0.1", + "saxes": "^5.0.1", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.0.0", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.5.0", + "ws": "^7.4.6", + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==" + }, + "node_modules/keyv": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.3.2.tgz", + "integrity": "sha512-kn8WmodVBe12lmHpA6W8OY7SNh6wVR+Z+wZESF4iF5FCazaVXGWOtnbnvX0tMQ1bO+/TmOD9LziuYMvrIIs0xw==", + "dependencies": { + "compress-brotli": "^1.3.8", + "json-buffer": "3.0.1" + } + }, + "node_modules/levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "dependencies": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-response": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", + "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/normalize-url": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", + "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/nwsapi": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.1.tgz", + "integrity": "sha512-JYOWTeFoS0Z93587vRJgASD5Ut11fYl5NyihP3KrYBvMe1FRRs6RN7m20SA/16GM4P6hTnZjT+UmDOt38UeXNg==" + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "dependencies": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.6", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "word-wrap": "~1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-cancelable": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", + "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/p-event": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/p-event/-/p-event-4.2.0.tgz", + "integrity": "sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ==", + "dependencies": { + "p-timeout": "^3.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", + "engines": { + "node": ">=4" + } + }, + "node_modules/p-timeout": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz", + "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==", + "dependencies": { + "p-finally": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "node_modules/prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==" + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/responselike": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.0.tgz", + "integrity": "sha512-xH48u3FTB9VsZw7R+vvgaKeLKzT6jOogbQhEe/jewwnZgzPcnyWui2Av6JpoYZF/91uueC+lqhWqeURw5/qhCw==", + "dependencies": { + "lowercase-keys": "^2.0.0" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/saxes": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", + "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "dependencies": { + "xmlchars": "^2.2.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==" + }, + "node_modules/to-readable-stream": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-2.1.0.tgz", + "integrity": "sha512-o3Qa6DGg1CEXshSdvWNX2sN4QHqg03SPq7U6jPXRahlQdl5dK8oXjkU/2/sGrnOZKeGV1zLSO8qPwyKklPPE7w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/tough-cookie": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz", + "integrity": "sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==", + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.1.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tr46": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", + "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", + "dependencies": { + "prelude-ls": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.10.0.tgz", + "integrity": "sha512-EUV9jo4sffrwlg8s0zDhP0T2WD3pru5Xi0+HTE3zTUmBaZNhfkite9PdSJwdXLwPVW0jnAHT56pZHIOYckPEiw==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/w3c-hr-time": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "dependencies": { + "browser-process-hrtime": "^1.0.0" + } + }, + "node_modules/w3c-xmlserializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", + "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "dependencies": { + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/webidl-conversions": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", + "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "engines": { + "node": ">=10.4" + } + }, + "node_modules/whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "dependencies": { + "iconv-lite": "0.4.24" + } + }, + "node_modules/whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==" + }, + "node_modules/whatwg-url": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", + "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "dependencies": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "node_modules/ws": { + "version": "7.5.8", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.8.tgz", + "integrity": "sha512-ri1Id1WinAX5Jqn9HejiGb8crfRio0Qgu8+MtL36rlTA6RLsMdWt1Az/19A2Qij6uSHUMphEFaTKa4WG+UNHNw==", + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==" + }, + "node_modules/xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==" + } + }, + "dependencies": { + "@sindresorhus/is": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-2.1.1.tgz", + "integrity": "sha512-/aPsuoj/1Dw/kzhkgz+ES6TxG0zfTMGLwuK2ZG00k/iJzYHTLCE8mVU8EPqEOp/lmxPoq1C1C9RYToRKb2KEfg==" + }, + "@szmarczak/http-timer": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", + "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", + "requires": { + "defer-to-connect": "^2.0.0" + } + }, + "@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==" + }, + "@types/cacheable-request": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.2.tgz", + "integrity": "sha512-B3xVo+dlKM6nnKTcmm5ZtY/OL8bOAOd2Olee9M1zft65ox50OzjEHW91sDiU9j6cvW8Ejg1/Qkf4xd2kugApUA==", + "requires": { + "@types/http-cache-semantics": "*", + "@types/keyv": "*", + "@types/node": "*", + "@types/responselike": "*" + } + }, + "@types/http-cache-semantics": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz", + "integrity": "sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==" + }, + "@types/json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha512-3YP80IxxFJB4b5tYC2SUPwkg0XQLiu0nWvhRgEatgjf+29IcWO9X1k8xRv5DGssJ/lCrjYTjQPcobJr2yWIVuQ==" + }, + "@types/keyv": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz", + "integrity": "sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==", + "requires": { + "@types/node": "*" + } + }, + "@types/node": { + "version": "18.0.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.0.3.tgz", + "integrity": "sha512-HzNRZtp4eepNitP+BD6k2L6DROIDG4Q0fm4x+dwfsr6LGmROENnok75VGw40628xf+iR24WeMFcHuuBDUAzzsQ==" + }, + "@types/responselike": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.0.tgz", + "integrity": "sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==", + "requires": { + "@types/node": "*" + } + }, + "abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==" + }, + "acorn": { + "version": "8.7.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", + "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==" + }, + "acorn-globals": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", + "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "requires": { + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" + }, + "dependencies": { + "acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==" + } + } + }, + "acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==" + }, + "agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "requires": { + "debug": "4" + } + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "browser-process-hrtime": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==" + }, + "cacheable-lookup": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-2.0.1.tgz", + "integrity": "sha512-EMMbsiOTcdngM/K6gV/OxF2x0t07+vMOWxZNSCRQMjO2MY2nhZQ6OYhOOpyQrbhqsgtvKGI7hcq6xjnA92USjg==", + "requires": { + "@types/keyv": "^3.1.1", + "keyv": "^4.0.0" + } + }, + "cacheable-request": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.2.tgz", + "integrity": "sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==", + "requires": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^4.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^6.0.1", + "responselike": "^2.0.0" + } + }, + "clone-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", + "integrity": "sha512-yjLXh88P599UOyPTFX0POsd7WxnbsVsGohcwzHOLspIhhpalPw1BcqED8NblyZLKcGrL8dTgMlcaZxV2jAD41Q==", + "requires": { + "mimic-response": "^1.0.0" + }, + "dependencies": { + "mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" + } + } + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "compress-brotli": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/compress-brotli/-/compress-brotli-1.3.8.tgz", + "integrity": "sha512-lVcQsjhxhIXsuupfy9fmZUFtAIdBmXA7EGY6GBdgZ++qkM9zG4YFT8iU7FoBxzryNDMOpD1HIFHUSX4D87oqhQ==", + "requires": { + "@types/json-buffer": "~3.0.0", + "json-buffer": "~3.0.1" + } + }, + "cssom": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", + "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==" + }, + "cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "requires": { + "cssom": "~0.3.6" + }, + "dependencies": { + "cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==" + } + } + }, + "data-urls": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", + "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "requires": { + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" + } + }, + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "requires": { + "ms": "2.1.2" + } + }, + "decimal.js": { + "version": "10.3.1", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.3.1.tgz", + "integrity": "sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ==" + }, + "decompress-response": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-5.0.0.tgz", + "integrity": "sha512-TLZWWybuxWgoW7Lykv+gq9xvzOsUjQ9tF09Tj6NSTYGMTCHNXzrPnD6Hi+TgZq19PyTAGH4Ll/NIM/eTGglnMw==", + "requires": { + "mimic-response": "^2.0.0" + } + }, + "deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==" + }, + "defer-to-connect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", + "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==" + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" + }, + "domexception": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", + "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "requires": { + "webidl-conversions": "^5.0.0" + }, + "dependencies": { + "webidl-conversions": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", + "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==" + } + } + }, + "duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha512-CEj8FwwNA4cVH2uFCoHUrmojhYh1vmCdOaneKJXwkeY1i9jnlslVo9dx+hQ5Hl9GnH/Bwy/IjxAyOePyPKYnzA==" + }, + "end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "requires": { + "once": "^1.4.0" + } + }, + "escodegen": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz", + "integrity": "sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==", + "requires": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" + }, + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==" + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==" + }, + "form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + }, + "fs": { + "version": "0.0.1-security", + "resolved": "https://registry.npmjs.org/fs/-/fs-0.0.1-security.tgz", + "integrity": "sha512-3XY9e1pP0CVEUCdj5BmfIZxRBTSDycnbqhIOGec9QYtmVH2fbLpj86CFWkrNOkt/Fvty4KZG5lTglL9j/gJ87w==" + }, + "get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "requires": { + "pump": "^3.0.0" + } + }, + "got": { + "version": "10.7.0", + "resolved": "https://registry.npmjs.org/got/-/got-10.7.0.tgz", + "integrity": "sha512-aWTDeNw9g+XqEZNcTjMMZSy7B7yE9toWOFYip7ofFTLleJhvZwUxxTxkTpKvF+p1SAA4VHmuEy7PiHTHyq8tJg==", + "requires": { + "@sindresorhus/is": "^2.0.0", + "@szmarczak/http-timer": "^4.0.0", + "@types/cacheable-request": "^6.0.1", + "cacheable-lookup": "^2.0.0", + "cacheable-request": "^7.0.1", + "decompress-response": "^5.0.0", + "duplexer3": "^0.1.4", + "get-stream": "^5.0.0", + "lowercase-keys": "^2.0.0", + "mimic-response": "^2.1.0", + "p-cancelable": "^2.0.0", + "p-event": "^4.0.0", + "responselike": "^2.0.0", + "to-readable-stream": "^2.0.0", + "type-fest": "^0.10.0" + } + }, + "html-encoding-sniffer": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", + "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", + "requires": { + "whatwg-encoding": "^1.0.5" + } + }, + "http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==" + }, + "http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "requires": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + } + }, + "https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "requires": { + "agent-base": "6", + "debug": "4" + } + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==" + }, + "jsdom": { + "version": "16.7.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", + "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "requires": { + "abab": "^2.0.5", + "acorn": "^8.2.4", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.3.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.1", + "domexception": "^2.0.1", + "escodegen": "^2.0.0", + "form-data": "^3.0.0", + "html-encoding-sniffer": "^2.0.1", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.0", + "parse5": "6.0.1", + "saxes": "^5.0.1", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.0.0", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.5.0", + "ws": "^7.4.6", + "xml-name-validator": "^3.0.0" + } + }, + "json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==" + }, + "keyv": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.3.2.tgz", + "integrity": "sha512-kn8WmodVBe12lmHpA6W8OY7SNh6wVR+Z+wZESF4iF5FCazaVXGWOtnbnvX0tMQ1bO+/TmOD9LziuYMvrIIs0xw==", + "requires": { + "compress-brotli": "^1.3.8", + "json-buffer": "3.0.1" + } + }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "requires": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==" + }, + "mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" + }, + "mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "requires": { + "mime-db": "1.52.0" + } + }, + "mimic-response": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", + "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==" + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "normalize-url": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", + "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==" + }, + "nwsapi": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.1.tgz", + "integrity": "sha512-JYOWTeFoS0Z93587vRJgASD5Ut11fYl5NyihP3KrYBvMe1FRRs6RN7m20SA/16GM4P6hTnZjT+UmDOt38UeXNg==" + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "requires": { + "wrappy": "1" + } + }, + "optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "requires": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.6", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "word-wrap": "~1.2.3" + } + }, + "p-cancelable": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", + "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==" + }, + "p-event": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/p-event/-/p-event-4.2.0.tgz", + "integrity": "sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ==", + "requires": { + "p-timeout": "^3.1.0" + } + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==" + }, + "p-timeout": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz", + "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==", + "requires": { + "p-finally": "^1.0.0" + } + }, + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==" + }, + "psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==" + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + }, + "responselike": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.0.tgz", + "integrity": "sha512-xH48u3FTB9VsZw7R+vvgaKeLKzT6jOogbQhEe/jewwnZgzPcnyWui2Av6JpoYZF/91uueC+lqhWqeURw5/qhCw==", + "requires": { + "lowercase-keys": "^2.0.0" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "saxes": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", + "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "requires": { + "xmlchars": "^2.2.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "optional": true + }, + "symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==" + }, + "to-readable-stream": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-2.1.0.tgz", + "integrity": "sha512-o3Qa6DGg1CEXshSdvWNX2sN4QHqg03SPq7U6jPXRahlQdl5dK8oXjkU/2/sGrnOZKeGV1zLSO8qPwyKklPPE7w==" + }, + "tough-cookie": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz", + "integrity": "sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==", + "requires": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.1.2" + } + }, + "tr46": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", + "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "requires": { + "punycode": "^2.1.1" + } + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", + "requires": { + "prelude-ls": "~1.1.2" + } + }, + "type-fest": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.10.0.tgz", + "integrity": "sha512-EUV9jo4sffrwlg8s0zDhP0T2WD3pru5Xi0+HTE3zTUmBaZNhfkite9PdSJwdXLwPVW0jnAHT56pZHIOYckPEiw==" + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==" + }, + "w3c-hr-time": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "requires": { + "browser-process-hrtime": "^1.0.0" + } + }, + "w3c-xmlserializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", + "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "requires": { + "xml-name-validator": "^3.0.0" + } + }, + "webidl-conversions": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", + "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==" + }, + "whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "requires": { + "iconv-lite": "0.4.24" + } + }, + "whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==" + }, + "whatwg-url": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", + "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "requires": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + } + }, + "word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==" + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "ws": { + "version": "7.5.8", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.8.tgz", + "integrity": "sha512-ri1Id1WinAX5Jqn9HejiGb8crfRio0Qgu8+MtL36rlTA6RLsMdWt1Az/19A2Qij6uSHUMphEFaTKa4WG+UNHNw==", + "requires": {} + }, + "xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==" + }, + "xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==" + } + } +} diff --git a/plugins/tool-validation/package.json b/plugins/tool-validation/package.json new file mode 100644 index 0000000..7dedd07 --- /dev/null +++ b/plugins/tool-validation/package.json @@ -0,0 +1,16 @@ +{ + "name": "validation", + "version": "1.0.0", + "description": "", + "main": "list-files.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "author": "", + "license": "ISC", + "dependencies": { + "fs": "^0.0.1-security", + "got": "^10.4.0", + "jsdom": "^16.2.1" + } +} diff --git a/posttest.html b/posttest.html new file mode 100644 index 0000000..5d1de82 --- /dev/null +++ b/posttest.html @@ -0,0 +1,637 @@ +<!DOCTYPE html><html lang="en"><head> + <!--Google Tag Manager--> + <script class="gtm"> + var dataLayer = [{ + 'labName': 'Virtual Lab', + 'discipline': 'Test', + 'college': 'IITKGP', + 'phase': 'Testing', + 'expName': 'MONOSTABLE MULTIVIBRATOR USING IC 555', + 'expShortName': 'monostable-multivibrator' + }]; + + (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': + new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], + j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= + 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); + })(window,document,'script','dataLayer','GTM-5NMQ9NQ'); + </script> + <!--End Google Tag Manager--> + <meta charset="utf-8"> + <meta http-equiv="X-UA-Compatible" content="IE=edge"> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <meta content="" name="description"> + <meta content="" name="author"> + + <meta name="experiment-short-name" content="monostable-multivibrator"> + <meta name="developer-institute" content="IITKGP"> + <meta name="learning-unit" content="MONOSTABLE MULTIVIBRATOR USING IC 555"> + <meta name="task-name" content="Posttest"> + + <!-- For iPhone --> + <meta name="msapplication-TileColor" content="#4076e0"> + <!-- Chrome, Firefox OS and Opera --> + <meta name="theme-color" content="#4076e0"> + <!-- Windows Phone --> + <meta name="msapplication-navbutton-color" content="#4076e0"> + <title>Virtual Labs</title> + <link rel="shortcut icon" href="./assets/images/favicon.ico"> + <link rel="stylesheet" href="./assets/css/bootstrap.min.css"> + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/github-markdown-css/4.0.0/github-markdown.min.css" integrity="sha512-Oy18vBnbSJkXTndr2n6lDMO5NN31UljR8e/ICzVPrGpSud4Gkckb8yUpqhKuUNoE+o9gAb4O/rAxxw1ojyUVzg==" crossorigin="anonymous"> + <link href="https://fonts.googleapis.com/css2?family=Open+Sans&family=Raleway&display=swap" rel="stylesheet"> + <link rel="stylesheet" href="./assets/fonts/font-awesome-4.7.0/css/font-awesome.min.css"> + <link rel="stylesheet" href="./assets/css/github-markdown.min.css"> + <link rel="stylesheet" href="./assets/css/vlabs-style.css"> + <link rel="stylesheet" href="./assets/katex_assets/katex.min.css"> + + <script src="./assets/js/jquery-3.4.1.slim.min.js"></script> + <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.5.4/dist/umd/popper.min.js" integrity="sha384-q2kxQ16AaE6UbzuKqyBE9/u/KzioAlnx2maXQHiDX9d4/zp8Ok3f+M7DPm+Ib6IU" crossorigin="anonymous"></script> + <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/js/bootstrap.min.js" integrity="sha384-pQQkAEnwaBkjpqZ8RU1fF1AKtTcHJwFl3pblpTlHXybJjHpMYo79HY3hIi4NKxyj" crossorigin="anonymous"></script> + <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script> + <style> + h1 { + font-size: 1.8rem; + } + h2 { + font-size: 1.4rem; + } + h3 { + font-size: 1.2rem; + } + + h2, h3 { + font-weight: 800; + } + </style> + + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.2.1/css/all.min.css"></head> + <body class="p-0 container-fluid vlabs-page d-flex flex-column justify-content-between"> + <!--Google Tag Manager (noscript)--> + <noscript class="gtm"> + <iframe height="0" src="https://www.googletagmanager.com/ns.html?id=GTM-5NMQ9NQ" style="display:none;visibility:hidden" width="0"> + </iframe> + </noscript> + <!--End Google Tag Manager (noscript)--> + + <header class="vlabs-header sticky-top bg-white"> + <nav class="p-0 navbar navbar-light d-flex align-items-stretch"> + + <button class="navbar-toggler px-4" type="button" onclick="toggle()"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="d-flex justify-content-center"> + <a href="https://vlab.co.in" class="navbar-brand"> + <img src="./assets/images/vlabs-color-small-moe.jpg" alt="vlabs logo" class="vlabs-logo"> + </a> + </div> + + <div id="headerNavbar" class="d-none border-top flex-grow-1 d-lg-flex align-items-center justify-content-end"> + <div class="svc-rating-display"> + <rating-display spreadsheetid="1x12nhpp0QvnsA6x-O1sV4IA9SAbfVsq_wiexWkutOmU" sheetname="Experiment-Database" columnname="Experiment Short Name" columnvalue="monostable-multivibrator" imagesdirectory="./plugins/svc-rating/images/"> + </rating-display> + </div> <div class="svc-rating-submit"> + <rating-submit title="Rate" this="" experiment=""> + </rating-submit> + </div> <bug-report id="bug-report" title="[BUG REPORT] MONOSTABLE MULTIVIBRATOR USING IC 555" page-type="assesment" context-info="{"organisation":"Virtual Labs","developer_institute":"IITKGP","expname":"MONOSTABLE MULTIVIBRATOR USING IC 555","labname":"Virtual Lab","phase":"Testing"}" checkbox-json="{"text":["Insufficient Content"],"video":["Insufficient Content"],"assesment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"assessment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"simulation":["Simulation Not Working","Incorrect Results/Observations","Insufficient/Incorrect Instructions"],"DEFAULT":["Page Not Loading","Content Not Visible","Incorrect Content"]}" button_style="border: none; color: #fff; background-color: #288ec8; text-align: center; font-size: 1.05rem; border-radius: 1em;padding: 0.6em 1.2em; margin: 0 10px" position="override" custom_button_class="v-button"></bug-report> + </div> + </nav> + </header> + <div class="container-fluid flex-fill d-flex flex-column vlabs-page-main"> + <div class="row d-flex justify-content-between"> + <div class="flex-column"> + <div class="row py-4 px-4 breadcrumbs"> + <div class="title is-4 tools">Tools</div> + <span class="mx-2"> + <i aria-hidden="true" class="fa fa-angle-right"></i> + </span> + <a href="performance-report.html" class="my-2 mx-3" target="_blank"> + <button class="v-button">Performance Tool</button> + </a> + <a href="validator-report.html" class="my-2 mx-3" target="_blank"> + <button class="v-button">Validation Tool</button> + </a> + </div> + </div> + </div> + <div class="row flex-grow-1 d-flex flex-nowrap flex-column flex-lg-row"> + <div class="modal fade popupmenu" id="popupMenu" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true"> + <div class="modal-dialog modal-dialog-centered modal-dialog-scrollable"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title" id="exampleModalLabel"> + <a href="https://vlab.co.in" class="navbar-brand"> + <img src="./assets/images/vlabs-color-small-moe.jpg" alt="vlabs logo" class="vlabs-logo"> + </a> + </h5> + <button type="button" class="btn-close align-self-center" data-bs-dismiss="modal" aria-label="Close"></button> + </div> + <div class="modal-body nav-menu"> + <div> + <div class="d-flex nav-menu-body"> + <a href="index.html" class="p-2 "> + Aim + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="theory.html" class="p-2 "> + Theory + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="pretest.html" class="p-2 "> + Pretest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="procedure.html" class="p-2 "> + Procedure + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="simulation.html" class="p-2 "> + Simulation + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="posttest.html" class="p-2 current-item "> + Posttest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="references.html" class="p-2 "> + References + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="contributors.html" class="p-2 "> + Contributors + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="feedback.html" class="p-2 "> + Feedback + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + </div> + </div> + </div> + </div> + <div class="nav flex-column sidebar nav-menu flex-shrink-0 px-lg-4 align-items-center align-items-lg-start hidden d-none d-lg-flex" id="menu"> + <div> + <div class="d-flex nav-menu-body"> + <a href="index.html" class="p-2 "> + Aim + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="theory.html" class="p-2 "> + Theory + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="pretest.html" class="p-2 "> + Pretest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="procedure.html" class="p-2 "> + Procedure + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="simulation.html" class="p-2 "> + Simulation + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="posttest.html" class="p-2 current-item "> + Posttest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="references.html" class="p-2 "> + References + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="contributors.html" class="p-2 "> + Contributors + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="feedback.html" class="p-2 "> + Feedback + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + </div> <div class="vlabs-page-content px-5 pb-4 flex-grow-1 markdown-body"> + <div class="text-center fix-spacing"> + <h2 id="monostable-multivibrator-using-ic-555">Monostable Multivibrator using IC 555</h2> + + </div> + <div id="difficulty-container" style="border-bottom: 1px solid #eaecef; padding-bottom: .3em; margin: 0" class="row"> + <div id="difficulty-label" class="col-12 col-md-3" style="display:none"><strong>Choose difficulty: </strong></div> + <div class="form-check col-12 col-md-3" style="display:none"> + <input id="beginner" type="checkbox" value=""> + <label class="form-check-label" for="flexCheckDefault"> + <strong>Beginner</strong> + </label> + </div> + <div class="form-check col-12 col-md-3" style="display:none"> + <input id="intermediate" type="checkbox" value=""> + <label class="form-check-label" for="flexCheckDefault"> + <strong>Intermediate</strong> + </label> + </div> + <div class="form-check col-12 col-md-3" style="display:none"> + <input id="advanced" type="checkbox" value=""> + <label class="form-check-label" for="flexCheckDefault"> + <strong>Advanced</strong> + </label> + </div> + </div> + + <div id="quiz" class="versiontrue" style="margin-top: 1rem"> + + + <div class="question beginner"> + What does the discharge transistor do in the 555 timer circuit? + </div> + + <div class="answers"> + <div id="answer0a"> + <label> + <input type="radio" name="question0" value="a"> + a: Charge the external capacitor to start the timing over again + </label> + <a href="#" id="explanation0a" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer0b"> + <label> + <input type="radio" name="question0" value="b"> + b: Charge the external capacitor to stop the timing + </label> + <a href="#" id="explanation0b" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer0c"> + <label> + <input type="radio" name="question0" value="c"> + c: Discharge the external capacitor to stop the timing + </label> + <a href="#" id="explanation0c" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer0d"> + <label> + <input type="radio" name="question0" value="d"> + d: Discharge the external capacitor to start the timing over again + </label> + <a href="#" id="explanation0d" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + </div> + + <div class="question beginner"> + The monostable multivibrator circuit is not an oscillator because ________. + </div> + + <div class="answers"> + <div id="answer1a"> + <label> + <input type="radio" name="question1" value="a"> + a: Its output switches between two states + </label> + <a href="#" id="explanation1a" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer1b"> + <label> + <input type="radio" name="question1" value="b"> + b: It requires a sine wave input signal + </label> + <a href="#" id="explanation1b" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer1c"> + <label> + <input type="radio" name="question1" value="c"> + c: It requires a trigger to obtain an output signal + </label> + <a href="#" id="explanation1c" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer1d"> + <label> + <input type="radio" name="question1" value="d"> + d: The circuit does not require a dc power supply + </label> + <a href="#" id="explanation1d" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + </div> + + <div class="question beginner"> + The monostable multivibrator circuit is also know as ________. + </div> + + <div class="answers"> + <div id="answer2a"> + <label> + <input type="radio" name="question2" value="a"> + a: One shot + </label> + <a href="#" id="explanation2a" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer2b"> + <label> + <input type="radio" name="question2" value="b"> + b: Two shot + </label> + <a href="#" id="explanation2b" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer2c"> + <label> + <input type="radio" name="question2" value="c"> + c: Three shot + </label> + <a href="#" id="explanation2c" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer2d"> + <label> + <input type="radio" name="question2" value="d"> + d: Four shot + </label> + <a href="#" id="explanation2d" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + </div> + + <div class="question beginner"> + A monostable 555 timer has one stable states: + </div> + + <div class="answers"> + <div id="answer3a"> + <label> + <input type="radio" name="question3" value="a"> + a: True + </label> + <a href="#" id="explanation3a" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer3b"> + <label> + <input type="radio" name="question3" value="b"> + b: False + </label> + <a href="#" id="explanation3b" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + </div> + + <div class="question beginner"> + What is the formula to calculate the time period of the monostable multivibrator. + </div> + + <div class="answers"> + <div id="answer4a"> + <label> + <input type="radio" name="question4" value="a"> + a: T = 0.69 * (R<sub>A</sub> + R<sub>B</sub>) * C + </label> + <a href="#" id="explanation4a" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer4b"> + <label> + <input type="radio" name="question4" value="b"> + b: T = 0.69 * (R<sub>A</sub> + 2R<sub>B</sub>) * C + </label> + <a href="#" id="explanation4b" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer4c"> + <label> + <input type="radio" name="question4" value="c"> + c: T = 0.69 * R<sub>B</sub> * C + </label> + <a href="#" id="explanation4c" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer4d"> + <label> + <input type="radio" name="question4" value="d"> + d: T = 1.1 * R * C + </label> + <a href="#" id="explanation4d" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + </div> + </div> + <button id="submit" class="btn btn-primary">Submit Quiz</button> + <div id="results"></div> + </div> + + <script> + const myQuestions = [{"question":"What does the discharge transistor do in the 555 timer circuit?","answers":{"a":"Charge the external capacitor to start the timing over again","b":"Charge the external capacitor to stop the timing","c":"Discharge the external capacitor to stop the timing","d":"Discharge the external capacitor to start the timing over again"},"correctAnswer":"d","difficulty":"beginner"},{"question":"The monostable multivibrator circuit is not an oscillator because ________.","answers":{"a":"Its output switches between two states","b":"It requires a sine wave input signal","c":"It requires a trigger to obtain an output signal","d":"The circuit does not require a dc power supply"},"correctAnswer":"c","difficulty":"beginner"},{"question":"The monostable multivibrator circuit is also know as ________.","answers":{"a":"One shot","b":"Two shot","c":"Three shot","d":"Four shot"},"correctAnswer":"a","difficulty":"beginner"},{"question":"A monostable 555 timer has one stable states:","answers":{"a":"True","b":"False"},"correctAnswer":"a","difficulty":"beginner"},{"question":"What is the formula to calculate the time period of the monostable multivibrator.","answers":{"a":"T = 0.69 * (R<sub>A</sub> + R<sub>B</sub>) * C","b":"T = 0.69 * (R<sub>A</sub> + 2R<sub>B</sub>) * C","c":"T = 0.69 * R<sub>B</sub> * C","d":"T = 1.1 * R * C"},"correctAnswer":"d","difficulty":"beginner"}]; + </script> + <script src="./assets/js/assessment_v2.js"></script> + <div class="bug-report-mobile"> + <bug-report id="bug-report" title="[BUG REPORT] MONOSTABLE MULTIVIBRATOR USING IC 555" page-type="assesment" context-info="{"organisation":"Virtual Labs","developer_institute":"IITKGP","expname":"MONOSTABLE MULTIVIBRATOR USING IC 555","labname":"Virtual Lab","phase":"Testing"}" checkbox-json="{"text":["Insufficient Content"],"video":["Insufficient Content"],"assesment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"assessment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"simulation":["Simulation Not Working","Incorrect Results/Observations","Insufficient/Incorrect Instructions"],"DEFAULT":["Page Not Loading","Content Not Visible","Incorrect Content"]}" position="override" button_style=" + position: fixed; + bottom: 20px; + right: 20px; + z-index: 1; + font-size: 0; + padding: 25px; + border-radius: 50%; + border: none; + background-color: #0fc0ff; + background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAAAXNSR0IArs4c6QAABiFJREFUaEPFmVuMFEUUhv/TM7uwoBGVyG22u7ZnYGG5REETo8RA1BhFIka8ABFf0PCgDxhFEpCLqAlE1OiTiSj4gFGjD0QBETQaEqPRICALSHdPV+8YQQJBA+wuO1PHdMNcWGame2ZWqMfuc/nq1KlT1acJAzhShjFVAUsYdL8G3HjRdA7gHwna5uahLR91dnaeb9QlNWrA1+/o6GjuPnv2DQ30LICKNhk4qLF63PK8g434rejATJhjKa6m9WazOzOZzKlKTmYAcc8QnxEwJwqIAk5STpvpZJwD1eTHjR43PKflhtkZ2+ovVxbaTJiTSVM/gzCYGIebu4fc1nmi80w5J0nDWA7Qq1GACzLMR3pV7pZMJtNdTs/UzelE6msAQ0BYb7vuS6VyZaGTungGhPfygkRYZ7nusv4OEonEDc2xuEfA0JqgATBhieO6b/fXE0IM1pgPECgVvGP+x/bksFDo1JhUguPZI8FMAz0+zzFtSjqd9p8VRlJvew7E79QKHNgEDjrSndRfNyXEGmasLK4KttmeOysU2hdIGm0vA/xKUZh32VLeW6psCrGMmO+uB5qIeEh398P7jx8/m9cP9pGm9vtpmQ9WjHDzUSkPRYJOpVKDuK9vP0Dj8goMfsSR8ot6IKPoJI22XUBpEHitLWUx6heNVC15pmHMItCXBYeKPUZsLlFWVYNQsVg2nU7v82XaW1tHZ4lGhUEztOlEKOQ4A/b5XHZyuc0aWqdNIbYSY3aY00veM/9te3KE/ywlxGpmrKpJP8h5ftCR8qtyeqHQY3XdVNAO5vMskvMGoRWrT9Ke90QlX6HQF6N16Y4OI28Ampn/jatcxx+ZzJ8NQScSiZZBWvzJwAhhJoCKUQhkaoVmnAZoJcC9WowOH02nf6gWl0iRLpQk3ZwOym0n0DVVg10rNAAF7Ig1xedYltUbtpCRoZO6Po1J+z7S6VcHdLCIClusLnfBgED7NVv1ZX8lYGKYwbrSo8Qogxc4Um5pOD1Mo20DgZ+PBFxPTpcYJuBUljDRdd1jdW/EcYnEmKwWSxNR05WADnwo2mB3pV+oGzopxDowlkYGbjDSF9ILpwd1D2mtdB2uuhEv3D+yfwG4/opCB5WVnrZk+v1yfqtCJ3X9TpC2pybggYj0BYcf29KdXwe0WArCuqsCzSxtT4qq0GareStIXXo3JjxGwNSrAh0crMFFq3jYEJ9wpPygkB6mYZwg0PCaAcsp1Hm4RPFtS5eK0LpxvqayVs3DlYIO7r0K8xUhlufRGKNrupLmFQcImsEZBhWaOxq4y5ZyRvXqIcSnYDwaZdkukRkgaGqK32RZ1on+/qt/buliFRFWXxXokonXBJ3S22Yz8darAc2sdjqed1/NddpvnMQUHwPRdTWBD0R6EBbbrltoGJX6D71PJ3V9E0h76kpCMzirNTWNLpfPPkcodNDXi6m9QLGqhE6gwUgzaKMj04sq+QmF9hVrjnYj0IwejmvtjuN4DUEbhjEqztgLoqCXEToagQavsKV8rZqPSJH2DaSEmMGMXZHSpE5oZnzneK7fL8w1DJ1sTU6CltvEwPj/88OWwRYx77Y9b3HD0KYuvqUL/Y5oo85I542TooesrnTF8yE0PUwh5hGj6tfxZTNpEBqKvUE9QyfW9bnV3t5+bV9P7yECxuTBFGOvRn5v5eJgTLzsUhUFmuGCcLJoBiNL/ZT7bVFYiWrrnTSM9QC9WBSmzy2ZnluqI4QYGQcWM/O8Qi+7EjSjB4xtTNqHjuf4HVHO20q1tiZZi/k/j1r8Z8zcRxyfanfZv/dnrJgeYw1jQo6xr+SOfY5j2oRq9VMIIWLA7QSMslz3raDGG8ZMJhoPpR1QmvrFdd2eSoFKGm0rAF5bfM97bCnvKp2c/64idFLXd4C0woWFwMstKV+PthPrk/L/R/aeOfcbCBOKq8uLLCk3llos/0tON+8hUt+U5O1Rao5PjtIcrA+3qOWvDEC78wFlIO1I1wyFTuptC0G8uWSZHrCl3N4oUFT9NiE2a4yFQW6DLUfKsaHQU0aMGHq2pWULM98Bpncdzy35yxXVdf1yftXK9vS8CUVjtBjWHHXdn0qt/Qf/x1JblU8EiAAAAABJRU5ErkJggg==); + background-repeat: no-repeat; + background-position: center; + background-size: 30px; + filter: invert(1);"> + </bug-report> + </div> </div> + </div> + <footer class="text-light pt-2 vlabs-footer d-flex flex-column"> + <div class="row px-5 mx-0"> + <div class="col d-flex flex-column"> + <span class="font-weight-bold vlabs-footer-sect-name pb-2 mb-3">Community Links</span> + <a href="https://www.sakshat.ac.in/" class="text-light">Sakshat Portal</a> + <a href="http://outreach.vlabs.ac.in/" class="text-light">Outreach Portal</a> + <a href="https://vlab.co.in/faq" class="text-light">FAQ: Virtual Labs</a> + </div> + <div class="col d-flex flex-column"> + <span class="font-weight-bold vlabs-footer-sect-name pb-2 mb-3">Contact Us</span> + <span> Phone: General Information: 011-26582050 </span> + <span> Email: support@vlabs.ac.in </span> + </div> + <div class="col d-flex flex-column"> + <span class="font-weight-bold vlabs-footer-sect-name pb-2 mb-3">Follow Us</span> + <div class="social-links"> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #55acee;" href="https://twitter.com/TheVirtualLabs"> + <i class="fab fa-twitter"></i> + </a> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #3b5998;" href="https://www.facebook.com/Virtual-Labs-IIT-Delhi-301510159983871/"> + <i class="fab fa-facebook"></i> + </a> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #e52d27;" href="https://www.youtube.com/watch?v=asxRaOgk6a0"> + <i class="fab fa-youtube"></i> + </a> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #2867B2;" href="https://in.linkedin.com/in/virtual-labs-008ba9136"> + <i class="fab fa-linkedin"></i> + </a> + </div> + </div> + </div> + <div class="m-0 py-2 text-center" style="font-family: "Open Sans", sans-serif; background: #212121;"> + <a class="text-primary font-weight-bold" href="https://www.gnu.org/licenses/agpl-3.0.en.html"> AGPL 3.0 </a> + & + <a class="text-primary font-weight-bold" href="https://creativecommons.org/licenses/by-nc-sa/4.0/"> Creative Commons (CC BY-NC-SA 4.0) </a> + </div> + </footer> + <script src="./assets/js/toggleSidebar.js"></script> + <script src="./assets/js/event-handler.js"></script> + + + <script> + if ('serviceWorker' in navigator) { + window.addEventListener('load', () => { + navigator.serviceWorker.register("sw.js"); + }); + } + </script> + + +<script type="module" src="https://virtual-labs.github.io/svc-bug-report/client/src/bug-report.js"></script><script type="module" src="plugins/svc-rating/index.js"></script><script type="module" src="plugins/svc-rating/config.js"></script><script type="module" src="https://apis.google.com/js/api.js"></script></body></html> \ No newline at end of file diff --git a/posttest.json b/posttest.json new file mode 100644 index 0000000..e29350b --- /dev/null +++ b/posttest.json @@ -0,0 +1,64 @@ +{ + "version": 2.0, + "questions": [ + { + "question": "What does the discharge transistor do in the 555 timer circuit?", + "answers": { + "a": "Charge the external capacitor to start the timing over again", + "b": "Charge the external capacitor to stop the timing", + "c": "Discharge the external capacitor to stop the timing", + "d": "Discharge the external capacitor to start the timing over again" + }, + + "correctAnswer": "d", + "difficulty": "beginner" + }, + { + "question": "The monostable multivibrator circuit is not an oscillator because ________.", + "answers": { + "a": "Its output switches between two states", + "b": "It requires a sine wave input signal", + "c": "It requires a trigger to obtain an output signal", + "d": "The circuit does not require a dc power supply" + }, + + "correctAnswer": "c", + "difficulty": "beginner" + }, + { + "question": "The monostable multivibrator circuit is also know as ________.", + "answers": { + "a": "One shot", + "b": "Two shot", + "c": "Three shot", + "d": "Four shot" + }, + + "correctAnswer": "a", + "difficulty": "beginner" + }, + { + "question": "A monostable 555 timer has one stable states:", + "answers": { + "a": "True", + "b": "False" + + }, + + "correctAnswer": "a", + "difficulty": "beginner" + }, + { + "question": "What is the formula to calculate the time period of the monostable multivibrator.", + "answers": { + "a": "T = 0.69 * (R<sub>A</sub> + R<sub>B</sub>) * C", + "b": "T = 0.69 * (R<sub>A</sub> + 2R<sub>B</sub>) * C", + "c": "T = 0.69 * R<sub>B</sub> * C", + "d": "T = 1.1 * R * C" + }, + + "correctAnswer": "d", + "difficulty": "beginner" + } + ] +} diff --git a/pretest.html b/pretest.html new file mode 100644 index 0000000..0868934 --- /dev/null +++ b/pretest.html @@ -0,0 +1,653 @@ +<!DOCTYPE html><html lang="en"><head> + <!--Google Tag Manager--> + <script class="gtm"> + var dataLayer = [{ + 'labName': 'Virtual Lab', + 'discipline': 'Test', + 'college': 'IITKGP', + 'phase': 'Testing', + 'expName': 'MONOSTABLE MULTIVIBRATOR USING IC 555', + 'expShortName': 'monostable-multivibrator' + }]; + + (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': + new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], + j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= + 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); + })(window,document,'script','dataLayer','GTM-5NMQ9NQ'); + </script> + <!--End Google Tag Manager--> + <meta charset="utf-8"> + <meta http-equiv="X-UA-Compatible" content="IE=edge"> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <meta content="" name="description"> + <meta content="" name="author"> + + <meta name="experiment-short-name" content="monostable-multivibrator"> + <meta name="developer-institute" content="IITKGP"> + <meta name="learning-unit" content="MONOSTABLE MULTIVIBRATOR USING IC 555"> + <meta name="task-name" content="Pretest"> + + <!-- For iPhone --> + <meta name="msapplication-TileColor" content="#4076e0"> + <!-- Chrome, Firefox OS and Opera --> + <meta name="theme-color" content="#4076e0"> + <!-- Windows Phone --> + <meta name="msapplication-navbutton-color" content="#4076e0"> + <title>Virtual Labs</title> + <link rel="shortcut icon" href="./assets/images/favicon.ico"> + <link rel="stylesheet" href="./assets/css/bootstrap.min.css"> + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/github-markdown-css/4.0.0/github-markdown.min.css" integrity="sha512-Oy18vBnbSJkXTndr2n6lDMO5NN31UljR8e/ICzVPrGpSud4Gkckb8yUpqhKuUNoE+o9gAb4O/rAxxw1ojyUVzg==" crossorigin="anonymous"> + <link href="https://fonts.googleapis.com/css2?family=Open+Sans&family=Raleway&display=swap" rel="stylesheet"> + <link rel="stylesheet" href="./assets/fonts/font-awesome-4.7.0/css/font-awesome.min.css"> + <link rel="stylesheet" href="./assets/css/github-markdown.min.css"> + <link rel="stylesheet" href="./assets/css/vlabs-style.css"> + <link rel="stylesheet" href="./assets/katex_assets/katex.min.css"> + + <script src="./assets/js/jquery-3.4.1.slim.min.js"></script> + <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.5.4/dist/umd/popper.min.js" integrity="sha384-q2kxQ16AaE6UbzuKqyBE9/u/KzioAlnx2maXQHiDX9d4/zp8Ok3f+M7DPm+Ib6IU" crossorigin="anonymous"></script> + <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/js/bootstrap.min.js" integrity="sha384-pQQkAEnwaBkjpqZ8RU1fF1AKtTcHJwFl3pblpTlHXybJjHpMYo79HY3hIi4NKxyj" crossorigin="anonymous"></script> + <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script> + <style> + h1 { + font-size: 1.8rem; + } + h2 { + font-size: 1.4rem; + } + h3 { + font-size: 1.2rem; + } + + h2, h3 { + font-weight: 800; + } + </style> + + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.2.1/css/all.min.css"></head> + <body class="p-0 container-fluid vlabs-page d-flex flex-column justify-content-between"> + <!--Google Tag Manager (noscript)--> + <noscript class="gtm"> + <iframe height="0" src="https://www.googletagmanager.com/ns.html?id=GTM-5NMQ9NQ" style="display:none;visibility:hidden" width="0"> + </iframe> + </noscript> + <!--End Google Tag Manager (noscript)--> + + <header class="vlabs-header sticky-top bg-white"> + <nav class="p-0 navbar navbar-light d-flex align-items-stretch"> + + <button class="navbar-toggler px-4" type="button" onclick="toggle()"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="d-flex justify-content-center"> + <a href="https://vlab.co.in" class="navbar-brand"> + <img src="./assets/images/vlabs-color-small-moe.jpg" alt="vlabs logo" class="vlabs-logo"> + </a> + </div> + + <div id="headerNavbar" class="d-none border-top flex-grow-1 d-lg-flex align-items-center justify-content-end"> + <div class="svc-rating-display"> + <rating-display spreadsheetid="1x12nhpp0QvnsA6x-O1sV4IA9SAbfVsq_wiexWkutOmU" sheetname="Experiment-Database" columnname="Experiment Short Name" columnvalue="monostable-multivibrator" imagesdirectory="./plugins/svc-rating/images/"> + </rating-display> + </div> <div class="svc-rating-submit"> + <rating-submit title="Rate" this="" experiment=""> + </rating-submit> + </div> <bug-report id="bug-report" title="[BUG REPORT] MONOSTABLE MULTIVIBRATOR USING IC 555" page-type="assesment" context-info="{"organisation":"Virtual Labs","developer_institute":"IITKGP","expname":"MONOSTABLE MULTIVIBRATOR USING IC 555","labname":"Virtual Lab","phase":"Testing"}" checkbox-json="{"text":["Insufficient Content"],"video":["Insufficient Content"],"assesment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"assessment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"simulation":["Simulation Not Working","Incorrect Results/Observations","Insufficient/Incorrect Instructions"],"DEFAULT":["Page Not Loading","Content Not Visible","Incorrect Content"]}" button_style="border: none; color: #fff; background-color: #288ec8; text-align: center; font-size: 1.05rem; border-radius: 1em;padding: 0.6em 1.2em; margin: 0 10px" position="override" custom_button_class="v-button"></bug-report> + </div> + </nav> + </header> + <div class="container-fluid flex-fill d-flex flex-column vlabs-page-main"> + <div class="row d-flex justify-content-between"> + <div class="flex-column"> + <div class="row py-4 px-4 breadcrumbs"> + <div class="title is-4 tools">Tools</div> + <span class="mx-2"> + <i aria-hidden="true" class="fa fa-angle-right"></i> + </span> + <a href="performance-report.html" class="my-2 mx-3" target="_blank"> + <button class="v-button">Performance Tool</button> + </a> + <a href="validator-report.html" class="my-2 mx-3" target="_blank"> + <button class="v-button">Validation Tool</button> + </a> + </div> + </div> + </div> + <div class="row flex-grow-1 d-flex flex-nowrap flex-column flex-lg-row"> + <div class="modal fade popupmenu" id="popupMenu" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true"> + <div class="modal-dialog modal-dialog-centered modal-dialog-scrollable"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title" id="exampleModalLabel"> + <a href="https://vlab.co.in" class="navbar-brand"> + <img src="./assets/images/vlabs-color-small-moe.jpg" alt="vlabs logo" class="vlabs-logo"> + </a> + </h5> + <button type="button" class="btn-close align-self-center" data-bs-dismiss="modal" aria-label="Close"></button> + </div> + <div class="modal-body nav-menu"> + <div> + <div class="d-flex nav-menu-body"> + <a href="index.html" class="p-2 "> + Aim + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="theory.html" class="p-2 "> + Theory + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="pretest.html" class="p-2 current-item "> + Pretest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="procedure.html" class="p-2 "> + Procedure + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="simulation.html" class="p-2 "> + Simulation + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="posttest.html" class="p-2 "> + Posttest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="references.html" class="p-2 "> + References + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="contributors.html" class="p-2 "> + Contributors + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="feedback.html" class="p-2 "> + Feedback + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + </div> + </div> + </div> + </div> + <div class="nav flex-column sidebar nav-menu flex-shrink-0 px-lg-4 align-items-center align-items-lg-start hidden d-none d-lg-flex" id="menu"> + <div> + <div class="d-flex nav-menu-body"> + <a href="index.html" class="p-2 "> + Aim + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="theory.html" class="p-2 "> + Theory + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="pretest.html" class="p-2 current-item "> + Pretest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="procedure.html" class="p-2 "> + Procedure + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="simulation.html" class="p-2 "> + Simulation + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="posttest.html" class="p-2 "> + Posttest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="references.html" class="p-2 "> + References + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="contributors.html" class="p-2 "> + Contributors + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="feedback.html" class="p-2 "> + Feedback + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + </div> <div class="vlabs-page-content px-5 pb-4 flex-grow-1 markdown-body"> + <div class="text-center fix-spacing"> + <h2 id="monostable-multivibrator-using-ic-555">Monostable Multivibrator using IC 555</h2> + + </div> + <div id="difficulty-container" style="border-bottom: 1px solid #eaecef; padding-bottom: .3em; margin: 0" class="row"> + <div id="difficulty-label" class="col-12 col-md-3" style="display:none"><strong>Choose difficulty: </strong></div> + <div class="form-check col-12 col-md-3" style="display:none"> + <input id="beginner" type="checkbox" value=""> + <label class="form-check-label" for="flexCheckDefault"> + <strong>Beginner</strong> + </label> + </div> + <div class="form-check col-12 col-md-3" style="display:none"> + <input id="intermediate" type="checkbox" value=""> + <label class="form-check-label" for="flexCheckDefault"> + <strong>Intermediate</strong> + </label> + </div> + <div class="form-check col-12 col-md-3" style="display:none"> + <input id="advanced" type="checkbox" value=""> + <label class="form-check-label" for="flexCheckDefault"> + <strong>Advanced</strong> + </label> + </div> + </div> + + <div id="quiz" class="versiontrue" style="margin-top: 1rem"> + + + <div class="question beginner"> + What is the formula to calculate the time period of the monostable multivibrator. + </div> + + <div class="answers"> + <div id="answer0a"> + <label> + <input type="radio" name="question0" value="a"> + a: T = 0.69 * (R<sub>A</sub> + R<sub>B</sub>) * C + </label> + <a href="#" id="explanation0a" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer0b"> + <label> + <input type="radio" name="question0" value="b"> + b: T = 0.69 * (R<sub>A</sub> + 2R<sub>B</sub>) * C + </label> + <a href="#" id="explanation0b" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer0c"> + <label> + <input type="radio" name="question0" value="c"> + c: T = 0.69 * R<sub>B</sub> * C + </label> + <a href="#" id="explanation0c" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer0d"> + <label> + <input type="radio" name="question0" value="d"> + d: T = 1.1 * R * C + </label> + <a href="#" id="explanation0d" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + </div> + + <div class="question beginner"> + When a capacitor charges: + </div> + + <div class="answers"> + <div id="answer1a"> + <label> + <input type="radio" name="question1" value="a"> + a: the voltage across the plates rises exponentially + </label> + <a href="#" id="explanation1a" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer1b"> + <label> + <input type="radio" name="question1" value="b"> + b: the circuit current falls exponentially + </label> + <a href="#" id="explanation1b" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer1c"> + <label> + <input type="radio" name="question1" value="c"> + c: the capacitor charges to the source voltage in 5×RC seconds + </label> + <a href="#" id="explanation1c" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer1d"> + <label> + <input type="radio" name="question1" value="d"> + d: all of the above + </label> + <a href="#" id="explanation1d" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + </div> + + <div class="question beginner"> + The ________ is defined as the time the output is active divided by the total period of the output signal. + </div> + + <div class="answers"> + <div id="answer2a"> + <label> + <input type="radio" name="question2" value="a"> + a: active ratio + </label> + <a href="#" id="explanation2a" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer2b"> + <label> + <input type="radio" name="question2" value="b"> + b: duty cycle + </label> + <a href="#" id="explanation2b" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer2c"> + <label> + <input type="radio" name="question2" value="c"> + c: on time + </label> + <a href="#" id="explanation2c" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer2d"> + <label> + <input type="radio" name="question2" value="d"> + d: off time + </label> + <a href="#" id="explanation2d" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + </div> + + <div class="question beginner"> + A monostable 555 timer has the following number of stable states: + </div> + + <div class="answers"> + <div id="answer3a"> + <label> + <input type="radio" name="question3" value="a"> + a: 0 + </label> + <a href="#" id="explanation3a" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer3b"> + <label> + <input type="radio" name="question3" value="b"> + b: 1 + </label> + <a href="#" id="explanation3b" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer3c"> + <label> + <input type="radio" name="question3" value="c"> + c: 2 + </label> + <a href="#" id="explanation3c" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer3d"> + <label> + <input type="radio" name="question3" value="d"> + d: 3 + </label> + <a href="#" id="explanation3d" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + </div> + + <div class="question beginner"> + What is the output pulse width of the waveform at the output of the circuit in the given figure? <br><p style="text-align:center"><img src="images/post_quiz1.png " style="width:350px;height:200px"></p> + </div> + + <div class="answers"> + <div id="answer4a"> + <label> + <input type="radio" name="question4" value="a"> + a: 1.65 ms + </label> + <a href="#" id="explanation4a" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer4b"> + <label> + <input type="radio" name="question4" value="b"> + b: 18.2 ms + </label> + <a href="#" id="explanation4b" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer4c"> + <label> + <input type="radio" name="question4" value="c"> + c: 4.98 ms + </label> + <a href="#" id="explanation4c" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + <div id="answer4d"> + <label> + <input type="radio" name="question4" value="d"> + d: 54.6 ms + </label> + <a href="#" id="explanation4d" class="accordion" onclick="return false;">Explanation</a> + </div> + <p class="panel">Explanation</p> + </div> + </div> + <button id="submit" class="btn btn-primary">Submit Quiz</button> + <div id="results"></div> + </div> + + <script> + const myQuestions = [{"question":"What is the formula to calculate the time period of the monostable multivibrator.","answers":{"a":"T = 0.69 * (R<sub>A</sub> + R<sub>B</sub>) * C","b":"T = 0.69 * (R<sub>A</sub> + 2R<sub>B</sub>) * C","c":"T = 0.69 * R<sub>B</sub> * C","d":"T = 1.1 * R * C"},"correctAnswer":"d","difficulty":"beginner"},{"question":"When a capacitor charges:","answers":{"a":" the voltage across the plates rises exponentially","b":"the circuit current falls exponentially","c":"the capacitor charges to the source voltage in 5×RC seconds","d":"all of the above"},"correctAnswer":"d","difficulty":"beginner"},{"question":"The ________ is defined as the time the output is active divided by the total period of the output signal.","answers":{"a":"active ratio","b":"duty cycle","c":"on time","d":"off time"},"correctAnswer":"b","difficulty":"beginner"},{"question":"A monostable 555 timer has the following number of stable states:","answers":{"a":"0","b":"1","c":"2","d":"3"},"correctAnswer":"b","difficulty":"beginner"},{"question":"What is the output pulse width of the waveform at the output of the circuit in the given figure? <br/><p style=\"text-align:center\"><img src=\"images/post_quiz1.png \" style=\"width:350px;height:200px\"></p>","answers":{"a":"1.65 ms","b":"18.2 ms","c":"4.98 ms","d":"54.6 ms"},"correctAnswer":"b","difficulty":"beginner"}]; + </script> + <script src="./assets/js/assessment_v2.js"></script> + <div class="bug-report-mobile"> + <bug-report id="bug-report" title="[BUG REPORT] MONOSTABLE MULTIVIBRATOR USING IC 555" page-type="assesment" context-info="{"organisation":"Virtual Labs","developer_institute":"IITKGP","expname":"MONOSTABLE MULTIVIBRATOR USING IC 555","labname":"Virtual Lab","phase":"Testing"}" checkbox-json="{"text":["Insufficient Content"],"video":["Insufficient Content"],"assesment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"assessment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"simulation":["Simulation Not Working","Incorrect Results/Observations","Insufficient/Incorrect Instructions"],"DEFAULT":["Page Not Loading","Content Not Visible","Incorrect Content"]}" position="override" button_style=" + position: fixed; + bottom: 20px; + right: 20px; + z-index: 1; + font-size: 0; + padding: 25px; + border-radius: 50%; + border: none; + background-color: #0fc0ff; + background-image: url(data:image/png;base64,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); + background-repeat: no-repeat; + background-position: center; + background-size: 30px; + filter: invert(1);"> + </bug-report> + </div> </div> + </div> + <footer class="text-light pt-2 vlabs-footer d-flex flex-column"> + <div class="row px-5 mx-0"> + <div class="col d-flex flex-column"> + <span class="font-weight-bold vlabs-footer-sect-name pb-2 mb-3">Community Links</span> + <a href="https://www.sakshat.ac.in/" class="text-light">Sakshat Portal</a> + <a href="http://outreach.vlabs.ac.in/" class="text-light">Outreach Portal</a> + <a href="https://vlab.co.in/faq" class="text-light">FAQ: Virtual Labs</a> + </div> + <div class="col d-flex flex-column"> + <span class="font-weight-bold vlabs-footer-sect-name pb-2 mb-3">Contact Us</span> + <span> Phone: General Information: 011-26582050 </span> + <span> Email: support@vlabs.ac.in </span> + </div> + <div class="col d-flex flex-column"> + <span class="font-weight-bold vlabs-footer-sect-name pb-2 mb-3">Follow Us</span> + <div class="social-links"> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #55acee;" href="https://twitter.com/TheVirtualLabs"> + <i class="fab fa-twitter"></i> + </a> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #3b5998;" href="https://www.facebook.com/Virtual-Labs-IIT-Delhi-301510159983871/"> + <i class="fab fa-facebook"></i> + </a> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #e52d27;" href="https://www.youtube.com/watch?v=asxRaOgk6a0"> + <i class="fab fa-youtube"></i> + </a> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #2867B2;" href="https://in.linkedin.com/in/virtual-labs-008ba9136"> + <i class="fab fa-linkedin"></i> + </a> + </div> + </div> + </div> + <div class="m-0 py-2 text-center" style="font-family: "Open Sans", sans-serif; background: #212121;"> + <a class="text-primary font-weight-bold" href="https://www.gnu.org/licenses/agpl-3.0.en.html"> AGPL 3.0 </a> + & + <a class="text-primary font-weight-bold" href="https://creativecommons.org/licenses/by-nc-sa/4.0/"> Creative Commons (CC BY-NC-SA 4.0) </a> + </div> + </footer> + <script src="./assets/js/toggleSidebar.js"></script> + <script src="./assets/js/event-handler.js"></script> + + + <script> + if ('serviceWorker' in navigator) { + window.addEventListener('load', () => { + navigator.serviceWorker.register("sw.js"); + }); + } + </script> + + +<script type="module" src="https://virtual-labs.github.io/svc-bug-report/client/src/bug-report.js"></script><script type="module" src="plugins/svc-rating/index.js"></script><script type="module" src="plugins/svc-rating/config.js"></script><script type="module" src="https://apis.google.com/js/api.js"></script></body></html> \ No newline at end of file diff --git a/pretest.json b/pretest.json new file mode 100644 index 0000000..ca093bf --- /dev/null +++ b/pretest.json @@ -0,0 +1,65 @@ +{ + "version": 2.0, + "questions": [ + { + "question": "What is the formula to calculate the time period of the monostable multivibrator.", + "answers": { + "a": "T = 0.69 * (R<sub>A</sub> + R<sub>B</sub>) * C", + "b": "T = 0.69 * (R<sub>A</sub> + 2R<sub>B</sub>) * C", + "c": "T = 0.69 * R<sub>B</sub> * C", + "d": "T = 1.1 * R * C" + }, + + "correctAnswer": "d", + "difficulty": "beginner" + }, + { + "question": "When a capacitor charges:", + "answers": { + "a": " the voltage across the plates rises exponentially", + "b": "the circuit current falls exponentially", + "c": "the capacitor charges to the source voltage in 5×RC seconds", + "d": "all of the above" + }, + + "correctAnswer": "d", + "difficulty": "beginner" + }, + { + "question": "The ________ is defined as the time the output is active divided by the total period of the output signal.", + "answers": { + "a": "active ratio", + "b": "duty cycle", + "c": "on time", + "d": "off time" + }, + + "correctAnswer": "b", + "difficulty": "beginner" + }, + { + "question": "A monostable 555 timer has the following number of stable states:", + "answers": { + "a": "0", + "b": "1", + "c": "2", + "d": "3" + }, + + "correctAnswer": "b", + "difficulty": "beginner" + }, + { + "question": "What is the output pulse width of the waveform at the output of the circuit in the given figure? <br/><p style=\"text-align:center\"><img src=\"images/post_quiz1.png \" style=\"width:350px;height:200px\"></p>", + "answers": { + "a": "1.65 ms", + "b": "18.2 ms", + "c": "4.98 ms", + "d": "54.6 ms" + }, + + "correctAnswer": "b", + "difficulty": "beginner" + } + ] +} diff --git a/procedure.html b/procedure.html new file mode 100644 index 0000000..3490601 --- /dev/null +++ b/procedure.html @@ -0,0 +1,448 @@ +<!DOCTYPE html><html lang="en"><head> + <!--Google Tag Manager--> + <script class="gtm"> + var dataLayer = [{ + 'labName': 'Virtual Lab', + 'discipline': 'Test', + 'college': 'IITKGP', + 'phase': 'Testing', + 'expName': 'MONOSTABLE MULTIVIBRATOR USING IC 555', + 'expShortName': 'monostable-multivibrator' + }]; + + (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': + new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], + j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= + 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); + })(window,document,'script','dataLayer','GTM-5NMQ9NQ'); + </script> + <!--End Google Tag Manager--> + <meta charset="utf-8"> + <meta http-equiv="X-UA-Compatible" content="IE=edge"> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <meta content="" name="description"> + <meta content="" name="author"> + + <meta name="experiment-short-name" content="monostable-multivibrator"> + <meta name="developer-institute" content="IITKGP"> + <meta name="learning-unit" content="MONOSTABLE MULTIVIBRATOR USING IC 555"> + <meta name="task-name" content="Procedure"> + + <!-- For iPhone --> + <meta name="msapplication-TileColor" content="#4076e0"> + <!-- Chrome, Firefox OS and Opera --> + <meta name="theme-color" content="#4076e0"> + <!-- Windows Phone --> + <meta name="msapplication-navbutton-color" content="#4076e0"> + <title>Virtual Labs</title> + <link rel="shortcut icon" href="./assets/images/favicon.ico"> + <link rel="stylesheet" href="./assets/css/bootstrap.min.css"> + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/github-markdown-css/4.0.0/github-markdown.min.css" integrity="sha512-Oy18vBnbSJkXTndr2n6lDMO5NN31UljR8e/ICzVPrGpSud4Gkckb8yUpqhKuUNoE+o9gAb4O/rAxxw1ojyUVzg==" crossorigin="anonymous"> + <link href="https://fonts.googleapis.com/css2?family=Open+Sans&family=Raleway&display=swap" rel="stylesheet"> + <link rel="stylesheet" href="./assets/fonts/font-awesome-4.7.0/css/font-awesome.min.css"> + <link rel="stylesheet" href="./assets/css/github-markdown.min.css"> + <link rel="stylesheet" href="./assets/css/vlabs-style.css"> + <link rel="stylesheet" href="./assets/katex_assets/katex.min.css"> + + <script src="./assets/js/jquery-3.4.1.slim.min.js"></script> + <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.5.4/dist/umd/popper.min.js" integrity="sha384-q2kxQ16AaE6UbzuKqyBE9/u/KzioAlnx2maXQHiDX9d4/zp8Ok3f+M7DPm+Ib6IU" crossorigin="anonymous"></script> + <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/js/bootstrap.min.js" integrity="sha384-pQQkAEnwaBkjpqZ8RU1fF1AKtTcHJwFl3pblpTlHXybJjHpMYo79HY3hIi4NKxyj" crossorigin="anonymous"></script> + <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script> + <style> + h1 { + font-size: 1.8rem; + } + h2 { + font-size: 1.4rem; + } + h3 { + font-size: 1.2rem; + } + + h2, h3 { + font-weight: 800; + } + </style> + + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.2.1/css/all.min.css"></head> + <body class="p-0 container-fluid vlabs-page d-flex flex-column justify-content-between"> + <!--Google Tag Manager (noscript)--> + <noscript class="gtm"> + <iframe height="0" src="https://www.googletagmanager.com/ns.html?id=GTM-5NMQ9NQ" style="display:none;visibility:hidden" width="0"> + </iframe> + </noscript> + <!--End Google Tag Manager (noscript)--> + + <header class="vlabs-header sticky-top bg-white"> + <nav class="p-0 navbar navbar-light d-flex align-items-stretch"> + + <button class="navbar-toggler px-4" type="button" onclick="toggle()"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="d-flex justify-content-center"> + <a href="https://vlab.co.in" class="navbar-brand"> + <img src="./assets/images/vlabs-color-small-moe.jpg" alt="vlabs logo" class="vlabs-logo"> + </a> + </div> + + <div id="headerNavbar" class="d-none border-top flex-grow-1 d-lg-flex align-items-center justify-content-end"> + <div class="svc-rating-display"> + <rating-display spreadsheetid="1x12nhpp0QvnsA6x-O1sV4IA9SAbfVsq_wiexWkutOmU" sheetname="Experiment-Database" columnname="Experiment Short Name" columnvalue="monostable-multivibrator" imagesdirectory="./plugins/svc-rating/images/"> + </rating-display> + </div> <div class="svc-rating-submit"> + <rating-submit title="Rate" this="" experiment=""> + </rating-submit> + </div> <bug-report id="bug-report" title="[BUG REPORT] MONOSTABLE MULTIVIBRATOR USING IC 555" page-type="text" context-info="{"organisation":"Virtual Labs","developer_institute":"IITKGP","expname":"MONOSTABLE MULTIVIBRATOR USING IC 555","labname":"Virtual Lab","phase":"Testing"}" checkbox-json="{"text":["Insufficient Content"],"video":["Insufficient Content"],"assesment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"assessment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"simulation":["Simulation Not Working","Incorrect Results/Observations","Insufficient/Incorrect Instructions"],"DEFAULT":["Page Not Loading","Content Not Visible","Incorrect Content"]}" button_style="border: none; color: #fff; background-color: #288ec8; text-align: center; font-size: 1.05rem; border-radius: 1em;padding: 0.6em 1.2em; margin: 0 10px" position="override" custom_button_class="v-button"></bug-report> + </div> + </nav> + </header> + <div class="container-fluid flex-fill d-flex flex-column vlabs-page-main"> + <div class="row d-flex justify-content-between"> + <div class="flex-column"> + <div class="row py-4 px-4 breadcrumbs"> + <div class="title is-4 tools">Tools</div> + <span class="mx-2"> + <i aria-hidden="true" class="fa fa-angle-right"></i> + </span> + <a href="performance-report.html" class="my-2 mx-3" target="_blank"> + <button class="v-button">Performance Tool</button> + </a> + <a href="validator-report.html" class="my-2 mx-3" target="_blank"> + <button class="v-button">Validation Tool</button> + </a> + </div> + </div> + </div> + <div class="row flex-grow-1 d-flex flex-nowrap flex-column flex-lg-row"> + <div class="modal fade popupmenu" id="popupMenu" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true"> + <div class="modal-dialog modal-dialog-centered modal-dialog-scrollable"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title" id="exampleModalLabel"> + <a href="https://vlab.co.in" class="navbar-brand"> + <img src="./assets/images/vlabs-color-small-moe.jpg" alt="vlabs logo" class="vlabs-logo"> + </a> + </h5> + <button type="button" class="btn-close align-self-center" data-bs-dismiss="modal" aria-label="Close"></button> + </div> + <div class="modal-body nav-menu"> + <div> + <div class="d-flex nav-menu-body"> + <a href="index.html" class="p-2 "> + Aim + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="theory.html" class="p-2 "> + Theory + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="pretest.html" class="p-2 "> + Pretest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="procedure.html" class="p-2 current-item "> + Procedure + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="simulation.html" class="p-2 "> + Simulation + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="posttest.html" class="p-2 "> + Posttest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="references.html" class="p-2 "> + References + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="contributors.html" class="p-2 "> + Contributors + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="feedback.html" class="p-2 "> + Feedback + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + </div> + </div> + </div> + </div> + <div class="nav flex-column sidebar nav-menu flex-shrink-0 px-lg-4 align-items-center align-items-lg-start hidden d-none d-lg-flex" id="menu"> + <div> + <div class="d-flex nav-menu-body"> + <a href="index.html" class="p-2 "> + Aim + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="theory.html" class="p-2 "> + Theory + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="pretest.html" class="p-2 "> + Pretest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="procedure.html" class="p-2 current-item "> + Procedure + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="simulation.html" class="p-2 "> + Simulation + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="posttest.html" class="p-2 "> + Posttest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="references.html" class="p-2 "> + References + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="contributors.html" class="p-2 "> + Contributors + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="feedback.html" class="p-2 "> + Feedback + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + </div> <div class="vlabs-page-content px-5 pb-4 flex-grow-1 markdown-body"> + <div class="text-center fix-spacing"> + <h2 id="monostable-multivibrator-using-ic-555">Monostable Multivibrator using IC 555</h2> + + </div> + <h2 id="procedure">Procedure</h2> + <h4 id="monostable-multivibrator-using-555">Monostable Multivibrator using 555</h4> + <ol> + <li>Connect the components as mentioned below: + L1-L12, L14-L12, L16-L12, L4-L9, L8-L9, L9-L10, L3-L17, L11-L13, L7-L11, L6-L13, L5-L15.(For eg. click on 1 and then drag to 12 and so on.)</li> + <li>Click on 'Check Connection' button to check the connections.</li> + <li>If connected wrong, click on the wrong connection. Else click on 'Delete all connection' button to erase all the connections.</li> + <li>Intially set R <sub>a</sub>=10 kΩ, C=1 µf, V<sub>cc</sub>=5 V, T<sub>in</sub> = 20 msec.</li> + <li>Click on "Calculate" button.</li> + <li>Now note the output voltage.</li> + <li>Click on "Plot" button to plot, Trigger Input Voltage, Output Voltage, Capacitance Voltage</li> + <li>Click on "Clear" button to clear the data.</li> + <li>Repeat the experiment for another set of resistance value and capacitance value.</li> + <li>Set the Resistance (R <sub>a</sub>) value (1 kΩ - 10 kΩ).</li> + <li>Set the Capacitance (C) value .</li> + <li>Set supply voltage (V<sub>cc</sub>).</li> + </ol> + <div align="center"> + <img src="images/monostable_prc.png" width="50%"> + <p>Figure 1</p> + </div> + + </div> + <div class="bug-report-mobile"> + <bug-report id="bug-report" title="[BUG REPORT] MONOSTABLE MULTIVIBRATOR USING IC 555" page-type="text" context-info="{"organisation":"Virtual Labs","developer_institute":"IITKGP","expname":"MONOSTABLE MULTIVIBRATOR USING IC 555","labname":"Virtual Lab","phase":"Testing"}" checkbox-json="{"text":["Insufficient Content"],"video":["Insufficient Content"],"assesment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"assessment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"simulation":["Simulation Not Working","Incorrect Results/Observations","Insufficient/Incorrect Instructions"],"DEFAULT":["Page Not Loading","Content Not Visible","Incorrect Content"]}" position="override" button_style=" + position: fixed; + bottom: 20px; + right: 20px; + z-index: 1; + font-size: 0; + padding: 25px; + border-radius: 50%; + border: none; + background-color: #0fc0ff; + background-image: url(data:image/png;base64,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); + background-repeat: no-repeat; + background-position: center; + background-size: 30px; + filter: invert(1);"> + </bug-report> + </div> </div> + </div> + <footer class="text-light pt-2 vlabs-footer d-flex flex-column"> + <div class="row px-5 mx-0"> + <div class="col d-flex flex-column"> + <span class="font-weight-bold vlabs-footer-sect-name pb-2 mb-3">Community Links</span> + <a href="https://www.sakshat.ac.in/" class="text-light">Sakshat Portal</a> + <a href="http://outreach.vlabs.ac.in/" class="text-light">Outreach Portal</a> + <a href="https://vlab.co.in/faq" class="text-light">FAQ: Virtual Labs</a> + </div> + <div class="col d-flex flex-column"> + <span class="font-weight-bold vlabs-footer-sect-name pb-2 mb-3">Contact Us</span> + <span> Phone: General Information: 011-26582050 </span> + <span> Email: support@vlabs.ac.in </span> + </div> + <div class="col d-flex flex-column"> + <span class="font-weight-bold vlabs-footer-sect-name pb-2 mb-3">Follow Us</span> + <div class="social-links"> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #55acee;" href="https://twitter.com/TheVirtualLabs"> + <i class="fab fa-twitter"></i> + </a> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #3b5998;" href="https://www.facebook.com/Virtual-Labs-IIT-Delhi-301510159983871/"> + <i class="fab fa-facebook"></i> + </a> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #e52d27;" href="https://www.youtube.com/watch?v=asxRaOgk6a0"> + <i class="fab fa-youtube"></i> + </a> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #2867B2;" href="https://in.linkedin.com/in/virtual-labs-008ba9136"> + <i class="fab fa-linkedin"></i> + </a> + </div> + </div> + </div> + <div class="m-0 py-2 text-center" style="font-family: "Open Sans", sans-serif; background: #212121;"> + <a class="text-primary font-weight-bold" href="https://www.gnu.org/licenses/agpl-3.0.en.html"> AGPL 3.0 </a> + & + <a class="text-primary font-weight-bold" href="https://creativecommons.org/licenses/by-nc-sa/4.0/"> Creative Commons (CC BY-NC-SA 4.0) </a> + </div> + </footer> + <script src="./assets/js/toggleSidebar.js"></script> + <script src="./assets/js/event-handler.js"></script> + + + <script> + if ('serviceWorker' in navigator) { + window.addEventListener('load', () => { + navigator.serviceWorker.register("sw.js"); + }); + } + </script> + + +<script type="module" src="https://virtual-labs.github.io/svc-bug-report/client/src/bug-report.js"></script><script type="module" src="plugins/svc-rating/index.js"></script><script type="module" src="plugins/svc-rating/config.js"></script><script type="module" src="https://apis.google.com/js/api.js"></script></body></html> \ No newline at end of file diff --git a/procedure.md b/procedure.md new file mode 100644 index 0000000..ba80495 --- /dev/null +++ b/procedure.md @@ -0,0 +1,21 @@ +## Procedure + +#### Monostable Multivibrator using 555 +1. Connect the components as mentioned below: +L1-L12, L14-L12, L16-L12, L4-L9, L8-L9, L9-L10, L3-L17, L11-L13, L7-L11, L6-L13, L5-L15.(For eg. click on 1 and then drag to 12 and so on.) +2. Click on 'Check Connection' button to check the connections. +3. If connected wrong, click on the wrong connection. Else click on 'Delete all connection' button to erase all the connections. +4. Intially set R <sub>a</sub>=10 kΩ, C=1 µf, V<sub>cc</sub>=5 V, T<sub>in</sub> = 20 msec. +5. Click on "Calculate" button. +6. Now note the output voltage. +7. Click on "Plot" button to plot, Trigger Input Voltage, Output Voltage, Capacitance Voltage +8. Click on "Clear" button to clear the data. +9. Repeat the experiment for another set of resistance value and capacitance value. +10. Set the Resistance (R <sub>a</sub>) value (1 kΩ - 10 kΩ). +11. Set the Capacitance (C) value . +12. Set supply voltage (V<sub>cc</sub>). + +<div align="center"> +<img src="images/monostable_prc.png" width="50%"> +<p>Figure 1</p> +</div> diff --git a/references.html b/references.html new file mode 100644 index 0000000..81c6981 --- /dev/null +++ b/references.html @@ -0,0 +1,436 @@ +<!DOCTYPE html><html lang="en"><head> + <!--Google Tag Manager--> + <script class="gtm"> + var dataLayer = [{ + 'labName': 'Virtual Lab', + 'discipline': 'Test', + 'college': 'IITKGP', + 'phase': 'Testing', + 'expName': 'MONOSTABLE MULTIVIBRATOR USING IC 555', + 'expShortName': 'monostable-multivibrator' + }]; + + (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': + new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], + j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= + 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); + })(window,document,'script','dataLayer','GTM-5NMQ9NQ'); + </script> + <!--End Google Tag Manager--> + <meta charset="utf-8"> + <meta http-equiv="X-UA-Compatible" content="IE=edge"> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <meta content="" name="description"> + <meta content="" name="author"> + + <meta name="experiment-short-name" content="monostable-multivibrator"> + <meta name="developer-institute" content="IITKGP"> + <meta name="learning-unit" content="MONOSTABLE MULTIVIBRATOR USING IC 555"> + <meta name="task-name" content="References"> + + <!-- For iPhone --> + <meta name="msapplication-TileColor" content="#4076e0"> + <!-- Chrome, Firefox OS and Opera --> + <meta name="theme-color" content="#4076e0"> + <!-- Windows Phone --> + <meta name="msapplication-navbutton-color" content="#4076e0"> + <title>Virtual Labs</title> + <link rel="shortcut icon" href="./assets/images/favicon.ico"> + <link rel="stylesheet" href="./assets/css/bootstrap.min.css"> + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/github-markdown-css/4.0.0/github-markdown.min.css" integrity="sha512-Oy18vBnbSJkXTndr2n6lDMO5NN31UljR8e/ICzVPrGpSud4Gkckb8yUpqhKuUNoE+o9gAb4O/rAxxw1ojyUVzg==" crossorigin="anonymous"> + <link href="https://fonts.googleapis.com/css2?family=Open+Sans&family=Raleway&display=swap" rel="stylesheet"> + <link rel="stylesheet" href="./assets/fonts/font-awesome-4.7.0/css/font-awesome.min.css"> + <link rel="stylesheet" href="./assets/css/github-markdown.min.css"> + <link rel="stylesheet" href="./assets/css/vlabs-style.css"> + <link rel="stylesheet" href="./assets/katex_assets/katex.min.css"> + + <script src="./assets/js/jquery-3.4.1.slim.min.js"></script> + <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.5.4/dist/umd/popper.min.js" integrity="sha384-q2kxQ16AaE6UbzuKqyBE9/u/KzioAlnx2maXQHiDX9d4/zp8Ok3f+M7DPm+Ib6IU" crossorigin="anonymous"></script> + <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/js/bootstrap.min.js" integrity="sha384-pQQkAEnwaBkjpqZ8RU1fF1AKtTcHJwFl3pblpTlHXybJjHpMYo79HY3hIi4NKxyj" crossorigin="anonymous"></script> + <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script> + <style> + h1 { + font-size: 1.8rem; + } + h2 { + font-size: 1.4rem; + } + h3 { + font-size: 1.2rem; + } + + h2, h3 { + font-weight: 800; + } + </style> + + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.2.1/css/all.min.css"></head> + <body class="p-0 container-fluid vlabs-page d-flex flex-column justify-content-between"> + <!--Google Tag Manager (noscript)--> + <noscript class="gtm"> + <iframe height="0" src="https://www.googletagmanager.com/ns.html?id=GTM-5NMQ9NQ" style="display:none;visibility:hidden" width="0"> + </iframe> + </noscript> + <!--End Google Tag Manager (noscript)--> + + <header class="vlabs-header sticky-top bg-white"> + <nav class="p-0 navbar navbar-light d-flex align-items-stretch"> + + <button class="navbar-toggler px-4" type="button" onclick="toggle()"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="d-flex justify-content-center"> + <a href="https://vlab.co.in" class="navbar-brand"> + <img src="./assets/images/vlabs-color-small-moe.jpg" alt="vlabs logo" class="vlabs-logo"> + </a> + </div> + + <div id="headerNavbar" class="d-none border-top flex-grow-1 d-lg-flex align-items-center justify-content-end"> + <div class="svc-rating-display"> + <rating-display spreadsheetid="1x12nhpp0QvnsA6x-O1sV4IA9SAbfVsq_wiexWkutOmU" sheetname="Experiment-Database" columnname="Experiment Short Name" columnvalue="monostable-multivibrator" imagesdirectory="./plugins/svc-rating/images/"> + </rating-display> + </div> <div class="svc-rating-submit"> + <rating-submit title="Rate" this="" experiment=""> + </rating-submit> + </div> <bug-report id="bug-report" title="[BUG REPORT] MONOSTABLE MULTIVIBRATOR USING IC 555" page-type="text" context-info="{"organisation":"Virtual Labs","developer_institute":"IITKGP","expname":"MONOSTABLE MULTIVIBRATOR USING IC 555","labname":"Virtual Lab","phase":"Testing"}" checkbox-json="{"text":["Insufficient Content"],"video":["Insufficient Content"],"assesment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"assessment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"simulation":["Simulation Not Working","Incorrect Results/Observations","Insufficient/Incorrect Instructions"],"DEFAULT":["Page Not Loading","Content Not Visible","Incorrect Content"]}" button_style="border: none; color: #fff; background-color: #288ec8; text-align: center; font-size: 1.05rem; border-radius: 1em;padding: 0.6em 1.2em; margin: 0 10px" position="override" custom_button_class="v-button"></bug-report> + </div> + </nav> + </header> + <div class="container-fluid flex-fill d-flex flex-column vlabs-page-main"> + <div class="row d-flex justify-content-between"> + <div class="flex-column"> + <div class="row py-4 px-4 breadcrumbs"> + <div class="title is-4 tools">Tools</div> + <span class="mx-2"> + <i aria-hidden="true" class="fa fa-angle-right"></i> + </span> + <a href="performance-report.html" class="my-2 mx-3" target="_blank"> + <button class="v-button">Performance Tool</button> + </a> + <a href="validator-report.html" class="my-2 mx-3" target="_blank"> + <button class="v-button">Validation Tool</button> + </a> + </div> + </div> + </div> + <div class="row flex-grow-1 d-flex flex-nowrap flex-column flex-lg-row"> + <div class="modal fade popupmenu" id="popupMenu" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true"> + <div class="modal-dialog modal-dialog-centered modal-dialog-scrollable"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title" id="exampleModalLabel"> + <a href="https://vlab.co.in" class="navbar-brand"> + <img src="./assets/images/vlabs-color-small-moe.jpg" alt="vlabs logo" class="vlabs-logo"> + </a> + </h5> + <button type="button" class="btn-close align-self-center" data-bs-dismiss="modal" aria-label="Close"></button> + </div> + <div class="modal-body nav-menu"> + <div> + <div class="d-flex nav-menu-body"> + <a href="index.html" class="p-2 "> + Aim + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="theory.html" class="p-2 "> + Theory + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="pretest.html" class="p-2 "> + Pretest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="procedure.html" class="p-2 "> + Procedure + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="simulation.html" class="p-2 "> + Simulation + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="posttest.html" class="p-2 "> + Posttest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="references.html" class="p-2 current-item "> + References + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="contributors.html" class="p-2 "> + Contributors + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="feedback.html" class="p-2 "> + Feedback + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + </div> + </div> + </div> + </div> + <div class="nav flex-column sidebar nav-menu flex-shrink-0 px-lg-4 align-items-center align-items-lg-start hidden d-none d-lg-flex" id="menu"> + <div> + <div class="d-flex nav-menu-body"> + <a href="index.html" class="p-2 "> + Aim + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="theory.html" class="p-2 "> + Theory + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="pretest.html" class="p-2 "> + Pretest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="procedure.html" class="p-2 "> + Procedure + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="simulation.html" class="p-2 "> + Simulation + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="posttest.html" class="p-2 "> + Posttest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="references.html" class="p-2 current-item "> + References + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="contributors.html" class="p-2 "> + Contributors + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="feedback.html" class="p-2 "> + Feedback + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + </div> <div class="vlabs-page-content px-5 pb-4 flex-grow-1 markdown-body"> + <div class="text-center fix-spacing"> + <h2 id="monostable-multivibrator-using-ic-555">Monostable Multivibrator using IC 555</h2> + + </div> + <h2 id="references">References</h2> + <h4 id="books">Books</h4> + <ol> + <li>Boylestad / Nashelsky, Electronic Devices and Circuit Theory , Pearson Education India; 11 edition (2015)</li> + <li>Adel S. Sedra , Kenneth C. Smith , Arun N. Chandorkar , Microelectronic Circuits: Theory And Applications,Oxford University Press ,Seventh Edition, (1 June 2017)</li> + <li>Donald Neamen, Electronic Circuits: Analysis and Design, McGraw Hill Education; 3 edition (25 August 2006)</li> + <li>Jacob Millman , Christos Halkias , Chetan Parikh , Millman's Integrated Electronics, McGraw Hill Education; 2 edition (1 July 2017)</li> + <li>B.G. Streetman and S. Banerjee, Solid State Electronic Devices, Prentice Hall.</li> + </ol> + + </div> + <div class="bug-report-mobile"> + <bug-report id="bug-report" title="[BUG REPORT] MONOSTABLE MULTIVIBRATOR USING IC 555" page-type="text" context-info="{"organisation":"Virtual Labs","developer_institute":"IITKGP","expname":"MONOSTABLE MULTIVIBRATOR USING IC 555","labname":"Virtual Lab","phase":"Testing"}" checkbox-json="{"text":["Insufficient Content"],"video":["Insufficient Content"],"assesment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"assessment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"simulation":["Simulation Not Working","Incorrect Results/Observations","Insufficient/Incorrect Instructions"],"DEFAULT":["Page Not Loading","Content Not Visible","Incorrect Content"]}" position="override" button_style=" + position: fixed; + bottom: 20px; + right: 20px; + z-index: 1; + font-size: 0; + padding: 25px; + border-radius: 50%; + border: none; + background-color: #0fc0ff; + background-image: url(data:image/png;base64,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); + background-repeat: no-repeat; + background-position: center; + background-size: 30px; + filter: invert(1);"> + </bug-report> + </div> </div> + </div> + <footer class="text-light pt-2 vlabs-footer d-flex flex-column"> + <div class="row px-5 mx-0"> + <div class="col d-flex flex-column"> + <span class="font-weight-bold vlabs-footer-sect-name pb-2 mb-3">Community Links</span> + <a href="https://www.sakshat.ac.in/" class="text-light">Sakshat Portal</a> + <a href="http://outreach.vlabs.ac.in/" class="text-light">Outreach Portal</a> + <a href="https://vlab.co.in/faq" class="text-light">FAQ: Virtual Labs</a> + </div> + <div class="col d-flex flex-column"> + <span class="font-weight-bold vlabs-footer-sect-name pb-2 mb-3">Contact Us</span> + <span> Phone: General Information: 011-26582050 </span> + <span> Email: support@vlabs.ac.in </span> + </div> + <div class="col d-flex flex-column"> + <span class="font-weight-bold vlabs-footer-sect-name pb-2 mb-3">Follow Us</span> + <div class="social-links"> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #55acee;" href="https://twitter.com/TheVirtualLabs"> + <i class="fab fa-twitter"></i> + </a> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #3b5998;" href="https://www.facebook.com/Virtual-Labs-IIT-Delhi-301510159983871/"> + <i class="fab fa-facebook"></i> + </a> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #e52d27;" href="https://www.youtube.com/watch?v=asxRaOgk6a0"> + <i class="fab fa-youtube"></i> + </a> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #2867B2;" href="https://in.linkedin.com/in/virtual-labs-008ba9136"> + <i class="fab fa-linkedin"></i> + </a> + </div> + </div> + </div> + <div class="m-0 py-2 text-center" style="font-family: "Open Sans", sans-serif; background: #212121;"> + <a class="text-primary font-weight-bold" href="https://www.gnu.org/licenses/agpl-3.0.en.html"> AGPL 3.0 </a> + & + <a class="text-primary font-weight-bold" href="https://creativecommons.org/licenses/by-nc-sa/4.0/"> Creative Commons (CC BY-NC-SA 4.0) </a> + </div> + </footer> + <script src="./assets/js/toggleSidebar.js"></script> + <script src="./assets/js/event-handler.js"></script> + + + <script> + if ('serviceWorker' in navigator) { + window.addEventListener('load', () => { + navigator.serviceWorker.register("sw.js"); + }); + } + </script> + + +<script type="module" src="https://virtual-labs.github.io/svc-bug-report/client/src/bug-report.js"></script><script type="module" src="plugins/svc-rating/index.js"></script><script type="module" src="plugins/svc-rating/config.js"></script><script type="module" src="https://apis.google.com/js/api.js"></script></body></html> \ No newline at end of file diff --git a/references.md b/references.md new file mode 100644 index 0000000..3259144 --- /dev/null +++ b/references.md @@ -0,0 +1,8 @@ +## References + +#### Books +1. Boylestad / Nashelsky, Electronic Devices and Circuit Theory , Pearson Education India; 11 edition (2015) +2. Adel S. Sedra , Kenneth C. Smith , Arun N. Chandorkar , Microelectronic Circuits: Theory And Applications,Oxford University Press ,Seventh Edition, (1 June 2017) +3. Donald Neamen, Electronic Circuits: Analysis and Design, McGraw Hill Education; 3 edition (25 August 2006) +4. Jacob Millman , Christos Halkias , Chetan Parikh , Millman's Integrated Electronics, McGraw Hill Education; 2 edition (1 July 2017) +5. B.G. Streetman and S. Banerjee, Solid State Electronic Devices, Prentice Hall. \ No newline at end of file diff --git a/simulation.html b/simulation.html new file mode 100644 index 0000000..061764c --- /dev/null +++ b/simulation.html @@ -0,0 +1,384 @@ +<!DOCTYPE html><html lang="en"><head> + <!--Google Tag Manager--> + <script class="gtm"> + var dataLayer = [{ + 'labName': 'Virtual Lab', + 'discipline': 'Test', + 'college': 'IITKGP', + 'phase': 'Testing', + 'expName': 'MONOSTABLE MULTIVIBRATOR USING IC 555', + 'expShortName': 'monostable-multivibrator' + }]; + + (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': + new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], + j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= + 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); + })(window,document,'script','dataLayer','GTM-5NMQ9NQ'); + </script> + <!--End Google Tag Manager--> + <meta charset="utf-8"> + <meta http-equiv="X-UA-Compatible" content="IE=edge"> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <meta content="" name="description"> + <meta content="" name="author"> + + <meta name="experiment-short-name" content="monostable-multivibrator"> + <meta name="developer-institute" content="IITKGP"> + <meta name="learning-unit" content="MONOSTABLE MULTIVIBRATOR USING IC 555"> + <meta name="task-name" content="Simulation"> + + <!-- For iPhone --> + <meta name="msapplication-TileColor" content="#4076e0"> + <!-- Chrome, Firefox OS and Opera --> + <meta name="theme-color" content="#4076e0"> + <!-- Windows Phone --> + <meta name="msapplication-navbutton-color" content="#4076e0"> + <title>Virtual Labs</title> + <link rel="shortcut icon" href="./assets/images/favicon.ico"> + <link rel="stylesheet" href="./assets/css/bootstrap.min.css"> + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/github-markdown-css/4.0.0/github-markdown.min.css" integrity="sha512-Oy18vBnbSJkXTndr2n6lDMO5NN31UljR8e/ICzVPrGpSud4Gkckb8yUpqhKuUNoE+o9gAb4O/rAxxw1ojyUVzg==" crossorigin="anonymous"> + <link href="https://fonts.googleapis.com/css2?family=Open+Sans&family=Raleway&display=swap" rel="stylesheet"> + <link rel="stylesheet" href="./assets/fonts/font-awesome-4.7.0/css/font-awesome.min.css"> + <link rel="stylesheet" href="./assets/css/github-markdown.min.css"> + <link rel="stylesheet" href="./assets/css/vlabs-style.css"> + <link rel="stylesheet" href="./assets/katex_assets/katex.min.css"> + + <script src="./assets/js/jquery-3.4.1.slim.min.js"></script> + <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.5.4/dist/umd/popper.min.js" integrity="sha384-q2kxQ16AaE6UbzuKqyBE9/u/KzioAlnx2maXQHiDX9d4/zp8Ok3f+M7DPm+Ib6IU" crossorigin="anonymous"></script> + <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/js/bootstrap.min.js" integrity="sha384-pQQkAEnwaBkjpqZ8RU1fF1AKtTcHJwFl3pblpTlHXybJjHpMYo79HY3hIi4NKxyj" crossorigin="anonymous"></script> + <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script> + <style> + h1 { + font-size: 1.8rem; + } + h2 { + font-size: 1.4rem; + } + h3 { + font-size: 1.2rem; + } + + h2, h3 { + font-weight: 800; + } + </style> + + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.2.1/css/all.min.css"></head> + <body class="p-0 container-fluid vlabs-page d-flex flex-column justify-content-between"> + <!--Google Tag Manager (noscript)--> + <noscript class="gtm"> + <iframe height="0" src="https://www.googletagmanager.com/ns.html?id=GTM-5NMQ9NQ" style="display:none;visibility:hidden" width="0"> + </iframe> + </noscript> + <!--End Google Tag Manager (noscript)--> + + <div class="container-fluid flex-fill d-flex flex-column vlabs-page-main"> + <div class="row flex-grow-1 d-flex flex-nowrap flex-column flex-lg-row"> + <div class="modal fade popupmenu" id="popupMenu" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true"> + <div class="modal-dialog modal-dialog-centered modal-dialog-scrollable"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title" id="exampleModalLabel"> + <a href="https://vlab.co.in" class="navbar-brand"> + <img src="./assets/images/vlabs-color-small-moe.jpg" alt="vlabs logo" class="vlabs-logo"> + </a> + </h5> + <button type="button" class="btn-close align-self-center" data-bs-dismiss="modal" aria-label="Close"></button> + </div> + <div class="modal-body nav-menu"> + <div> + <div class="d-flex nav-menu-body"> + <a href="index.html" class="p-2 "> + Aim + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="theory.html" class="p-2 "> + Theory + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="pretest.html" class="p-2 "> + Pretest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="procedure.html" class="p-2 "> + Procedure + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="simulation.html" class="p-2 current-item "> + Simulation + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="posttest.html" class="p-2 "> + Posttest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="references.html" class="p-2 "> + References + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="contributors.html" class="p-2 "> + Contributors + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="feedback.html" class="p-2 "> + Feedback + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + </div> + </div> + </div> + </div> + <div class="vlabs-page-content pb-4 flex-grow-1 markdown-body"> + <div class="text-center px-5 fix-spacing"> + <h2 id="monostable-multivibrator-using-ic-555">Monostable Multivibrator using IC 555</h2> + + </div> + <div class="simulation-container"> + <button type="button" id="toggle-menu-float-button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#popupMenu"> + <div class="toggle-menu-icon"></div> + </button> + <header class="vlabs-header bg-white simulation-header p-0 navbar navbar-light d-flex align-items-center justify-content-start"> + <div class="align-self-stretch d-flex expand-1 align-items-center"> + <div class="dropdown align-self-stretch"> + <button class="navbar-toggler px-4 h-100" type="button" onclick="simulationHeaderToggle()"> + <span class="navbar-toggler-icon"></span> + </button> + <div class="backdrop vlabs-hidden"> + <div class="nav-menu "> + <div> + <div class="d-flex nav-menu-body"> + <a href="index.html" class="p-2 "> + Aim + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="theory.html" class="p-2 "> + Theory + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="pretest.html" class="p-2 "> + Pretest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="procedure.html" class="p-2 "> + Procedure + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="simulation.html" class="p-2 current-item "> + Simulation + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="posttest.html" class="p-2 "> + Posttest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="references.html" class="p-2 "> + References + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="contributors.html" class="p-2 "> + Contributors + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="feedback.html" class="p-2 "> + Feedback + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + </div> + </div> + </div> + <a href="https://vlab.co.in" class="navbar-brand"> + <img src="./assets/images/vlabs-color-small-moe.jpg" alt="vlabs logo" class="vlabs-logo"> + </a> + </div> + + <h2 id="monostable-multivibrator-using-ic-555">Monostable Multivibrator using IC 555</h2> + + + <div style="display: flex; justify-content: flex-end;"> + <div class="svc-rating-display"> + <rating-display spreadsheetid="1x12nhpp0QvnsA6x-O1sV4IA9SAbfVsq_wiexWkutOmU" sheetname="Experiment-Database" columnname="Experiment Short Name" columnvalue="monostable-multivibrator" imagesdirectory="./plugins/svc-rating/images/"> + </rating-display> + </div> <div class="svc-rating-submit"> + <rating-submit title="Rate" this="" experiment=""> + </rating-submit> + </div> <bug-report id="bug-report" title="[BUG REPORT] Virtual Labs MONOSTABLE MULTIVIBRATOR USING IC 555" page-type="simulation" context-info="{"organisation":"Virtual Labs","developer_institute":"IITKGP","expname":"MONOSTABLE MULTIVIBRATOR USING IC 555","labname":"Virtual Lab","phase":"Testing"}" checkbox-json="{"text":["Insufficient Content"],"video":["Insufficient Content"],"assesment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"assessment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"simulation":["Simulation Not Working","Incorrect Results/Observations","Insufficient/Incorrect Instructions"],"DEFAULT":["Page Not Loading","Content Not Visible","Incorrect Content"]}" button_style="border: none; color: #fff; background-color: #288ec8; text-align: center; font-size: 1.05rem; border-radius: 1em; padding: 0.6em 1.2em; margin: 0 10px" position="override" custom_button_class="v-button" style="display: flex; align-items: center;"></bug-report> + </div> + </header> + <iframe class="responsive-iframe" id="fraDisabled" src="simulation/monostable_multivibrator.html" frameborder="0" onmyload="disableContextMenu();"> + </iframe> + </div> + </div> + <div class="bug-report-mobile"> + <bug-report id="bug-report" title="[BUG REPORT] MONOSTABLE MULTIVIBRATOR USING IC 555" page-type="simulation" context-info="{"organisation":"Virtual Labs","developer_institute":"IITKGP","expname":"MONOSTABLE MULTIVIBRATOR USING IC 555","labname":"Virtual Lab","phase":"Testing"}" checkbox-json="{"text":["Insufficient Content"],"video":["Insufficient Content"],"assesment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"assessment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"simulation":["Simulation Not Working","Incorrect Results/Observations","Insufficient/Incorrect Instructions"],"DEFAULT":["Page Not Loading","Content Not Visible","Incorrect Content"]}" position="override" button_style=" + position: fixed; + bottom: 20px; + right: 20px; + z-index: 1; + font-size: 0; + padding: 25px; + border-radius: 50%; + border: none; + background-color: #0fc0ff; + background-image: url(data:image/png;base64,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); + background-repeat: no-repeat; + background-position: center; + background-size: 30px; + filter: invert(1);"> + </bug-report> + </div> </div> + </div> + <script src="./assets/js/toggleSidebar.js"></script> + <script src="./assets/js/event-handler.js"></script> + + + <script> + if ('serviceWorker' in navigator) { + window.addEventListener('load', () => { + navigator.serviceWorker.register("sw.js"); + }); + } + </script> + + +<script type="module" src="https://virtual-labs.github.io/svc-bug-report/client/src/bug-report.js"></script><script type="module" src="plugins/svc-rating/index.js"></script><script type="module" src="plugins/svc-rating/config.js"></script><script type="module" src="https://apis.google.com/js/api.js"></script></body></html> \ No newline at end of file diff --git a/simulation/css/README.md b/simulation/css/README.md new file mode 100644 index 0000000..14b4fe3 --- /dev/null +++ b/simulation/css/README.md @@ -0,0 +1 @@ +### This folder contains all the css files used in the simulation. \ No newline at end of file diff --git a/simulation/css/cktconnection_monostable.css b/simulation/css/cktconnection_monostable.css new file mode 100644 index 0000000..61b7c8d --- /dev/null +++ b/simulation/css/cktconnection_monostable.css @@ -0,0 +1,169 @@ + + +.demo { + /* for IE10+ touch devices */ + touch-action:none; +} + +.jtk-demo-canvas { + height:550px; + /*max-height:700px; + border:1px solid #CCC; + background-color:white;*/ + display: flex; + position:absolute; + top:5px; +} +.canvas-wide { + margin-left:0; +} + +/** JSPLUMB ARTEFACTS **/ +.jtk-overlay { + z-index: 51; +} + +.jtk-endpoint { + z-index: 50; + cursor: move; +} + +.jtk-connector { + z-index: 1; +} + +/** ELEMENTS **/ +.littledot +{ + cursor: pointer; + width: 12px; + height: 12px; + background-image: url(littledot.png); + z-index: 5; + position: absolute; + border-radius: 31px; + margin-bottom: 0px; + margin-left: 0px; + margin-right: 0px; +} +.cmdLink detach{ + margin-bottom: 0px; + margin-left: 0px; + margin-right: 0px; +} + + +.littledot-hover-hover { + border: 2px solid orange; +} + +.dropHover { + border: 1px solid orange; +} + +/** ELEMENT POSITIONS **/ +#ld1 { + position: absolute; + top: 230px; + left: 175px; +} +#ld2 { + position: absolute; + top: 198px; + left:120px; + +} + +#ld6 { + position: absolute; + top:145px; + left:120px; +} + +#ld7 { + position: absolute; + top: 98px; + left: 120px; +} + + +#ld3 { + position: absolute; + top:98px; + left:240px; +} +#ld5 { + position: absolute; + top:188px; + left:240px; +} + +#ld4 { + position: absolute; + top: 60px; + left:155px;; +} + + +#ld8 { + position: absolute; + top: 60px; + left:190px; + +} + +#ld9 { + position: absolute; + top:15px; + left:172px; +} +#ld10 { + position: absolute; + top:55px; + left:25px; +} +#ld11 { + position: absolute; + top:155px; + left:25px; +} + + + +#ld13 { + position: absolute; + top: 200px; + left: 25px; + +} +#ld14 { + position: absolute; + top: 270px; + left: 22px; + +} + +#ld15 { + position: absolute; + top:190px; + left:295px; +} +#ld16 { + position: absolute; + top:260px; + left:295px; +} +#ld17 { + position: absolute; + top:75px; + left:290px; +} +#ld12 { + position: absolute; + top: 280px; + left: 170px; + +} +path, .jtk-endpoint { + cursor: pointer; +} diff --git a/simulation/css/main.css b/simulation/css/main.css new file mode 100644 index 0000000..20bf42b --- /dev/null +++ b/simulation/css/main.css @@ -0,0 +1 @@ +/* You CSS goes in here */ \ No newline at end of file diff --git a/simulation/css/monostable_astable.css b/simulation/css/monostable_astable.css new file mode 100644 index 0000000..4839687 --- /dev/null +++ b/simulation/css/monostable_astable.css @@ -0,0 +1,132 @@ +/* +To change this license header, choose License Headers in Project Properties. +To change this template file, choose Tools | Templates +and open the template in the editor. +*/ +/* + Created on : 22 Nov, 2016, 5:43:22 PM + Author : sukriti +*/ + + .canvasjs-chart-credit{ + display:none; + } + //.dropdown { + // position: relative; + // display: inline-block; + // height:20px; + // font-size: 16px; + // font-weight: bold; + + // } + .dropdown-content { + display: none; + position: absolute; + background-color: #f9f9f9; + border:2px solid #3385ff; + min-width: 330px; + box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); + padding: 12px 16px; + z-index: 50; + cursor: pointer; + } + + .dropdown:hover .dropdown-content { + display: block; + + } + + + img[id^="info_"] { + //background-color: #e4e5e9; + //background: none; + border: none; + padding: 5px; + float: right; + cursor: pointer; + width: 30px; + height: 30px; + +} + +table { + //font-family:Arial, Helvetica, sans-serif; + //color:#666; + //font-size:12px; + //text-shadow: 1px 1px 0px #fff; + //background:#eaebec; + //margin:5px; + //border:#ccc 2px solid; + + -moz-border-radius:3px; + -webkit-border-radius:3px; + border-radius:3px; + + -moz-box-shadow: 0 1px 2px #d1d1d1; + -webkit-box-shadow: 0 1px 2px #d1d1d1; + box-shadow: 0 1px 2px #d1d1d1; +} +table tr:hover td{ + background: #ccebff; + //background: -webkit-gradient(linear, left top, left bottom, from(#f2f2f2), to(#f0f0f0)); + //background: -moz-linear-gradient(top, #f2f2f2, #f0f0f0); +} +table tr:last-child td:first-child{ + -moz-border-radius-bottomleft:3px; + -webkit-border-bottom-left-radius:3px; + border-bottom-left-radius:3px; +} +table tr:last-child td:last-child{ + -moz-border-radius-bottomright:3px; + -webkit-border-bottom-right-radius:3px; + border-bottom-right-radius:3px; +} + + + /* .tooltip { + position: relative; + display: inline-block; + + }*/ + + /* Tooltip text */ + .tooltip .tooltiptext { + visibility: hidden; + width: 80px; + background-color: #f9f9f9;/*#ffff80;#555;*/ + border:2px solid #3385ff; + + color: #555; /*#fff;*/ + text-align: center; + // padding: 5px 0; + // border-radius: 6px; + + /* Position the tooltip text */ + position: absolute; + z-index: 1; + top: 60%; + left: 90%; + margin-left: 20px; + + /* Fade in tooltip */ + opacity: 0; + transition: opacity 1s; + } + + /* Tooltip arrow + .tooltip .tooltiptext::after { + content: ""; + position: absolute; + top: 300px; + left: 50%; + margin-left: -5px; + border-width: 5px; + border-style: solid; + border-color: #555 transparent transparent transparent; + }*/ + + /* Show the tooltip text when you mouse over the tooltip container */ + .tooltip:hover .tooltiptext { + visibility: visible; + opacity: 3; + } \ No newline at end of file diff --git a/simulation/css/simulationtabcss.css b/simulation/css/simulationtabcss.css new file mode 100644 index 0000000..649c06c --- /dev/null +++ b/simulation/css/simulationtabcss.css @@ -0,0 +1,28 @@ +/* +To change this license header, choose License Headers in Project Properties. +To change this template file, choose Tools | Templates +and open the template in the editor. +*/ +/* + Created on : 20 Jun, 2016, 8:44:41 PM + Author : sukriti +*/ + +/*input{ + width:310px; + height:40px; + background:#4E9CAF; //darkmoderate cyan + text-align: center; + padding:20px; + padding-top:3px; + padding-bottom:3px; + border-radius:10px; + color:white; + font-weight: bold; + font-size:12pt; + display: inline-block; + cursor:pointer; +} +input:hover{ + background-color: #20B2AA; //LightSeaGreen +}*/ \ No newline at end of file diff --git a/simulation/images/Print Filled.png b/simulation/images/Print Filled.png new file mode 100644 index 0000000000000000000000000000000000000000..69b95698e0b248e54646ded7be16e93dafdaab02 GIT binary patch literal 476 zcmV<20VDp2P)<h;3K|Lk000e1NJLTq001%o001%w1^@s69zTe&0004_Nkl<ZXhZE- z!A%1}44hN|bO03uDu7a;0!kosKq?@mKm|Yr&;dyWL`I8rvT~W(oO5Ks_lmT$_RQG6 z&Fuu*^QFP|hMKU*6i@>EIU%ZWW}v$MV<62-0j?q{UM0$KDWuOK*%@YW<+_|#Z526S zB~b>K^QI7HWzc$7B!@kym3)|Nt)^S+7{DEXYXJ7UrDq9X0pQ-wkp}>`EwSIgb#6jF z8?1!avNR#T{jCww3@IeUMm@-Lc^TOb8}3WLwUvsT0r)87PXWBQD&z!!y=v`gTF4WC zn<C^9z*Vaiq0`jLjHD3iz@Y)MwX!06a-g=g)a#=ty7C{|6cS}QiIWv!Mt5iA1;9Dm zP`UmJ;G(l<l!{o=X(dqxe{<%HB7~8OSpT0w?1SY<v@d!_{7iTnYDHGH_gY;c5i{av zVpk#G_gZ$lI4d9btTKmovaiZz#7re7--?SZs>0;FLxhZZj!>QyP^{bJOvH@%%JiKh zlqUsj5u&!o5ZoxOHH4tLH-+>$B|D>9E#l<7wKF2-4~J2n6ySzEoS_(y@>~PJa%(-w SDp)4~0000<MNUMnLSTaR+taTA literal 0 HcmV?d00001 diff --git a/simulation/images/README.md b/simulation/images/README.md new file mode 100644 index 0000000..9b47fb5 --- /dev/null +++ b/simulation/images/README.md @@ -0,0 +1,2 @@ +### This folder contains all the image files used in the simulation. +### Create sub-directories, if needed. ex: gifs/ \ No newline at end of file diff --git a/simulation/images/monostable.png b/simulation/images/monostable.png new file mode 100644 index 0000000000000000000000000000000000000000..d91b5b50db1d5e8fbe65424bbddc371bd610fce2 GIT binary patch literal 18581 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 Gp$PzlbfCom literal 0 HcmV?d00001 diff --git a/simulation/index.html b/simulation/index.html new file mode 100644 index 0000000..ee9be23 --- /dev/null +++ b/simulation/index.html @@ -0,0 +1,13 @@ +<!DOCTYPE html> +<html> +<head> + <!-- Add CSS at the head of HTML file --> + <link rel="stylesheet" href="./css/main.css"> +</head> +<body> + <!-- Your code goes here--> + + <!-- Add JS at the bottom of HTML file --> + <script src="./js/main.js"></script> +</body> +</html> diff --git a/simulation/js/README.md b/simulation/js/README.md new file mode 100644 index 0000000..b6e0cff --- /dev/null +++ b/simulation/js/README.md @@ -0,0 +1 @@ +### This folder contains all the js files used in the simulation. \ No newline at end of file diff --git a/simulation/js/canvasjs.min.js b/simulation/js/canvasjs.min.js new file mode 100644 index 0000000..e9dba74 --- /dev/null +++ b/simulation/js/canvasjs.min.js @@ -0,0 +1,5175 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ + +/* + CanvasJS HTML5 & JavaScript Charts - v1.8.5 Beta 1 - http://canvasjs.com/ + Copyright 2013 fenopix +*/ + +(function () { + function T(a, c) { + a.prototype = Ja(c.prototype); + a.prototype.constructor = a; + a.base = c.prototype + } + function Ja(a) { + function c() { + } + c.prototype = a; + return new c + } + function za(a, c, b) { + "millisecond" === b ? a.setMilliseconds(a.getMilliseconds() + 1 * c) : "second" === b ? a.setSeconds(a.getSeconds() + 1 * c) : "minute" === b ? a.setMinutes(a.getMinutes() + 1 * c) : "hour" === b ? a.setHours(a.getHours() + 1 * c) : "day" === b ? a.setDate(a.getDate() + 1 * c) : "week" === b ? a.setDate(a.getDate() + 7 * c) : "month" === b ? a.setMonth(a.getMonth() + 1 * c) : "year" === b && a.setFullYear(a.getFullYear() + 1 * c); + return a + } + function Q(a, c) { + var b = !1; + 0 > a && (b = !0, a *= -1); + a = "" + a; + for (c = c?c:1; a.length < c; ) + a = "0" + a; + return b ? "-" + a : a + } + function ea(a) { + if (!a) + return a; + a = a.replace(/^\s\s*/, ""); + for (var c = /\s/, b = a.length; c.test(a.charAt(--b)); ) + ; + return a.slice(0, b + 1) + } + function Ka(a) { + a.roundRect = function (a, b, d, e, f, g, h, q) { + h && (this.fillStyle = h); + q && (this.strokeStyle = q); + "undefined" === typeof f && (f = 5); + this.lineWidth = g; + this.beginPath(); + this.moveTo(a + f, b); + this.lineTo(a + d - f, b); + this.quadraticCurveTo(a + d, b, a + d, b + f); + this.lineTo(a + d, b + e - f); + this.quadraticCurveTo(a + d, b + e, a + d - f, b + e); + this.lineTo(a + f, b + e); + this.quadraticCurveTo(a, b + e, a, b + e - f); + this.lineTo(a, b + f); + this.quadraticCurveTo(a, b, a + f, b); + this.closePath(); + h && this.fill(); + q && 0 < g && this.stroke() + } + } + function Aa(a, c) { + return a - c + } + function Ba(a, c) { + return a.x - c.x + } + function C(a) { + var c = ((a & 16711680) >> 16).toString(16), + b = ((a & 65280) >> 8).toString(16); + a = ((a & 255) >> 0).toString(16); + c = 2 > c.length ? "0" + c : c; + b = 2 > b.length ? "0" + b : b; + a = 2 > a.length ? "0" + a : a; + return"#" + c + b + a + } + function La(a, c) { + var b = this.length >>> 0, d = Number(c) || + 0, d = 0 > d ? Math.ceil(d) : Math.floor(d); + for (0 > d && (d += b); d < b; d++) + if (d in this && this[d] === a) + return d; + return-1 + } + function x(a) { + return null === a || "undefined" === typeof a + } + function Ca(a, c, b) { + b = b || "normal"; + var d = a + "_" + c + "_" + b, e = Da[d]; + if (isNaN(e)) { + try { + a = "position:absolute; left:0px; top:-20000px; padding:0px;\n\ +margin:0px;border:none;white-space:pre;line-height:normal;font-family:" + a + "; \n\ +font-size:" + c + "px; font-weight:" + b + ";"; + if (!Z) { + var + f = document.body; + Z = document.createElement("span"); + Z.innerHTML = ""; + var g = document.createTextNode("Mpgyi"); + Z.appendChild(g); + f.appendChild(Z) + } + Z.style.display = ""; + Z.setAttribute("style", a); + e = Math.round(Z.offsetHeight); + Z.style.display = "none" + } catch (h) { + e = Math.ceil(1.1 * c) + } + e = Math.max(e, c); + Da[d] = e + } + return e + } + function D(a, c) { + var b = []; + if (b = {solid: [], + shortDash: [3, 1], + shortDot: [1, 1], + shortDashDot: [3, 1, 1, 1], + shortDashDotDot: [3, 1, 1, 1, 1, 1], dot: [1, 2], + dash: [4, 2], + dashDot: [4, 2, 1, 2], longDash: [8, 2], + longDashDot: [8, 2, 1, 2], + longDashDotDot: [8, 2, 1, 2, 1, 2]}[a || "solid"]) + for (var d = 0; d < b.length; d++) + b[d] *= c; + else + b = []; + return b + } + function J(a, + c, b, d) { + if (a.addEventListener) + a.addEventListener(c, b, d || !1); + else if (a.attachEvent) + a.attachEvent("on" + c, function (c) { + c = c || window.event; + c.preventDefault = c.preventDefault || function () { + c.returnValue = !1 + }; + c.stopPropagation = c.stopPropagation || function () { + c.cancelBubble = !0 + }; + b.call(a, c) + }); + else + return!1 + } + function Ea(a, c, b) { + a *= N; + c *= N; + a = b.getImageData(a, c, 2, 2).data; + c = !0; + for (b = 0; 4 > b; b++) + if (a[b] !== a[b + 4] | a[b] !== a[b + 8] | a[b] !== a[b + 12]) { + c = !1; + break + } + return c ? a[0] << 16 | a[1] << 8 | a[2] : 0 + } + function R(a, c, b) { + return a in c ? c[a] : b[a] + } + function ja(a, c, b) { + if (u && Fa) { + var d = a.getContext("2d"); + ka = d.webkitBackingStorePixelRatio || d.mozBackingStorePixelRatio || d.msBackingStorePixelRatio || d.oBackingStorePixelRatio || d.backingStorePixelRatio || 1; + N = ta / ka; + a.width = c * N; + a.height = b * N; + ta !== ka && (a.style.width = c + "px", a.style.height = b + "px", d.scale(N, N)) + } + else + a.width = c, a.height = b + } + function $(a, c) { + var b = document.createElement("canvas"); + b.setAttribute("class", "canvasjs-chart-canvas"); + ja(b, a, c); + u || "undefined" === typeof G_vmlCanvasManager || G_vmlCanvasManager.initElement(b); + return b + } + function Ga(a, c, b) { + if (a && c && b) { + b = b + "." + c; + var d = "image/" + c; + a = a.toDataURL(d); + var e = !1, f = document.createElement("a"); + f.download = b; + f.href = a; + f.target = "_blank"; + if ("undefined" !== typeof Blob && new Blob) { + for (var g = a.replace(/^data:[a-z/]*;base64,/, ""), g = atob(g), h = new ArrayBuffer(g.length), h = new Uint8Array(h), q = 0; q < g.length; q++) + h[q] = g.charCodeAt(q); + c = new Blob([h.buffer], {type: "image/" + c}); + try { + window.navigator.msSaveBlob(c, b), e = !0 + } catch (k) { + f.dataset.downloadurl = [d, f.download, f.href].join(":"), f.href = + window.URL.createObjectURL(c) + } + } + if (!e) + try { + event = document.createEvent("MouseEvents"), event.initMouseEvent("click", !0, !1, window, 0, 0, 0, 0, 0, !1, !1, !1, !1, 0, null), f.dispatchEvent ? f.dispatchEvent(event) : f.fireEvent && f.fireEvent("onclick") + } catch (n) { + c = window.open(), c.document.write("<img src='" + a + "'></img><div>Please right click on the image and save it to your device</div>"), c.document.close() + } + } + } + function U(a, c, b) { + c.getAttribute("state") !== b && (c.setAttribute("state", b), c.setAttribute("type", "button"), c.style.position = + "relative", c.style.margin = "0px 0px 0px 0px", c.style.padding = "3px 4px 0px 4px", c.style.cssFloat = "left", c.setAttribute("title", a._cultureInfo[b + "Text"]), c.innerHTML = "<img style='height:16px;' src='" + Ma[b].image + "' alt='" + a._cultureInfo[b + "Text"] + "' />") + } + function la() { + for (var a = null, c = 0; c < arguments.length; c++) + a = arguments[c], a.style && (a.style.display = "inline") + } + function X() { + for (var a = null, c = 0; c < arguments.length; c++) + (a = arguments[c]) && a.style && (a.style.display = "none") + } + function L(a, c, b, d) { + this._defaultsKey = + a; + this.parent = d; + this._eventListeners = []; + d = {}; + b && (ca[b] && ca[b][a]) && (d = ca[b][a]); + this._options = c ? c : {}; + this.setOptions(this._options, d) + } + function v(a, c, b) { + this._publicChartReference = b; + c = c || {}; + v.base.constructor.call(this, "Chart", c, c.theme ? c.theme : "theme1"); + var d = this; + this._containerId = a; + this._objectsInitialized = !1; + this.overlaidCanvasCtx = this.ctx = null; + this._indexLabels = []; + this._panTimerId = 0; + this._lastTouchEventType = ""; + this._lastTouchData = null; + this.isAnimating = !1; + this.renderCount = 0; + this.panEnabled = this.disableToolTip = + this.animatedRender = !1; + this._defaultCursor = "default"; + this.plotArea = {canvas: null, ctx: null, x1: 0, y1: 0, x2: 0, y2: 0, width: 0, height: 0}; + this._dataInRenderedOrder = []; + (this._container = "string" === typeof this._containerId ? document.getElementById(this._containerId) : this._containerId) ? (this._container.innerHTML = "", c = a = 0, a = this._options.width ? this.width : 0 < this._container.clientWidth ? this._container.clientWidth : this.width, c = this._options.height ? this.height : 0 < this._container.clientHeight ? this._container.clientHeight : + this.height, this.width = a, this.height = c, this.x1 = this.y1 = 0, + this.x2 = this.width, this.y2 = this.height, this._selectedColorSet = "undefined" !== typeof aa[this.colorSet] ? aa[this.colorSet] : aa.colorSet1, this._canvasJSContainer = document.createElement("div"), this._canvasJSContainer.setAttribute("class", "canvasjs-chart-container"), this._canvasJSContainer.style.position = "relative", this._canvasJSContainer.style.textAlign = "left", this._canvasJSContainer.style.cursor = "auto", u || (this._canvasJSContainer.style.height = "0px"), + this._container.appendChild(this._canvasJSContainer), this.canvas = $(a, c), + this.canvas.style.position = "absolute", this.canvas.getContext && (this._canvasJSContainer.appendChild(this.canvas), + this.ctx = this.canvas.getContext("2d"), this.ctx.textBaseline = "top", Ka(this.ctx), + u ? this.plotArea.ctx = this.ctx : (this.plotArea.canvas = $(a, c), this.plotArea.canvas.style.position = "absolute", this.plotArea.canvas.setAttribute("class", "plotAreaCanvas"), this._canvasJSContainer.appendChild(this.plotArea.canvas), this.plotArea.ctx = + this.plotArea.canvas.getContext("2d")), this.overlaidCanvas = $(a, c), + this.overlaidCanvas.style.position = "absolute", this._canvasJSContainer.appendChild(this.overlaidCanvas), + this.overlaidCanvasCtx = this.overlaidCanvas.getContext("2d"), this.overlaidCanvasCtx.textBaseline = "top", this._eventManager = new fa(this), J(window, "resize", function () { + d._updateSize() && d.render() + }), this._toolBar = document.createElement("div"), this._toolBar.setAttribute("class", "canvasjs-chart-toolbar"), + this._toolBar.style.cssText = "position: absolute; right: 1px; top: 1px;", + this._canvasJSContainer.appendChild(this._toolBar), + this.bounds = {x1: 0, y1: 0, x2: this.width, y2: this.height}, + J(this.overlaidCanvas, "click", function (a) { + d._mouseEventHandler(a) + }), J(this.overlaidCanvas, "mousemove", function (a) { + d._mouseEventHandler(a) + }), J(this.overlaidCanvas, "mouseup", function (a) { + d._mouseEventHandler(a) + }), J(this.overlaidCanvas, "mousedown", function (a) { + d._mouseEventHandler(a); + X(d._dropdownMenu) + }), J(this.overlaidCanvas, "mouseout", function (a) { + d._mouseEventHandler(a) + }), J(this.overlaidCanvas, window.navigator.msPointerEnabled ? + "MSPointerDown" : "touchstart", function (a) { + d._touchEventHandler(a) + }), J(this.overlaidCanvas, window.navigator.msPointerEnabled ? "MSPointerMove" : "touchmove", function (a) { + d._touchEventHandler(a) + }), J(this.overlaidCanvas, window.navigator.msPointerEnabled ? "MSPointerUp" : "touchend", function (a) { + d._touchEventHandler(a) + }), J(this.overlaidCanvas, window.navigator.msPointerEnabled ? "MSPointerCancel" : "touchcancel", function (a) { + d._touchEventHandler(a) + }), this._creditLink || (this._creditLink = document.createElement("a"), this._creditLink.setAttribute("class", + "canvasjs-chart-credit"), this._creditLink.setAttribute("style", "outline:none;margin:0px;position:absolute;right:3px;top:" + (this.height - 14) + "px;color:dimgrey;text-decoration:none;font-size:10px;font-family:Lucida Grande, Lucida Sans Unicode, Arial, sans-serif"), this._creditLink.setAttribute("tabIndex", -1), this._creditLink.setAttribute("target", "_blank")), this._toolTip = new V(this, this._options.toolTip, this.theme), this.axisY2 = this.axisY = this.axisX = this.data = null, this.sessionVariables = {axisX: {}, axisY: {}, + axisY2: {}})) : window.console && window.console.log('CanvasJS Error: Chart Container with id "' + this._containerId + '" was not found') + } + function ma(a, c) { + for (var b = [], d, e = 0; e < a.length; e++) + if (0 == e) + b.push(a[0]); + else { + var f, g, h; + h = e - 1; + f = 0 === h ? 0 : h - 1; + g = h === a.length - 1 ? h : h + 1; + d = Math.abs((a[g].x - a[f].x) / (0 === a[g].x - a[h].x ? 0.01 : a[g].x - a[h].x)) * (c - 1) / 2 + 1; + var q = (a[g].x - a[f].x) / d; + d = (a[g].y - a[f].y) / d; + b[b.length] = a[h].x > a[f].x && 0 < q || a[h].x < a[f].x && 0 > q ? {x: a[h].x + q / 3, y: a[h].y + d / 3} : {x: a[h].x, y: a[h].y + d / 9}; + h = e; + f = 0 === h ? 0 : h - 1; + g = h === a.length - 1 ? h : h + 1; + d = Math.abs((a[g].x - a[f].x) / (0 === a[h].x - a[f].x ? 0.01 : a[h].x - a[f].x)) * (c - 1) / 2 + 1; + q = (a[g].x - a[f].x) / d; + d = (a[g].y - a[f].y) / d; + b[b.length] = a[h].x > a[f].x && 0 < q || a[h].x < a[f].x && 0 > q ? {x: a[h].x - q / 3, y: a[h].y - d / 3} : {x: a[h].x, y: a[h].y - d / 9}; + b[b.length] = a[e] + } + return b + } + function Ha(a, c) { + if (null === a || "undefined" === typeof a) + return c; + var b = parseFloat(a.toString()) * (0 <= a.toString().indexOf("%") ? c / 100 : 1); + return!isNaN(b) && b <= c && 0 <= b ? b : c + } + function da(a, c, b, d, e) { + "undefined" === typeof e && (e = 0); + this._padding = e; + this._x1 = a; + this._y1 = c; + this._x2 = b; + this._y2 = d; + this._rightOccupied = this._leftOccupied = this._bottomOccupied = this._topOccupied = this._padding + } + function O(a, c) { + O.base.constructor.call(this, "TextBlock", c); + this.ctx = a; + this._isDirty = !0; + this._wrappedText = null; + this._lineHeight = Ca(this.fontFamily, this.fontSize, this.fontWeight) + } + function ga(a, c) { + ga.base.constructor.call(this, "Title", c, a.theme); + this.chart = a; + this.canvas = a.canvas; + this.ctx = this.chart.ctx; + if (x(this._options.margin) && a._options.subtitles) + for (var b = a._options.subtitles, + d = 0; d < b.length; d++) + if ((x(b[d].horizontalAlign) && "center" === this.horizontalAlign || b[d].horizontalAlign === this.horizontalAlign) && (x(b[d].verticalAlign) && "top" === this.verticalAlign || b[d].verticalAlign === this.verticalAlign) && !b[d].dockInsidePlotArea === !this.dockInsidePlotArea) { + this.margin = 0; + break + } + "undefined" === typeof this._options.fontSize && (this.fontSize = this.chart.getAutoFontSize(this.fontSize)); + this.height = this.width = null; + this.bounds = {x1: null, y1: null, x2: null, y2: null} + } + function na(a, c) { + na.base.constructor.call(this, + "Subtitle", c, a.theme); + this.chart = a; + this.canvas = a.canvas; + this.ctx = this.chart.ctx; + "undefined" === typeof this._options.fontSize && (this.fontSize = this.chart.getAutoFontSize(this.fontSize)); + this.height = this.width = null; + this.bounds = {x1: null, y1: null, x2: null, y2: null} + } + function oa(a, c, b) { + oa.base.constructor.call(this, "Legend", c, b); + this.chart = a; + this.canvas = a.canvas; + this.ctx = this.chart.ctx; + this.ghostCtx = this.chart._eventManager.ghostCtx; + this.items = []; + this.height = this.width = 0; + this.orientation = null; + this.dataSeries = + []; + this.bounds = {x1: null, y1: null, x2: null, y2: null}; + "undefined" === typeof this._options.fontSize && (this.fontSize = this.chart.getAutoFontSize(this.fontSize)); + this.lineHeight = Ca(this.fontFamily, this.fontSize, this.fontWeight); + this.horizontalSpacing = this.fontSize + } + function ua(a, c) { + ua.base.constructor.call(this, c); + this.chart = a; + this.canvas = a.canvas; + this.ctx = this.chart.ctx + } + function Y(a, c, b, d, e) { + Y.base.constructor.call(this, "DataSeries", c, b); + this.chart = a; + this.canvas = a.canvas; + this._ctx = a.canvas.ctx; + this.index = d; + this.noDataPointsInPlotArea = 0; + this.id = e; + this.chart._eventManager.objectMap[e] = {id: e, objectType: "dataSeries", dataSeriesIndex: d}; + this.dataPointIds = []; + this.plotUnit = []; + + this.axisY = this.axisX = null; + null === this.fillOpacity && (this.type.match(/area/i) ? this.fillOpacity = 0.7 : this.fillOpacity = 1); + this.axisPlacement = this.getDefaultAxisPlacement(); + "undefined" === typeof this._options.indexLabelFontSize && (this.indexLabelFontSize = this.chart.getAutoFontSize(this.indexLabelFontSize)) + } + function F(a, c, b, d) { + F.base.constructor.call(this, + "Axis", c, a.theme); + this.chart = a; + this.canvas = a.canvas; + this.ctx = a.ctx; + this.intervalStartPosition = this.maxHeight = this.maxWidth = 0; + this.labels = []; + this._stripLineLabels = this._labels = null; + this.dataInfo = {min: Infinity, max: -Infinity, viewPortMin: Infinity, viewPortMax: -Infinity, minDiff: Infinity}; + "axisX" === b ? (this.sessionVariables = this.chart.sessionVariables[b], this._options.interval || (this.intervalType = null), "theme2" === this.chart.theme && x(this._options.lineThickness) && (this.lineThickness = 2)) : this.sessionVariables = + "left" === d || "top" === d ? this.chart.sessionVariables.axisY : this.chart.sessionVariables.axisY2; + "undefined" === typeof this._options.titleFontSize && (this.titleFontSize = this.chart.getAutoFontSize(this.titleFontSize)); + "undefined" === typeof this._options.labelFontSize && (this.labelFontSize = this.chart.getAutoFontSize(this.labelFontSize)); + this.type = b; + "axisX" !== b || c && "undefined" !== typeof c.gridThickness || (this.gridThickness = 0); + this._position = d; + this.lineCoordinates = {x1: null, y1: null, x2: null, y2: null, width: null}; + this.labelAngle = + (this.labelAngle % 360 + 360) % 360; + 90 < this.labelAngle && 270 >= this.labelAngle ? this.labelAngle -= 180 : 270 < this.labelAngle && 360 >= this.labelAngle && (this.labelAngle -= 360); + if (this._options.stripLines && 0 < this._options.stripLines.length) + for (this.stripLines = [], c = 0; c < this._options.stripLines.length; c++) + this.stripLines.push(new pa(this.chart, this._options.stripLines[c], a.theme, ++this.chart._eventManager.lastObjectId, this)); + this._titleTextBlock = null; + this.hasOptionChanged("viewportMinimum") && null === this.viewportMinimum && + (this._options.viewportMinimum = void 0, this.sessionVariables.viewportMinimum = null); + this.hasOptionChanged("viewportMinimum") || isNaN(this.sessionVariables.newViewportMinimum) || null === this.sessionVariables.newViewportMinimum ? this.sessionVariables.newViewportMinimum = null : this.viewportMinimum = this.sessionVariables.newViewportMinimum; + this.hasOptionChanged("viewportMaximum") && null === this.viewportMaximum && (this._options.viewportMaximum = void 0, this.sessionVariables.viewportMaximum = null); + this.hasOptionChanged("viewportMaximum") || + isNaN(this.sessionVariables.newViewportMaximum) || null === this.sessionVariables.newViewportMaximum ? this.sessionVariables.newViewportMaximum = null : this.viewportMaximum = this.sessionVariables.newViewportMaximum; + null !== this.minimum && null !== this.viewportMinimum && (this.viewportMinimum = Math.max(this.viewportMinimum, this.minimum)); + null !== this.maximum && null !== this.viewportMaximum && (this.viewportMaximum = Math.min(this.viewportMaximum, this.maximum)); + this.trackChanges("viewportMinimum"); + this.trackChanges("viewportMaximum") + } + function pa(a, c, b, d, e) { + pa.base.constructor.call(this, "StripLine", c, b, e); + this.id = d; + this.chart = a; + this.ctx = this.chart.ctx; + this.label = this.label; + this._thicknessType = "pixel"; + null !== this.startValue && null !== this.endValue && (this.value = ((this.startValue.getTime ? this.startValue.getTime() : this.startValue) + (this.endValue.getTime ? this.endValue.getTime() : this.endValue)) / 2, this.thickness = Math.max(this.endValue - this.startValue), this._thicknessType = "value") + } + function V(a, c, b) { + V.base.constructor.call(this, "ToolTip", + c, b); + this.chart = a; + this.canvas = a.canvas; + this.ctx = this.chart.ctx; + this.currentDataPointIndex = this.currentSeriesIndex = -1; + this._timerId = 0; + this._prevY = this._prevX = NaN; + this._initialize() + } + function fa(a) { + this.chart = a; + this.lastObjectId = 0; + this.objectMap = []; + this.rectangularRegionEventSubscriptions = []; + this.previousDataPointEventObject = null; + this.ghostCanvas = $(this.chart.width, this.chart.height); + this.ghostCtx = this.ghostCanvas.getContext("2d"); + this.mouseoveredObjectMaps = [] + } + function ha(a) { + var c; + a && ia[a] && (c = ia[a]); + ha.base.constructor.call(this, "CultureInfo", c) + } + function va(a) { + this.chart = a; + this.ctx = this.chart.plotArea.ctx; + this.animations = []; + this.animationRequestId = null + } + var u = !!document.createElement("canvas").getContext, + qa = {Chart: {width: 500, height: 400, zoomEnabled: !1, zoomType: "x", backgroundColor: "white", theme: "theme1", animationEnabled: !1, animationDuration: 1200, dataPointWidth: null, dataPointMinWidth: null, dataPointMaxWidth: null, colorSet: "colorSet1", culture: "en", creditText: "CanvasJS.com", interactivityEnabled: !0, exportEnabled: !1, + exportFileName: "Chart", rangeChanging: null, rangeChanged: null}, + Title: {padding: 0, text: null, verticalAlign: "top", horizontalAlign: "center", fontSize: 20, fontFamily: "Calibri", fontWeight: "normal", fontColor: "black", fontStyle: "normal", borderThickness: 0, borderColor: "black", cornerRadius: 0, backgroundColor: null, margin: 5, wrap: !0, maxWidth: null, dockInsidePlotArea: !1}, + Subtitle: {padding: 0, text: null, verticalAlign: "top", horizontalAlign: "center", fontSize: 14, fontFamily: "Calibri", fontWeight: "normal", fontColor: "black", fontStyle: "normal", + borderThickness: 0, borderColor: "black", cornerRadius: 0, backgroundColor: null, margin: 2, wrap: !0, maxWidth: null, dockInsidePlotArea: !1}, + Legend: {name: null, verticalAlign: "center", horizontalAlign: "right", fontSize: 14, fontFamily: "calibri", fontWeight: "normal", fontColor: "black", fontStyle: "normal", cursor: null, itemmouseover: null, itemmouseout: null, itemmousemove: null, itemclick: null, dockInsidePlotArea: !1, reversed: !1, maxWidth: null, maxHeight: null, itemMaxWidth: null, itemWidth: null, itemWrap: !0, itemTextFormatter: null}, + ToolTip: {enabled: !0,shared: !1, animationEnabled: !0, content: null, contentFormatter: null, reversed: !1, backgroundColor: null, borderColor: null, borderThickness: 2, cornerRadius: 5, fontSize: 14, fontColor: null, fontFamily: "Calibri, Arial, Georgia, serif;", fontWeight: "normal", fontStyle: "italic"}, + Axis: {minimum: null, maximum: null, viewportMinimum: null, viewportMaximum: null, interval: null, intervalType: null, title: null, titleFontColor: "black", titleFontSize: 20, titleFontFamily: "arial", titleFontWeight: "normal", titleFontStyle: "normal", titleWrap: !0, + titleMaxWidth: null, labelAngle: 0, labelFontFamily: "arial", labelFontColor: "black", labelFontSize: 12, labelFontWeight: "normal", labelFontStyle: "normal", labelAutoFit: !0, labelWrap: !0, labelMaxWidth: null, labelFormatter: null, prefix: "", suffix: "", includeZero: !0, tickLength: 5, tickColor: "black", tickThickness: 1, lineColor: "black", lineThickness: 1, lineDashType: "solid", gridColor: "A0A0A0", gridThickness: 0, gridDashType: "solid", interlacedColor: null, valueFormatString: null, margin: 2, stripLines: []}, + StripLine: {value: null, startValue: null,endValue: null, color: "orange", opacity: null, thickness: 2, lineDashType: "solid", label: "", labelPlacement: "inside", labelAlign: "far", labelWrap: !0, labelMaxWidth: null, labelBackgroundColor: "transparent", labelFontFamily: "arial", labelFontColor: "orange", labelFontSize: 12, labelFontWeight: "normal", labelFontStyle: "normal", labelFormatter: null, showOnTop: !1}, + DataSeries: {name: null, dataPoints: null, label: "", bevelEnabled: !1, highlightEnabled: !0, cursor: null, indexLabel: "", indexLabelPlacement: "auto", indexLabelOrientation: "horizontal", + indexLabelFontColor: "black", indexLabelFontSize: 12, indexLabelFontStyle: "normal", indexLabelFontFamily: "Arial", indexLabelFontWeight: "normal", indexLabelBackgroundColor: null, indexLabelLineColor: null, indexLabelLineThickness: 1, indexLabelLineDashType: "solid", indexLabelMaxWidth: null, indexLabelWrap: !0, indexLabelFormatter: null, lineThickness: 2, lineDashType: "solid", connectNullData: !1, nullDataLineDashType: "dash", color: null, lineColor: null, risingColor: "white", fillOpacity: null, startAngle: 0, radius: null, innerRadius: null, + type: "column", xValueType: "number", axisYType: "primary", xValueFormatString: null, yValueFormatString: null, zValueFormatString: null, percentFormatString: null, showInLegend: null, legendMarkerType: null, legendMarkerColor: null, legendText: null, legendMarkerBorderColor: null, legendMarkerBorderThickness: null, markerType: "circle", markerColor: null, markerSize: null, markerBorderColor: null, markerBorderThickness: null, mouseover: null, mouseout: null, mousemove: null, click: null, toolTipContent: null, visible: !0}, + TextBlock: {x: 0, y: 0, width: null, height: null, maxWidth: null, maxHeight: null, padding: 0, angle: 0, text: "", horizontalAlign: "center", fontSize: 12, fontFamily: "calibri", fontWeight: "normal", fontColor: "black", fontStyle: "normal", borderThickness: 0, borderColor: "black", cornerRadius: 0, backgroundColor: null, textBaseline: "top"}, + CultureInfo: {decimalSeparator: ".", digitGroupSeparator: ",", zoomText: "Zoom", panText: "Pan", resetText: "Reset", menuText: "More Options", saveJPGText: "Save as JPEG", savePNGText: "Save as PNG", days: "Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "), + shortDays: "Sun Mon Tue Wed Thu Fri Sat".split(" "), months: "January February March April May June July August September October November December".split(" "), shortMonths: "Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" ")}}, ia = {en: {}}, aa = {colorSet1: "#369EAD #C24642 #7F6084 #86B402 #A2D1CF #C8B631 #6DBCEB #52514E #4F81BC #A064A1 #F79647".split(" "), colorSet2: "#4F81BC #C0504E #9BBB58 #23BFAA #8064A1 #4AACC5 #F79647 #33558B".split(" "), colorSet3: "#8CA1BC #36845C #017E82 #8CB9D0 #708C98 #94838D #F08891 #0366A7 #008276 #EE7757 #E5BA3A #F2990B #03557B #782970".split(" ")}, + ca = {theme1: {Chart: {colorSet: "colorSet1"}, + Title: {fontFamily: u ? "Calibri, Optima, Candara, Verdana, Geneva, sans-serif" : "calibri", fontSize: 33, fontColor: "#3A3A3A", fontWeight: "bold", verticalAlign: "top", margin: 5}, + Subtitle: {fontFamily: u ? "Calibri, Optima, Candara, Verdana, Geneva, sans-serif" : "calibri", fontSize: 16, fontColor: "#3A3A3A", fontWeight: "bold", verticalAlign: "top", margin: 5}, Axis: {titleFontSize: 26, titleFontColor: "#666666", titleFontFamily: u ? "Calibri, Optima, Candara, Verdana, Geneva, sans-serif" : "calibri", + labelFontFamily: u ? "Calibri, Optima, Candara, Verdana, Geneva, sans-serif" : "calibri", labelFontSize: 18, labelFontColor: "grey", tickColor: "#BBBBBB", tickThickness: 2, gridThickness: 2, gridColor: "#BBBBBB", lineThickness: 2, lineColor: "#BBBBBB"}, Legend: {verticalAlign: "bottom", horizontalAlign: "center", fontFamily: u ? "monospace, sans-serif,arial black" : "calibri"}, DataSeries: {indexLabelFontColor: "grey", indexLabelFontFamily: u ? "Calibri, Optima, Candara, Verdana, Geneva, sans-serif" : "calibri", indexLabelFontSize: 18, indexLabelLineThickness: 1}}, + theme2: {Chart: {colorSet: "colorSet2"}, + Title: {fontFamily: "impact, charcoal, arial black, sans-serif", fontSize: 32, fontColor: "#333333", verticalAlign: "top", margin: 5}, + Subtitle: {fontFamily: "impact, charcoal, arial black, sans-serif", fontSize: 14, fontColor: "#333333", verticalAlign: "top", margin: 5}, + Axis: {titleFontSize: 22, titleFontColor: "rgb(98,98,98)", titleFontFamily: u ? "monospace, sans-serif,arial black" : "arial", titleFontWeight: "bold", labelFontFamily: u ? "monospace, Courier New, Courier" : "arial", labelFontSize: 16, + labelFontColor: "grey", labelFontWeight: "bold", tickColor: "grey", tickThickness: 2, gridThickness: 2, gridColor: "grey", lineColor: "grey", lineThickness: 0}, + Legend: {verticalAlign: "bottom", horizontalAlign: "center", fontFamily: u ? "monospace, sans-serif,arial black" : "arial"}, + DataSeries: {indexLabelFontColor: "grey", indexLabelFontFamily: u ? "Courier New, Courier, monospace" : "arial", indexLabelFontWeight: "bold", indexLabelFontSize: 18, indexLabelLineThickness: 1}}, + theme3: {Chart: {colorSet: "colorSet1"}, + Title: {fontFamily: u ? "Candara, Optima, Trebuchet MS, Helvetica Neue, Helvetica, Trebuchet MS, serif" :"calibri", fontSize: 32, fontColor: "#3A3A3A", fontWeight: "bold", verticalAlign: "top", margin: 5}, + Subtitle: {fontFamily: u ? "Candara, Optima, Trebuchet MS, Helvetica Neue, Helvetica, Trebuchet MS, serif" : "calibri", fontSize: 16, fontColor: "#3A3A3A", fontWeight: "bold", verticalAlign: "top", margin: 5}, + Axis: {titleFontSize: 22, titleFontColor: "rgb(98,98,98)", titleFontFamily: u ? "Verdana, Geneva, Calibri, sans-serif" : "calibri", labelFontFamily: u ? "Calibri, Optima, Candara, Verdana, Geneva, sans-serif" : "calibri", labelFontSize: 18, + labelFontColor: "grey", tickColor: "grey", tickThickness: 2, gridThickness: 2, gridColor: "grey", lineThickness: 2, lineColor: "grey"}, + Legend: {verticalAlign: "bottom", horizontalAlign: "center", fontFamily: u ? "monospace, sans-serif,arial black" : "calibri"}, + DataSeries: {bevelEnabled: !0, indexLabelFontColor: "grey", indexLabelFontFamily: u ? "Candara, Optima, Calibri, Verdana, Geneva, sans-serif" : "calibri", indexLabelFontSize: 18, indexLabelLineColor: "lightgrey", indexLabelLineThickness: 2}}}, + E = {numberDuration: 1, yearDuration: 314496E5, + monthDuration: 2592E6, weekDuration: 6048E5, dayDuration: 864E5, hourDuration: 36E5, minuteDuration: 6E4, secondDuration: 1E3, millisecondDuration: 1, dayOfWeekFromInt: "Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" ")}, Da = {}, Z = null, wa = function () { + var a = /D{1,4}|M{1,4}|Y{1,4}|h{1,2}|H{1,2}|m{1,2}|s{1,2}|f{1,3}|t{1,2}|T{1,2}|K|z{1,3}|"[^"]*"|'[^']*'/g, c = "Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "), b = "Sun Mon Tue Wed Thu Fri Sat".split(" "), d = "January February March April May June July August September October November December".split(" "), + e = "Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "), f = /\b(?:[PMCEA][SDP]T|(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time|(?:GMT|UTC)(?:[-+]\d{4})?)\b/g, g = /[^-+\dA-Z]/g; + return function (h, q, k) { + var n = k ? k.days : c, m = k ? k.months : d, l = k ? k.shortDays : b, p = k ? k.shortMonths : e; + k = ""; + var r = !1; + h = h && h.getTime ? h : h ? new Date(h) : new Date; + if (isNaN(h)) + throw SyntaxError("invalid date"); + "UTC:" === q.slice(0, 4) && (q = q.slice(4), r = !0); + k = r ? "getUTC" : "get"; + var t = h[k + "Date"](), y = h[k + "Day"](), + s = h[k + "Month"](), z = h[k + "FullYear"](), w = h[k + "Hours"](), u = h[k + "Minutes"](), W = h[k + "Seconds"](), x = h[k + "Milliseconds"](), v = r ? 0 : h.getTimezoneOffset(); + return k = q.replace(a, function (a) { + switch (a) { + case "D": + return t; + case "DD": + return Q(t, 2); + case "DDD": + return l[y]; + case "DDDD": + return n[y]; + case "M": + return s + 1; + case "MM": + return Q(s + 1, 2); + case "MMM": + return p[s]; + case "MMMM": + return m[s]; + case "Y": + return parseInt(String(z).slice(-2)); + case "YY": + return Q(String(z).slice(-2), 2); + case "YYY": + return Q(String(z).slice(-3), 3); + case "YYYY": + return Q(z, + 4); + case "h": + return w % 12 || 12; + case "hh": + return Q(w % 12 || 12, 2); + case "H": + return w; + case "HH": + return Q(w, 2); + case "m": + return u; + case "mm": + return Q(u, 2); + case "s": + return W; + case "ss": + return Q(W, 2); + case "f": + return String(x).slice(0, 1); + case "ff": + return Q(String(x).slice(0, 2), 2); + case "fff": + return Q(String(x).slice(0, 3), 3); + case "t": + return 12 > w ? "a" : "p"; + case "tt": + return 12 > w ? "am" : "pm"; + case "T": + return 12 > w ? "A" : "P"; + case "TT": + return 12 > w ? "AM" : "PM"; + case "K": + return r ? "UTC" : (String(h).match(f) || [""]).pop().replace(g, ""); + case "z": + return(0 < v ? "-" : "+") + Math.floor(Math.abs(v) / 60); + case "zz": + return(0 < v ? "-" : "+") + Q(Math.floor(Math.abs(v) / 60), 2); + case "zzz": + return(0 < v ? "-" : "+") + Q(Math.floor(Math.abs(v) / 60), 2) + Q(Math.abs(v) % 60, 2); + default: + return a.slice(1, a.length - 1) + } + }) + } + }(), ba = function (a, c, b) { + if (null === a) + return""; + a = Number(a); + var d = 0 > a ? !0 : !1; + d && (a *= -1); + var e = b ? b.decimalSeparator : ".", f = b ? b.digitGroupSeparator : ",", g = ""; + c = String(c); + var g = 1, h = b = "", q = -1, k = [], n = [], m = 0, l = 0, p = 0, r = !1, t = 0, h = c.match(/"[^"]*"|'[^']*'|[eE][+-]*[0]+|[,]+[.]|\u2030|./g); + c = null; + for (var y = 0; h && y < h.length; y++) + if (c = h[y], "." === c && 0 > q) + q = y; + else { + if ("%" === c) + g *= 100; + else if ("\u2030" === c) { + g *= 1E3; + continue + } else if ("," === c[0] && "." === c[c.length - 1]) { + g /= Math.pow(1E3, c.length - 1); + q = y + c.length - 1; + continue + } else + "E" !== c[0] && "e" !== c[0] || "0" !== c[c.length - 1] || (r = !0); + 0 > q ? (k.push(c), "#" === c || "0" === c ? m++ : "," === c && p++) : (n.push(c), "#" !== c && "0" !== c || l++) + } + r && (c = Math.floor(a), t = (0 === c ? "" : String(c)).length - m, g /= Math.pow(10, t)); + 0 > q && (q = y); + g = (a * g).toFixed(l); + c = g.split("."); + g = (c[0] + "").split(""); + a = (c[1] + + "").split(""); + g && "0" === g[0] && g.shift(); + for (y = r = h = l = q = 0; 0 < k.length; ) + if (c = k.pop(), "#" === c || "0" === c) + if (q++, q === m) { + var s = g, g = []; + if ("0" === c) + for (c = m - l - (s?s.length:0); 0 < c; ) + s.unshift("0"), c--; + for (; 0 < s.length; ) + b = s.pop() + b, y++, 0 === y % r && (h === p && 0 < s.length) && (b = f + b); + d && (b = "-" + b) + } else + 0 < g.length ? (b = g.pop() + b, l++, y++) : "0" === c && (b = "0" + b, l++, y++), 0 === y % r && (h === p && 0 < g.length) && (b = f + b); + else + "E" !== c[0] && "e" !== c[0] || "0" !== c[c.length - 1] || !/[eE][+-]*[0]+/.test(c) ? "," === c ? (h++, r = y, y = 0, 0 < g.length && (b = f + b)) : b = 1 < c.length && + ('"' === c[0] && '"' === c[c.length - 1] || "'" === c[0] && "'" === c[c.length - 1]) ? c.slice(1, c.length - 1) + b : c + b : (c = 0 > t ? c.replace("+", "").replace("-", "") : c.replace("-", ""), b += c.replace(/[0]+/, function (a) { + return Q(t, a.length) + })); + d = ""; + for (f = !1; 0 < n.length; ) + c = n.shift(), "#" === c || "0" === c ? 0 < a.length && 0 !== Number(a.join("")) ? (d += a.shift(), f = !0) : "0" === c && (d += "0", f = !0) : 1 < c.length && ('"' === c[0] && '"' === c[c.length - 1] || "'" === c[0] && "'" === c[c.length - 1]) ? d += c.slice(1, c.length - 1) : "E" !== c[0] && "e" !== c[0] || "0" !== c[c.length - 1] || !/[eE][+-]*[0]+/.test(c) ? + d += c : (c = 0 > t ? c.replace("+", "").replace("-", "") : c.replace("-", ""), d += c.replace(/[0]+/, function (a) { + return Q(t, a.length) + })); + return b + ((f ? e : "") + d) + }, ra = function (a) { + var c = 0, b = 0; + a = a || window.event; + a.offsetX || 0 === a.offsetX ? (c = a.offsetX, b = a.offsetY) : a.layerX || 0 == a.layerX ? (c = a.layerX, b = a.layerY) : (c = a.pageX - a.target.offsetLeft, b = a.pageY - a.target.offsetTop); + return{x: c, y: b} + }, Fa = !0, ta = window.devicePixelRatio || 1, ka = 1, N = Fa ? ta / ka : 1, Ma = {reset: {image: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAcCAYAAAAAwr0iAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTNui8sowAAAKRSURBVEiJrdY/iF1FFMfxzwnZrGISUSR/JLGIhoh/QiRNBLWxMLIWEkwbgiAoFgoW2mhlY6dgpY2IlRBRxBSKhSAKIklWJRYuMZKAhiyopAiaTY7FvRtmZ+/ed9/zHRjezLw5v/O9d86cuZGZpmURAfdn5o9DfdZNLXpjz+LziPgyIl6MiG0jPTJzZBuyDrP4BVm0P/AKbljTb4ToY/gGewYA7KyCl+1b3DUYANvwbiHw0gCAGRzBOzjTAXEOu0cC4Ch+r5x/HrpdrcZmvIDFSucMtnYCYC++6HmNDw8FKDT34ETrf639/azOr5vwRk/g5fbeuABtgC04XWk9VQLciMP4EH/3AFzErRNC7MXlQmsesSoHsGPE23hmEoBW+61K66HMXFmIMvN8myilXS36R01ub+KfYvw43ZXwYDX+AHP4BAci4pFJomfmr/ihmNofESsBImJGk7mlncrM45n5JPbhz0kAWpsv+juxaX21YIPmVJS2uNzJMS6ZNexC0d+I7fUWXLFyz2kSZlpWPvASlmqAf/FXNXf3FAF2F/1LuFifAlionB6dRuSI2IwHi6lzmXmp6xR8XY0fiIh7psAwh+3FuDkRHQVjl+a8lkXjo0kLUKH7XaV5oO86PmZ1FTzyP4K/XGl9v/zwfbW7BriiuETGCP5ch9bc9f97HF/vcFzCa5gdEPgWq+t/4v0V63oE1uF4h0DiFJ7HnSWMppDdh1dxtsPvJ2wcBNAKbsJXa0Ck5opdaBPsRNu/usba09i1KsaAVzmLt3sghrRjuK1Tf4xkegInxwy8gKf7dKMVH2QRsV5zXR/Cftyu+aKaKbbkQrsdH+PTzLzcqzkOQAVzM+7FHdiqqe2/YT4zF/t8S/sPmawyvC974vcAAAAASUVORK5CYII="}, + pan: {image: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTNui8sowAAAJVSURBVFiFvZe7a1RBGMV/x2hWI4JpfKCIiSBKOoOCkID/wP4BFqIIFkE02ChIiC8QDKlSiI3YqRBsBVGwUNAUdiIEUgjiAzQIIsuKJsfizsXr5t7d+8jmwLDfzHz3nLOzc7+ZxTZlGyDgZiWOCuJ9wH2gCUyuqQFgF/AGcKJNrYkBYBj40CIet+muGQi/96kM4WS7C/Tm5VUg7whJg8BkEGkCR4BDYfodsADUgP6wErO5iCtswsuJb32hdbXy8qzL5TIdmzJinHdZoZIBZcSFkGlAKs1Z3YCketZcBtouuaQNkrblMiBpBrhme7mAgU4wMCvpcFsDkq4C54DFVRTH9h+i6vlE0r5UA5ImgCuh28jB28iIs7BIVCOeStoZD64P4uPAjUTygKSx2FsK2TIwkugfk9Qkfd/E+yMWHQCeSRqx/R3gOp3LazfaS2C4B5gHDgD7U9x3E3uAH7KNpC3AHHAwTL4FHgM9GQ8vAaPA0dB/Abxqk2/gBLA9MXba9r1k/d4LfA3JtwueBeM58ucS+edXnAW23wP10N3advEi9CXizTnyN4bPS7Zn4sH/dq3t18AY4e1YLYSy3g/csj2VnFshZPuOpOeSKHCodUINuGj7YetE6je1PV9QoNPJ9StNHKodx7nRbiWrGHBGXAi5DUiqtQwtpcWK0Jubt8CltA5MEV1IfwO7+VffPwGfia5m34CT4bXujIIX0Qna1/cGMNqV/wUJE2czxD8CQ4X5Sl7Jz7SILwCDpbjKPBRMHAd+EtX4HWV5Spdc2w8kDQGPbH8py/MXMygM69/FKz4AAAAASUVORK5CYII="}, + zoom: {image: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAK6wAACusBgosNWgAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTNui8sowAAAMqSURBVFiFvdfbj91TFMDxz57U6GUEMS1aYzyMtCSSDhWjCZMInpAI3khE/QHtgzdRkXgSCS8SES9epKLi0oRKNETjRahREq2KS1stdRujtDPtbA97n5zdn9+5zJxTK9k5v3POXmt991p7r71+IcaoGwkhTOIebMRqzOBTvIG3Y4zTXRmqSoyx5cAKbMJOHMFJnMZ8/jyFaXyMR7G6nb1aH22cP4BvcBxziG3GKfyTIR9D6BYg1KUghPBCDveFlb/24Av8iuUYw41YVsz5G7uxKcZ4aMEpwGt5NY3V/YbHsQ6rcAHOw/kYxigewr5CZw4fYGxBKcCLOFEYehXrMdRhr5yLETxVScsOLOkKAPfn1TYMPIvLFrShUlS2FDZm8XRHACzFAWl3R2xbqPMCYhmeLCAOYEMngAczbcTvuHYxzguIy/FesR9e6gSwU/OoPYHBHgHgviIKX2Flq7k34KhmcVnbi/PC8JX4MgMcxb118wZwdz5aISscqx7VRcox7MrPQ7i+btIAJrAkf9+bI9EPmZY2IAxiTSuAldLq4Y9+AcSUh78KP0tbAcwU35cXMD1JCIFUoGiehlqAz6TNB1f1C0DK+0h+nsNPrQC2a4bqGmlD9kOGcWt+Po6pVgDvSxfJaSkFd4UQBvoAsBYbCoB3a2flM7slA0R8iyt6rAFDeDPbm8eOTpVwGD9qVq7nLbIaZnmksPU1JtsCZMXNmpdRxFasWITzh6Xj3LCzra1OxcD2QjHiGVzdpfORnMqZio2PcF23ABdJF1Np4BPptlyPi6WzPYBzpJZtHe7A6xW9cnyP8TqA//SEIYRL8Bxul7rihvwgtVn78WcGGZXa9HGd5TDujDHuOePXNiHdKjWgZX/YbsxLx/ktqbjVzTlcjUSnvI5JrdlUVp6WesZZ6R1hRrpq9+EVTGS9jTjYAuKIouGpbcurEkIYxC051KNSamazsc+xK8b4S0VnEi/j0hqTP+M27O258egQwZuzs7pI7Mf4WQXIEDc5s9sux+5+1Py2EmP8UOq6GvWhIScxfdYjUERiAt9Jd84J6a16zf8JEKT3yCm8g1UxRv8CC4pyRhzR1uUAAAAASUVORK5CYII="}, + menu: {image: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAgCAYAAAAbifjMAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAK6wAACusBgosNWgAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTNui8sowAAAAWdEVYdENyZWF0aW9uIFRpbWUAMDcvMTUvMTTPsvU0AAAAP0lEQVRIie2SMQoAIBDDUvH/X667g8sJJ9KOhYYOkW0qGaU1MPdC0vGSbV19EACo3YMPAFH5BUBUjsqfAPpVXtNgGDfxEDCtAAAAAElFTkSuQmCC"}}; + L.prototype.setOptions = function (a, c) { + if (qa[this._defaultsKey]) { + var b = qa[this._defaultsKey], d; + for (d in b) + b.hasOwnProperty(d) && (this[d] = a && d in a ? a[d] : c && d in + c ? c[d] : b[d]) + } + }; + L.prototype.updateOption = function (a) { + var c = qa[this._defaultsKey], b = this._options.theme ? this._options.theme : this.chart && this.chart._options.theme ? this.chart._options.theme : "theme1", d = {}, e = this[a]; + b && (ca[b] && ca[b][this._defaultsKey]) && (d = ca[b][this._defaultsKey]); + a in c && (e = a in this._options ? this._options[a] : d && a in d ? d[a] : c[a]); + if (e === this[a]) + return!1; + this[a] = e; + return!0 + }; + L.prototype.trackChanges = function (a) { + if (!this.sessionVariables) + throw"Session Variable Store not set"; + this.sessionVariables[a] = + this._options[a] + }; + L.prototype.isBeingTracked = function (a) { + this._options._oldOptions || (this._options._oldOptions = {}); + return this._options._oldOptions[a] ? !0 : !1 + }; + L.prototype.hasOptionChanged = function (a) { + if (!this.sessionVariables) + throw"Session Variable Store not set"; + return this.sessionVariables[a] !== this._options[a] + }; + L.prototype.addEventListener = function (a, c, b) { + a && c && (this._eventListeners[a] = this._eventListeners[a] || [], this._eventListeners[a].push({context: b || this, eventHandler: c})) + }; + L.prototype.removeEventListener = + function (a, c) { + if (a && c && this._eventListeners[a]) + for (var b = this._eventListeners[a], d = 0; d < b.length; d++) + if (b[d].eventHandler === c) { + b[d].splice(d, 1); + break + } + }; + L.prototype.removeAllEventListeners = function () { + this._eventListeners = [] + }; + L.prototype.dispatchEvent = function (a, c, b) { + if (a && this._eventListeners[a]) { + c = c || {}; + for (var d = this._eventListeners[a], e = 0; e < d.length; e++) + d[e].eventHandler.call(d[e].context, c) + } + "function" === typeof this[a] && this[a].call(b || this.chart._publicChartReference, c) + }; + T(v, L); + v.prototype._updateOptions = + function () { + var a = this; + this.updateOption("width"); + this.updateOption("height"); + this.updateOption("dataPointWidth"); + this.updateOption("dataPointMinWidth"); + this.updateOption("dataPointMaxWidth"); + this.updateOption("interactivityEnabled"); + this.updateOption("theme"); + this.updateOption("colorSet") && (this._selectedColorSet = "undefined" !== typeof aa[this.colorSet] ? aa[this.colorSet] : aa.colorSet1); + this.updateOption("backgroundColor"); + this.backgroundColor || (this.backgroundColor = "rgba(0,0,0,0)"); + this.updateOption("culture"); + this._cultureInfo = new ha(this._options.culture); + this.updateOption("animationEnabled"); + this.animationEnabled = this.animationEnabled && u; + this.updateOption("animationDuration"); + this.updateOption("rangeChanging"); + this.updateOption("rangeChanged"); + this.updateOption("exportEnabled"); + this.updateOption("exportFileName"); + this.updateOption("zoomType"); + this._options.zoomEnabled ? (this._zoomButton || (X(this._zoomButton = document.createElement("button")), U(this, this._zoomButton, "pan"), this._toolBar.appendChild(this._zoomButton), + J(this._zoomButton, "click", function () { + a.zoomEnabled ? (a.zoomEnabled = !1, a.panEnabled = !0, U(a, a._zoomButton, "zoom")) : (a.zoomEnabled = !0, a.panEnabled = !1, U(a, a._zoomButton, "pan")); + a.render() + })), this._resetButton || (X(this._resetButton = document.createElement("button")), U(this, this._resetButton, "reset"), this._toolBar.appendChild(this._resetButton), J(this._resetButton, "click", function () { + a._toolTip.hide(); + a.zoomEnabled || a.panEnabled ? (a.zoomEnabled = !0, a.panEnabled = !1, U(a, a._zoomButton, "pan"), a._defaultCursor = + "default", a.overlaidCanvas.style.cursor = a._defaultCursor) : (a.zoomEnabled = !1, a.panEnabled = !1); + a.sessionVariables.axisX && (a.sessionVariables.axisX.newViewportMinimum = null, a.sessionVariables.axisX.newViewportMaximum = null); + a.sessionVariables.axisY && (a.sessionVariables.axisY.newViewportMinimum = null, a.sessionVariables.axisY.newViewportMaximum = null); + a.sessionVariables.axisY2 && (a.sessionVariables.axisY2.newViewportMinimum = null, a.sessionVariables.axisY2.newViewportMaximum = null); + a.resetOverlayedCanvas(); + X(a._zoomButton, + a._resetButton); + a._dispatchRangeEvent("rangeChanging", "reset"); + a.render(); + a._dispatchRangeEvent("rangeChanged", "reset") + }), this.overlaidCanvas.style.cursor = a._defaultCursor), this.zoomEnabled || this.panEnabled || (this._zoomButton ? (a._zoomButton.getAttribute("state") === a._cultureInfo.zoomText ? (this.panEnabled = !0, this.zoomEnabled = !1) : (this.zoomEnabled = !0, this.panEnabled = !1), la(a._zoomButton, a._resetButton)) : (this.zoomEnabled = !0, this.panEnabled = !1))) : this.panEnabled = this.zoomEnabled = !1; + this._menuButton ? + this.exportEnabled ? la(this._menuButton) : X(this._menuButton) : this.exportEnabled && u && (this._menuButton = document.createElement("button"), U(this, this._menuButton, "menu"), this._toolBar.appendChild(this._menuButton), J(this._menuButton, "click", function () { + "none" !== a._dropdownMenu.style.display || a._dropDownCloseTime && 500 >= (new Date).getTime() - a._dropDownCloseTime.getTime() || (a._dropdownMenu.style.display = "block", a._menuButton.blur(), a._dropdownMenu.focus()) + }, !0)); + if (!this._dropdownMenu && this.exportEnabled && + u) { + this._dropdownMenu = document.createElement("div"); + this._dropdownMenu.setAttribute("tabindex", -1); + this._dropdownMenu.style.cssText = "position: absolute; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; cursor: pointer;right: 1px;top: 25px;min-width: 120px;outline: 0;border: 1px solid silver;font-size: 14px;font-family: Calibri, Verdana, sans-serif;padding: 5px 0px 5px 0px;text-align: left;background-color: #fff;line-height: 20px;box-shadow: 2px 2px 10px #888888;"; + a._dropdownMenu.style.display = "none"; + this._toolBar.appendChild(this._dropdownMenu); + J(this._dropdownMenu, "blur", function () { + X(a._dropdownMenu); + a._dropDownCloseTime = new Date + }, !0); + var c = document.createElement("div"); + c.style.cssText = "padding: 2px 15px 2px 10px"; + c.innerHTML = this._cultureInfo.saveJPGText; + this._dropdownMenu.appendChild(c); + J(c, "mouseover", function () { + this.style.backgroundColor = "#EEEEEE" + }, !0); + J(c, "mouseout", function () { + this.style.backgroundColor = "transparent" + }, !0); + J(c, "click", function () { + Ga(a.canvas, + "jpeg", a.exportFileName); + X(a._dropdownMenu) + }, !0); + c = document.createElement("div"); + c.style.cssText = "padding: 2px 15px 2px 10px"; + c.innerHTML = this._cultureInfo.savePNGText; + this._dropdownMenu.appendChild(c); + J(c, "mouseover", function () { + this.style.backgroundColor = "#EEEEEE" + }, !0); + J(c, "mouseout", function () { + this.style.backgroundColor = "transparent" + }, !0); + J(c, "click", function () { + Ga(a.canvas, "png", a.exportFileName); + X(a._dropdownMenu) + }, !0) + } + "none" !== this._toolBar.style.display && this._zoomButton && (this.panEnabled ? U(a, + a._zoomButton, "zoom") : U(a, a._zoomButton, "pan"), a._resetButton.getAttribute("state") !== a._cultureInfo.resetText && U(a, a._resetButton, "reset")); + if ("undefined" === typeof qa.Chart.creditHref) + this.creditHref = "http://canvasjs.com/", this.creditText = "CanvasJS.com"; + else + var b = this.updateOption("creditText"), d = this.updateOption("creditHref"); + if (0 === this.renderCount || b || d) + this._creditLink.setAttribute("href", this.creditHref), this._creditLink.innerHTML = this.creditText; + this.creditHref && this.creditText ? this._creditLink.parentElement || + this._canvasJSContainer.appendChild(this._creditLink) : this._creditLink.parentElement && this._canvasJSContainer.removeChild(this._creditLink); + this._options.toolTip && this._toolTip._options !== this._options.toolTip && (this._toolTip._options = this._options.toolTip); + for (var e in this._toolTip._options) + this._toolTip._options.hasOwnProperty(e) && this._toolTip.updateOption(e) + }; + v.prototype._updateSize = function () { + var a = 0, c = 0; + this._options.width ? a = this.width : this.width = a = 0 < this._container.clientWidth ? this._container.clientWidth : + this.width; + this._options.height ? c = this.height : this.height = c = 0 < this._container.clientHeight ? this._container.clientHeight : this.height; + return this.canvas.width !== a * N || this.canvas.height !== c * N ? (ja(this.canvas, a, c), ja(this.overlaidCanvas, a, c), ja(this._eventManager.ghostCanvas, a, c), !0) : !1 + }; + v.prototype._initialize = function () { + this._animator ? this._animator.cancelAllAnimations() : this._animator = new va(this); + this.removeAllEventListeners(); + this.disableToolTip = !1; + this._axes = []; + this.pieDoughnutClickHandler = null; + this.animationRequestId && this.cancelRequestAnimFrame.call(window, this.animationRequestId); + this._updateOptions(); + this.animatedRender = u && this.animationEnabled && 0 === this.renderCount; + this._updateSize(); + this.clearCanvas(); + this.ctx.beginPath(); + this.axisY2 = this.axisY = this.axisX = null; + this._indexLabels = []; + this._dataInRenderedOrder = []; + this._events = []; + this._eventManager && this._eventManager.reset(); + this.plotInfo = {axisPlacement: null, axisXValueType: null, plotTypes: []}; + this.layoutManager = new da(0, 0, this.width, this.height, + 2); + this.plotArea.layoutManager && this.plotArea.layoutManager.reset(); + this.data = []; + var a = 0; + if (this._options.data) + for (var c = 0; c < this._options.data.length; c++) + if (a++, !this._options.data[c].type || 0 <= v._supportedChartTypes.indexOf(this._options.data[c].type)) { + var b = new Y(this, this._options.data[c], this.theme, a - 1, ++this._eventManager.lastObjectId); + null === b.name && (b.name = "DataSeries " + a); + null === b.color ? 1 < this._options.data.length ? (b._colorSet = [this._selectedColorSet[b.index % this._selectedColorSet.length]], + b.color = this._selectedColorSet[b.index % this._selectedColorSet.length]) : b._colorSet = "line" === b.type || "stepLine" === b.type || "spline" === b.type || "area" === b.type || "stepArea" === b.type || "splineArea" === b.type || "stackedArea" === b.type || "stackedArea100" === b.type || "rangeArea" === b.type || "rangeSplineArea" === b.type || "candlestick" === b.type || "ohlc" === b.type ? [this._selectedColorSet[0]] : this._selectedColorSet : b._colorSet = [b.color]; + null === b.markerSize && (("line" === b.type || "stepLine" === b.type || "spline" === b.type || 0 <= b.type.toLowerCase().indexOf("area")) && + b.dataPoints && b.dataPoints.length < this.width / 16 || "scatter" === b.type) && (b.markerSize = 8); + "bubble" !== b.type && "scatter" !== b.type || !b.dataPoints || (b.dataPoints.some ? b.dataPoints.some(function (a) { + return a.x + }) && b.dataPoints.sort(Ba) : b.dataPoints.sort(Ba)); + this.data.push(b); + var d = b.axisPlacement, e; + "normal" === d ? "xySwapped" === this.plotInfo.axisPlacement ? e = 'You cannot combine "' + b.type + '" with bar chart' : "none" === this.plotInfo.axisPlacement ? e = 'You cannot combine "' + b.type + '" with pie chart' : null === this.plotInfo.axisPlacement && + (this.plotInfo.axisPlacement = "normal") : "xySwapped" === d ? "normal" === this.plotInfo.axisPlacement ? e = 'You cannot combine "' + b.type + '" with line, area, column or pie chart' : "none" === this.plotInfo.axisPlacement ? e = 'You cannot combine "' + b.type + '" with pie chart' : null === this.plotInfo.axisPlacement && (this.plotInfo.axisPlacement = "xySwapped") : "none" == d && ("normal" === this.plotInfo.axisPlacement ? e = 'You cannot combine "' + b.type + '" with line, area, column or bar chart' : "xySwapped" === this.plotInfo.axisPlacement ? e = + 'You cannot combine "' + b.type + '" with bar chart' : null === this.plotInfo.axisPlacement && (this.plotInfo.axisPlacement = "none")); + if (e && window.console) { + window.console.log(e); + return + } + } + this._objectsInitialized = !0 + }; + v._supportedChartTypes = function (a) { + a.indexOf || (a.indexOf = La); + return a + }("line stepLine spline column area stepArea splineArea bar bubble scatter stackedColumn stackedColumn100 stackedBar stackedBar100 stackedArea stackedArea100 candlestick ohlc rangeColumn rangeBar rangeArea rangeSplineArea pie doughnut funnel".split(" ")); + v.prototype.render = function (a) { + a && (this._options = a); + this._initialize(); + var c = []; + for (a = 0; a < this.data.length; a++) + if ("normal" === this.plotInfo.axisPlacement || "xySwapped" === this.plotInfo.axisPlacement) + this.data[a].axisYType && "primary" !== this.data[a].axisYType ? "secondary" === this.data[a].axisYType && (this.axisY2 || ("normal" === this.plotInfo.axisPlacement ? this._axes.push(this.axisY2 = new F(this, this._options.axisY2, "axisY", "right")) : "xySwapped" === this.plotInfo.axisPlacement && this._axes.push(this.axisY2 = new F(this, + this._options.axisY2, "axisY", "top"))), this.data[a].axisY = this.axisY2) : (this.axisY || ("normal" === this.plotInfo.axisPlacement ? this._axes.push(this.axisY = new F(this, this._options.axisY, "axisY", "left")) : "xySwapped" === this.plotInfo.axisPlacement && this._axes.push(this.axisY = new F(this, this._options.axisY, "axisY", "bottom"))), this.data[a].axisY = this.axisY), this.axisX || ("normal" === this.plotInfo.axisPlacement ? this._axes.push(this.axisX = new F(this, this._options.axisX, "axisX", "bottom")) : "xySwapped" === this.plotInfo.axisPlacement && + this._axes.push(this.axisX = new F(this, this._options.axisX, "axisX", "left"))), this.data[a].axisX = this.axisX; + this.axisY && this.axisY2 && (0 < this.axisY.gridThickness && "undefined" === typeof this.axisY2._options.gridThickness ? this.axisY2.gridThickness = 0 : 0 < this.axisY2.gridThickness && "undefined" === typeof this.axisY._options.gridThickness && (this.axisY.gridThickness = 0)); + var b = !1; + if (0 < this._axes.length && (this.zoomEnabled || this.panEnabled)) + for (a = 0; a < this._axes.length; a++) + if (null !== this._axes[a].viewportMinimum || + null !== this._axes[a].viewportMaximum) { + b = !0; + break + } + b ? la(this._zoomButton, this._resetButton) : (X(this._zoomButton, this._resetButton), this._options.zoomEnabled && (this.zoomEnabled = !0, this.panEnabled = !1)); + this._processData(); + this._options.title && (this._title = new ga(this, this._options.title), this._title.dockInsidePlotArea ? c.push(this._title) : this._title.render()); + if (this._options.subtitles) + for (a = 0; a < this._options.subtitles.length; a++) + this.subtitles = [], b = new na(this, this._options.subtitles[a]), this.subtitles.push(b), + b.dockInsidePlotArea ? c.push(b) : b.render(); + this.legend = new oa(this, this._options.legend, this.theme); + for (a = 0; a < this.data.length; a++) + (this.data[a].showInLegend || "pie" === this.data[a].type || "doughnut" === this.data[a].type) && this.legend.dataSeries.push(this.data[a]); + this.legend.dockInsidePlotArea ? c.push(this.legend) : this.legend.render(); + if ("normal" === this.plotInfo.axisPlacement || "xySwapped" === this.plotInfo.axisPlacement) + F.setLayoutAndRender(this.axisX, this.axisY, this.axisY2, this.plotInfo.axisPlacement, this.layoutManager.getFreeSpace()); + else if ("none" === this.plotInfo.axisPlacement) + this.preparePlotArea(); + else + return; + for (a = 0; a < c.length; a++) + c[a].render(); + var d = []; + if (this.animatedRender) { + var e = $(this.width, this.height); + e.getContext("2d").drawImage(this.canvas, 0, 0, this.width, this.height) + } + for (a = 0; a < this.plotInfo.plotTypes.length; a++) + for (c = this.plotInfo.plotTypes[a], b = 0; b < c.plotUnits.length; b++) { + var f = c.plotUnits[b], g = null; + f.targetCanvas = null; + this.animatedRender && (f.targetCanvas = $(this.width, this.height), f.targetCanvasCtx = f.targetCanvas.getContext("2d")); + "line" === f.type ? g = this.renderLine(f) : "stepLine" === f.type ? g = this.renderStepLine(f) : "spline" === f.type ? g = this.renderSpline(f) : "column" === f.type ? g = this.renderColumn(f) : "bar" === f.type ? g = this.renderBar(f) : "area" === f.type ? g = this.renderArea(f) : "stepArea" === f.type ? g = this.renderStepArea(f) : "splineArea" === f.type ? g = this.renderSplineArea(f) : "stackedColumn" === f.type ? g = this.renderStackedColumn(f) : "stackedColumn100" === f.type ? g = this.renderStackedColumn100(f) : "stackedBar" === f.type ? g = this.renderStackedBar(f) : "stackedBar100" === + f.type ? g = this.renderStackedBar100(f) : "stackedArea" === f.type ? g = this.renderStackedArea(f) : "stackedArea100" === f.type ? g = this.renderStackedArea100(f) : "bubble" === f.type ? g = g = this.renderBubble(f) : "scatter" === f.type ? g = this.renderScatter(f) : "pie" === f.type ? this.renderPie(f) : "doughnut" === f.type ? this.renderPie(f) : "candlestick" === f.type ? g = this.renderCandlestick(f) : "ohlc" === f.type ? g = this.renderCandlestick(f) : "rangeColumn" === f.type ? g = this.renderRangeColumn(f) : "rangeBar" === f.type ? g = this.renderRangeBar(f) : "rangeArea" === + f.type ? g = this.renderRangeArea(f) : "rangeSplineArea" === f.type && (g = this.renderRangeSplineArea(f)); + for (var h = 0; h < f.dataSeriesIndexes.length; h++) + this._dataInRenderedOrder.push(this.data[f.dataSeriesIndexes[h]]); + this.animatedRender && g && d.push(g) + } + this.animatedRender && 0 < this._indexLabels.length && (a = $(this.width, this.height).getContext("2d"), d.push(this.renderIndexLabels(a))); + var q = this; + 0 < d.length ? (q.disableToolTip = !0, q._animator.animate(200, q.animationDuration, function (a) { + q.ctx.clearRect(0, 0, q.width, q.height); + q.ctx.drawImage(e, 0, 0, Math.floor(q.width * N), Math.floor(q.height * N), 0, 0, q.width, q.height); + for (var b = 0; b < d.length; b++) + g = d[b], 1 > a && "undefined" !== typeof g.startTimePercent ? a >= g.startTimePercent && g.animationCallback(g.easingFunction(a - g.startTimePercent, 0, 1, 1 - g.startTimePercent), g) : g.animationCallback(g.easingFunction(a, 0, 1, 1), g); + q.dispatchEvent("dataAnimationIterationEnd", {chart: q}) + }, function () { + d = []; + for (var a = 0; a < q.plotInfo.plotTypes.length; a++) + for (var b = q.plotInfo.plotTypes[a], c = 0; c < b.plotUnits.length; c++) + b.plotUnits[c].targetCanvas = + null; + e = null; + q.disableToolTip = !1 + })) : (0 < q._indexLabels.length && q.renderIndexLabels(), q.dispatchEvent("dataAnimationIterationEnd", {chart: q})); + this.attachPlotAreaEventHandlers(); + this.zoomEnabled || (this.panEnabled || !this._zoomButton || "none" === this._zoomButton.style.display) || X(this._zoomButton, this._resetButton); + this._toolTip._updateToolTip(); + this.renderCount++ + }; + v.prototype.attachPlotAreaEventHandlers = function () { + this.attachEvent({context: this, chart: this, mousedown: this._plotAreaMouseDown, mouseup: this._plotAreaMouseUp, + mousemove: this._plotAreaMouseMove, cursor: this.zoomEnabled ? "col-resize" : "move", cursor:this.panEnabled ? "move" : "default", capture: !0, bounds: this.plotArea}) + }; + v.prototype.categoriseDataSeries = function () { + for (var a = "", c = 0; c < this.data.length; c++) + if (a = this.data[c], a.dataPoints && (0 !== a.dataPoints.length && a.visible) && 0 <= v._supportedChartTypes.indexOf(a.type)) { + for (var b = null, d = !1, e = null, f = !1, g = 0; g < this.plotInfo.plotTypes.length; g++) + if (this.plotInfo.plotTypes[g].type === a.type) { + d = !0; + b = this.plotInfo.plotTypes[g]; + break + } + d || (b = {type: a.type, totalDataSeries: 0, plotUnits: []}, this.plotInfo.plotTypes.push(b)); + for (g = 0; g < b.plotUnits.length; g++) + if (b.plotUnits[g].axisYType === a.axisYType) { + f = !0; + e = b.plotUnits[g]; + break + } + f || (e = {type: a.type, previousDataSeriesCount: 0, index: b.plotUnits.length, plotType: b, axisYType: a.axisYType, axisY: "primary" === a.axisYType ? this.axisY : this.axisY2, axisX: this.axisX, dataSeriesIndexes: [], yTotals: []}, b.plotUnits.push(e)); + b.totalDataSeries++; + e.dataSeriesIndexes.push(c); + a.plotUnit = e + } + for (c = 0; c < this.plotInfo.plotTypes.length; c++) + for (b = + this.plotInfo.plotTypes[c], g = a = 0; g < b.plotUnits.length; g++) + b.plotUnits[g].previousDataSeriesCount = a, a += b.plotUnits[g].dataSeriesIndexes.length + }; + v.prototype.assignIdToDataPoints = function () { + for (var a = 0; a < this.data.length; a++) { + var c = this.data[a]; + if (c.dataPoints) + for (var b = c.dataPoints.length, d = 0; d < b; d++) + c.dataPointIds[d] = ++this._eventManager.lastObjectId + } + }; + v.prototype._processData = function () { + this.assignIdToDataPoints(); + this.categoriseDataSeries(); + for (var a = 0; a < this.plotInfo.plotTypes.length; a++) + for (var c = + this.plotInfo.plotTypes[a], b = 0; b < c.plotUnits.length; b++) { + var d = c.plotUnits[b]; + "line" === d.type || "stepLine" === d.type || "spline" === d.type || "column" === d.type || "area" === d.type || "stepArea" === d.type || "splineArea" === d.type || "bar" === d.type || "bubble" === d.type || "scatter" === d.type ? this._processMultiseriesPlotUnit(d) : "stackedColumn" === d.type || "stackedBar" === d.type || "stackedArea" === d.type ? this._processStackedPlotUnit(d) : "stackedColumn100" === d.type || "stackedBar100" === d.type || "stackedArea100" === d.type ? this._processStacked100PlotUnit(d) : + "candlestick" !== d.type && "ohlc" !== d.type && "rangeColumn" !== d.type && "rangeBar" !== d.type && "rangeArea" !== d.type && "rangeSplineArea" !== d.type || this._processMultiYPlotUnit(d) + } + }; + v.prototype._processMultiseriesPlotUnit = function (a) { + if (a.dataSeriesIndexes && !(1 > a.dataSeriesIndexes.length)) + for (var c = a.axisY.dataInfo, b = a.axisX.dataInfo, d, e, f = !1, g = 0; g < a.dataSeriesIndexes.length; g++) { + var h = this.data[a.dataSeriesIndexes[g]], q = 0, k = !1, n = !1, m; + if ("normal" === h.axisPlacement || "xySwapped" === h.axisPlacement) + var l = this.sessionVariables.axisX.newViewportMinimum ? + this.sessionVariables.axisX.newViewportMinimum : this._options.axisX && this._options.axisX.viewportMinimum ? this._options.axisX.viewportMinimum : this._options.axisX && this._options.axisX.minimum ? this._options.axisX.minimum : -Infinity, p = this.sessionVariables.axisX.newViewportMaximum ? this.sessionVariables.axisX.newViewportMaximum : this._options.axisX && this._options.axisX.viewportMaximum ? this._options.axisX.viewportMaximum : this._options.axisX && this._options.axisX.maximum ? this._options.axisX.maximum : Infinity; + if (h.dataPoints[q].x && h.dataPoints[q].x.getTime || "dateTime" === h.xValueType) + f = !0; + for (q = 0; q < h.dataPoints.length; q++) { + "undefined" === typeof h.dataPoints[q].x && (h.dataPoints[q].x = q); + h.dataPoints[q].x.getTime ? (f = !0, d = h.dataPoints[q].x.getTime()) : d = h.dataPoints[q].x; + e = h.dataPoints[q].y; + d < b.min && (b.min = d); + d > b.max && (b.max = d); + e < c.min && (c.min = e); + e > c.max && (c.max = e); + if (0 < q) { + var r = d - h.dataPoints[q - 1].x; + 0 > r && (r *= -1); + b.minDiff > r && 0 !== r && (b.minDiff = r); + null !== e && null !== h.dataPoints[q - 1].y && (r = e - h.dataPoints[q - 1].y, + 0 > r && (r *= -1), c.minDiff > r && 0 !== r && (c.minDiff = r)) + } + if (d < l && !k) + null !== e && (m = d); + else { + if (!k && (k = !0, 0 < q)) { + q -= 2; + continue + } + if (d > p && !n) + n = !0; + else if (d > p && n) + continue; + h.dataPoints[q].label && (a.axisX.labels[d] = h.dataPoints[q].label); + d < b.viewPortMin && (b.viewPortMin = d); + d > b.viewPortMax && (b.viewPortMax = d); + null === e ? b.viewPortMin === d && m < d && (b.viewPortMin = m) : (e < c.viewPortMin && (c.viewPortMin = e), e > c.viewPortMax && (c.viewPortMax = e)) + } + } + this.plotInfo.axisXValueType = h.xValueType = f ? "dateTime" : "number" + } + }; + v.prototype._processStackedPlotUnit = + function (a) { + if (a.dataSeriesIndexes && !(1 > a.dataSeriesIndexes.length)) { + for (var c = a.axisY.dataInfo, b = a.axisX.dataInfo, d, e, f = !1, g = [], h = [], q = Infinity, k = 0; k < a.dataSeriesIndexes.length; k++) { + var n = this.data[a.dataSeriesIndexes[k]], m = 0, l = !1, p = !1, r; + if ("normal" === n.axisPlacement || "xySwapped" === n.axisPlacement) + var t = this.sessionVariables.axisX.newViewportMinimum ? this.sessionVariables.axisX.newViewportMinimum : this._options.axisX && this._options.axisX.viewportMinimum ? this._options.axisX.viewportMinimum : this._options.axisX && + this._options.axisX.minimum ? this._options.axisX.minimum : -Infinity, y = this.sessionVariables.axisX.newViewportMaximum ? this.sessionVariables.axisX.newViewportMaximum : this._options.axisX && this._options.axisX.viewportMaximum ? this._options.axisX.viewportMaximum : this._options.axisX && this._options.axisX.maximum ? this._options.axisX.maximum : Infinity; + if (n.dataPoints[m].x && n.dataPoints[m].x.getTime || "dateTime" === n.xValueType) + f = !0; + for (m = 0; m < n.dataPoints.length; m++) { + "undefined" === typeof n.dataPoints[m].x && (n.dataPoints[m].x = + m); + n.dataPoints[m].x.getTime ? (f = !0, d = n.dataPoints[m].x.getTime()) : d = n.dataPoints[m].x; + x(n.dataPoints[m].y) ? e = 0 : (e = n.dataPoints[m].y, 0 === k && (q = Math.min(e, q))); + d < b.min && (b.min = d); + d > b.max && (b.max = d); + if (0 < m) { + var s = d - n.dataPoints[m - 1].x; + 0 > s && (s *= -1); + b.minDiff > s && 0 !== s && (b.minDiff = s); + null !== e && null !== n.dataPoints[m - 1].y && (s = e - n.dataPoints[m - 1].y, 0 > s && (s *= -1), c.minDiff > s && 0 !== s && (c.minDiff = s)) + } + if (d < t && !l) + null !== n.dataPoints[m].y && (r = d); + else { + if (!l && (l = !0, 0 < m)) { + m -= 2; + continue + } + if (d > y && !p) + p = !0; + else if (d > y && p) + continue; + n.dataPoints[m].label && (a.axisX.labels[d] = n.dataPoints[m].label); + d < b.viewPortMin && (b.viewPortMin = d); + d > b.viewPortMax && (b.viewPortMax = d); + null === n.dataPoints[m].y ? b.viewPortMin === d && r < d && (b.viewPortMin = r) : (a.yTotals[d] = (a.yTotals[d] ? a.yTotals[d] : 0) + Math.abs(e), 0 <= e ? g[d] = g[d] ? g[d] + e : e : h[d] = h[d] ? h[d] + e : e) + } + } + this.plotInfo.axisXValueType = n.xValueType = f ? "dateTime" : "number" + } + for (m in g) + g.hasOwnProperty(m) && !isNaN(m) && (a = g[m], a < c.min && (c.min = Math.min(a, q)), a > c.max && (c.max = a), m < b.viewPortMin || m > b.viewPortMax || + (a < c.viewPortMin && (c.viewPortMin = Math.min(a, q)), a > c.viewPortMax && (c.viewPortMax = a))); + for (m in h) + h.hasOwnProperty(m) && !isNaN(m) && (a = h[m], a < c.min && (c.min = Math.min(a, q)), a > c.max && (c.max = a), m < b.viewPortMin || m > b.viewPortMax || (a < c.viewPortMin && (c.viewPortMin = Math.min(a, q)), a > c.viewPortMax && (c.viewPortMax = a))) + } + }; + v.prototype._processStacked100PlotUnit = function (a) { + if (a.dataSeriesIndexes && !(1 > a.dataSeriesIndexes.length)) { + for (var c = a.axisY.dataInfo, b = a.axisX.dataInfo, d, e, f = !1, g = !1, h = !1, q = [], k = 0; k < a.dataSeriesIndexes.length; k++) { + var n = + this.data[a.dataSeriesIndexes[k]], m = 0, l = !1, p = !1, r; + if ("normal" === n.axisPlacement || "xySwapped" === n.axisPlacement) + var t = this.sessionVariables.axisX.newViewportMinimum ? this.sessionVariables.axisX.newViewportMinimum : this._options.axisX && this._options.axisX.viewportMinimum ? this._options.axisX.viewportMinimum : this._options.axisX && this._options.axisX.minimum ? this._options.axisX.minimum : -Infinity, y = this.sessionVariables.axisX.newViewportMaximum ? this.sessionVariables.axisX.newViewportMaximum : this._options.axisX && + this._options.axisX.viewportMaximum ? this._options.axisX.viewportMaximum : this._options.axisX && this._options.axisX.maximum ? this._options.axisX.maximum : Infinity; + if (n.dataPoints[m].x && n.dataPoints[m].x.getTime || "dateTime" === n.xValueType) + f = !0; + for (m = 0; m < n.dataPoints.length; m++) { + "undefined" === typeof n.dataPoints[m].x && (n.dataPoints[m].x = m); + n.dataPoints[m].x.getTime ? (f = !0, d = n.dataPoints[m].x.getTime()) : d = n.dataPoints[m].x; + e = x(n.dataPoints[m].y) ? null : n.dataPoints[m].y; + d < b.min && (b.min = d); + d > b.max && (b.max = d); + if (0 < m) { + var s = d - n.dataPoints[m - 1].x; + 0 > s && (s *= -1); + b.minDiff > s && 0 !== s && (b.minDiff = s); + x(e) || null === n.dataPoints[m - 1].y || (s = e - n.dataPoints[m - 1].y, 0 > s && (s *= -1), c.minDiff > s && 0 !== s && (c.minDiff = s)) + } + if (d < t && !l) + null !== e && (r = d); + else { + if (!l && (l = !0, 0 < m)) { + m -= 2; + continue + } + if (d > y && !p) + p = !0; + else if (d > y && p) + continue; + n.dataPoints[m].label && (a.axisX.labels[d] = n.dataPoints[m].label); + d < b.viewPortMin && (b.viewPortMin = d); + d > b.viewPortMax && (b.viewPortMax = d); + null === e ? b.viewPortMin === d && r < d && (b.viewPortMin = r) : (a.yTotals[d] = (a.yTotals[d] ? + a.yTotals[d] : 0) + Math.abs(e), 0 <= e ? g = !0 : 0 > e && (h = !0), q[d] = q[d] ? q[d] + Math.abs(e) : Math.abs(e)) + } + } + this.plotInfo.axisXValueType = n.xValueType = f ? "dateTime" : "number" + } + g && !h ? (c.max = x(c.viewPortMax) ? 99 : Math.max(c.viewPortMax, 99), c.min = x(c.viewPortMin) ? 1 : Math.min(c.viewPortMin, 1)) : g && h ? (c.max = x(c.viewPortMax) ? 99 : Math.max(c.viewPortMax, 99), c.min = x(c.viewPortMin) ? -99 : Math.min(c.viewPortMin, -99)) : !g && h && (c.max = x(c.viewPortMax) ? -1 : Math.max(c.viewPortMax, -1), c.min = x(c.viewPortMin) ? -99 : Math.min(c.viewPortMin, -99)); + c.viewPortMin = + c.min; + c.viewPortMax = c.max; + a.dataPointYSums = q + } + }; + v.prototype._processMultiYPlotUnit = function (a) { + if (a.dataSeriesIndexes && !(1 > a.dataSeriesIndexes.length)) + for (var c = a.axisY.dataInfo, b = a.axisX.dataInfo, d, e, f, g, h = !1, q = 0; q < a.dataSeriesIndexes.length; q++) { + var k = this.data[a.dataSeriesIndexes[q]], n = 0, m = !1, l = !1, p, r, t; + if ("normal" === k.axisPlacement || "xySwapped" === k.axisPlacement) + var y = this.sessionVariables.axisX.newViewportMinimum ? this.sessionVariables.axisX.newViewportMinimum : this._options.axisX && this._options.axisX.viewportMinimum ? + this._options.axisX.viewportMinimum : this._options.axisX && this._options.axisX.minimum ? this._options.axisX.minimum : -Infinity, s = this.sessionVariables.axisX.newViewportMaximum ? this.sessionVariables.axisX.newViewportMaximum : this._options.axisX && this._options.axisX.viewportMaximum ? this._options.axisX.viewportMaximum : this._options.axisX && this._options.axisX.maximum ? this._options.axisX.maximum : Infinity; + if (k.dataPoints[n].x && k.dataPoints[n].x.getTime || "dateTime" === k.xValueType) + h = !0; + for (n = 0; n < k.dataPoints.length; n++) { + "undefined" === + typeof k.dataPoints[n].x && (k.dataPoints[n].x = n); + k.dataPoints[n].x.getTime ? (h = !0, d = k.dataPoints[n].x.getTime()) : d = k.dataPoints[n].x; + if ((e = k.dataPoints[n].y) && e.length) { + f = Math.min.apply(null, e); + g = Math.max.apply(null, e); + r = !0; + for (var z = 0; z < e.length; z++) + null === e.k && (r = !1); + r && (m || (t = p), p = d) + } + d < b.min && (b.min = d); + d > b.max && (b.max = d); + f < c.min && (c.min = f); + g > c.max && (c.max = g); + 0 < n && (r = d - k.dataPoints[n - 1].x, 0 > r && (r *= -1), b.minDiff > r && 0 !== r && (b.minDiff = r), e && (null !== e[0] && k.dataPoints[n - 1].y && null !== k.dataPoints[n - 1].y[0]) && + (r = e[0] - k.dataPoints[n - 1].y[0], 0 > r && (r *= -1), c.minDiff > r && 0 !== r && (c.minDiff = r))); + if (!(d < y) || m) { + if (!m && (m = !0, 0 < n)) { + n -= 2; + p = t; + continue + } + if (d > s && !l) + l = !0; + else if (d > s && l) + continue; + k.dataPoints[n].label && (a.axisX.labels[d] = k.dataPoints[n].label); + d < b.viewPortMin && (b.viewPortMin = d); + d > b.viewPortMax && (b.viewPortMax = d); + if (b.viewPortMin === d && e) + for (z = 0; z < e.length; z++) + if (null === e[z] && p < d) { + b.viewPortMin = p; + break + } + null === e ? b.viewPortMin === d && p < d && (b.viewPortMin = p) : (f < c.viewPortMin && (c.viewPortMin = f), g > c.viewPortMax && (c.viewPortMax = + g)) + } + } + this.plotInfo.axisXValueType = k.xValueType = h ? "dateTime" : "number" + } + }; + v.prototype.getDataPointAtXY = function (a, c, b) { + b = b || !1; + for (var d = [], e = this._dataInRenderedOrder.length - 1; 0 <= e; e--) { + var f = null; + (f = this._dataInRenderedOrder[e].getDataPointAtXY(a, c, b)) && d.push(f) + } + a = null; + c = !1; + for (b = 0; b < d.length; b++) + if ("line" === d[b].dataSeries.type || "stepLine" === d[b].dataSeries.type || "area" === d[b].dataSeries.type || "stepArea" === d[b].dataSeries.type) + if (e = R("markerSize", d[b].dataPoint, d[b].dataSeries) || 8, d[b].distance <= + e / 2) { + c = !0; + break + } + for (b = 0; b < d.length; b++) + c && "line" !== d[b].dataSeries.type && "stepLine" !== d[b].dataSeries.type && "area" !== d[b].dataSeries.type && "stepArea" !== d[b].dataSeries.type || (a ? d[b].distance <= a.distance && (a = d[b]) : a = d[b]); + return a + }; + v.prototype.getObjectAtXY = function (a, c, b) { + var d = null; + if (b = this.getDataPointAtXY(a, c, b || !1)) + d = b.dataSeries.dataPointIds[b.dataPointIndex]; + else if (u) + d = Ea(a, c, this._eventManager.ghostCtx); + else + for (b = 0; b < this.legend.items.length; b++) { + var e = this.legend.items[b]; + a >= e.x1 && (a <= + e.x2 && c >= e.y1 && c <= e.y2) && (d = e.id) + } + return d + }; + v.prototype.getAutoFontSize = function (a, c, b) { + a /= 400; + return Math.round(Math.min(this.width, this.height) * a) + }; + v.prototype.resetOverlayedCanvas = function () { + this.overlaidCanvasCtx.clearRect(0, 0, this.width, this.height) + }; + v.prototype.clearCanvas = function () { + this.ctx.clearRect(0, 0, this.width, this.height); + this.backgroundColor && (this.ctx.fillStyle = this.backgroundColor, this.ctx.fillRect(0, 0, this.width, this.height)) + }; + v.prototype.attachEvent = function (a) { + this._events.push(a) + }; + v.prototype._touchEventHandler = function (a) { + if (a.changedTouches && this.interactivityEnabled) { + var c = [], b = a.changedTouches, d = b ? b[0] : a, e = null; + switch (a.type) { + case "touchstart": + case "MSPointerDown": + c = ["mousemove", "mousedown"]; + this._lastTouchData = ra(d); + this._lastTouchData.time = new Date; + break; + case "touchmove": + case "MSPointerMove": + c = ["mousemove"]; + break; + case "touchend": + case "MSPointerUp": + c = "touchstart" === this._lastTouchEventType || "MSPointerDown" === this._lastTouchEventType ? ["mouseup", "click"] : ["mouseup"]; + break; + default: + return + } + if (!(b && 1 < b.length)) { + e = ra(d); + e.time = new Date; + try { + var f = e.y - this._lastTouchData.y, g = e.time - this._lastTouchData.time; + if (15 < Math.abs(f) && (this._lastTouchData.scroll || 200 > g)) { + this._lastTouchData.scroll = !0; + var h = window.parent || window; + h && h.scrollBy && h.scrollBy(0, -f) + } + } catch (q) { + } + this._lastTouchEventType = a.type; + if (this._lastTouchData.scroll && this.zoomEnabled) + this.isDrag && this.resetOverlayedCanvas(), this.isDrag = !1; + else + for (b = 0; b < c.length; b++) + e = c[b], f = document.createEvent("MouseEvent"), f.initMouseEvent(e, + !0, !0, window, 1, d.screenX, d.screenY, d.clientX, d.clientY, !1, !1, !1, !1, 0, null), d.target.dispatchEvent(f), a.preventManipulation && a.preventManipulation(), a.preventDefault && a.preventDefault() + } + } + }; + v.prototype._dispatchRangeEvent = function (a, c) { + var b = {}; + b.chart = this._publicChartReference; + b.type = a; + b.trigger = c; + var d = []; + this.axisX && d.push("axisX"); + this.axisY && d.push("axisY"); + this.axisY2 && d.push("axisY2"); + for (var e = 0; e < d.length; e++) + b[d[e]] = {viewportMinimum: this[d[e]].sessionVariables.newViewportMinimum, viewportMaximum: this[d[e]].sessionVariables.newViewportMaximum}; + this.dispatchEvent(a, b, this._publicChartReference) + }; + v.prototype._mouseEventHandler = function (a) { + if (this.interactivityEnabled) + if (this._ignoreNextEvent) + this._ignoreNextEvent = !1; + else { + a.preventManipulation && a.preventManipulation(); + a.preventDefault && a.preventDefault(); + "undefined" === typeof a.target && a.srcElement && (a.target = a.srcElement); + var c = ra(a), b = a.type, d, e; + a.which ? e = 3 == a.which : a.button && (e = 2 == a.button); + if (!e) { + if (v.capturedEventParam) + d = v.capturedEventParam, "mouseup" === b && (v.capturedEventParam = null, d.chart.overlaidCanvas.releaseCapture ? + d.chart.overlaidCanvas.releaseCapture() : document.body.removeEventListener("mouseup", d.chart._mouseEventHandler, !1)), d.hasOwnProperty(b) && d[b].call(d.context, c.x, c.y); + else if (this._events) { + for (e = 0; e < this._events.length; e++) + if (this._events[e].hasOwnProperty(b)) { + d = this._events[e]; + var f = d.bounds; + if (c.x >= f.x1 && c.x <= f.x2 && c.y >= f.y1 && c.y <= f.y2) { + d[b].call(d.context, c.x, c.y); + "mousedown" === b && !0 === d.capture ? (v.capturedEventParam = d, this.overlaidCanvas.setCapture ? this.overlaidCanvas.setCapture() : document.body.addEventListener("mouseup", + this._mouseEventHandler, !1)) : "mouseup" === b && (d.chart.overlaidCanvas.releaseCapture ? d.chart.overlaidCanvas.releaseCapture() : document.body.removeEventListener("mouseup", this._mouseEventHandler, !1)); + break + } else + d = null + } + a.target.style.cursor = d && d.cursor ? d.cursor : this._defaultCursor + } + this._toolTip && this._toolTip.enabled && (b = this.plotArea, (c.x < b.x1 || c.x > b.x2 || c.y < b.y1 || c.y > b.y2) && this._toolTip.hide()); + this.isDrag && this.zoomEnabled || !this._eventManager || this._eventManager.mouseEventHandler(a) + } + } + }; + v.prototype._plotAreaMouseDown = + function (a, c) { + this.isDrag = !0; + this.dragStartPoint = {x: a, y: c} + }; + v.prototype._plotAreaMouseUp = function (a, c) { + if (("normal" === this.plotInfo.axisPlacement || "xySwapped" === this.plotInfo.axisPlacement) && this.isDrag) { + var b = c - this.dragStartPoint.y, d = a - this.dragStartPoint.x, e = 0 <= this.zoomType.indexOf("x"), f = 0 <= this.zoomType.indexOf("y"), g = !1; + this.resetOverlayedCanvas(); + if ("xySwapped" === this.plotInfo.axisPlacement) + var h = f, f = e, e = h; + if (this.panEnabled || this.zoomEnabled) { + if (this.panEnabled) + for (e = f = 0; e < this._axes.length; e++) + b = + this._axes[e], b.viewportMinimum < b.minimum ? (f = b.minimum - b.viewportMinimum, b.sessionVariables.newViewportMinimum = b.viewportMinimum + f, b.sessionVariables.newViewportMaximum = b.viewportMaximum + f, g = !0) : b.viewportMaximum > b.maximum && (f = b.viewportMaximum - b.maximum, b.sessionVariables.newViewportMinimum = b.viewportMinimum - f, b.sessionVariables.newViewportMaximum = b.viewportMaximum - f, g = !0); + else if ((!e || 2 < Math.abs(d)) && (!f || 2 < Math.abs(b)) && this.zoomEnabled) { + if (!this.dragStartPoint) + return; + b = e ? this.dragStartPoint.x : + this.plotArea.x1; + d = f ? this.dragStartPoint.y : this.plotArea.y1; + e = e ? a : this.plotArea.x2; + f = f ? c : this.plotArea.y2; + 2 < Math.abs(b - e) && 2 < Math.abs(d - f) && this._zoomPanToSelectedRegion(b, d, e, f) && (g = !0) + } + g && (this._ignoreNextEvent = !0, this._dispatchRangeEvent("rangeChanging", "zoom"), this.render(), this._dispatchRangeEvent("rangeChanged", "zoom"), g && (this.zoomEnabled && "none" === this._zoomButton.style.display) && (la(this._zoomButton, this._resetButton), U(this, this._zoomButton, "pan"), U(this, this._resetButton, "reset"))) + } + } + this.isDrag = + !1 + }; + v.prototype._plotAreaMouseMove = function (a, c) { + if (this.isDrag && "none" !== this.plotInfo.axisPlacement) { + var b = 0, d = 0, e = b = null, e = 0 <= this.zoomType.indexOf("x"), f = 0 <= this.zoomType.indexOf("y"); + "xySwapped" === this.plotInfo.axisPlacement && (b = f, f = e, e = b); + b = this.dragStartPoint.x - a; + d = this.dragStartPoint.y - c; + 2 < Math.abs(b) && 8 > Math.abs(b) && (this.panEnabled || this.zoomEnabled) ? this._toolTip.hide() : this.panEnabled || this.zoomEnabled || this._toolTip.mouseMoveHandler(a, c); + if ((!e || 2 < Math.abs(b) || !f || 2 < Math.abs(d)) && (this.panEnabled || + this.zoomEnabled)) + if (this.panEnabled) + e = {x1: e ? this.plotArea.x1 + b : this.plotArea.x1, y1: f ? this.plotArea.y1 + d : this.plotArea.y1, x2: e ? this.plotArea.x2 + b : this.plotArea.x2, y2: f ? this.plotArea.y2 + d : this.plotArea.y2}, this._zoomPanToSelectedRegion(e.x1, e.y1, e.x2, e.y2, !0) && (this._dispatchRangeEvent("rangeChanging", "pan"), this.render(), this._dispatchRangeEvent("rangeChanged", "pan"), this.dragStartPoint.x = a, this.dragStartPoint.y = c); + else if (this.zoomEnabled) { + this.resetOverlayedCanvas(); + b = this.overlaidCanvasCtx.globalAlpha; + this.overlaidCanvasCtx.fillStyle = "#A89896"; + var d = e ? this.dragStartPoint.x : this.plotArea.x1, g = f ? this.dragStartPoint.y : this.plotArea.y1, h = e ? a - this.dragStartPoint.x : this.plotArea.x2 - this.plotArea.x1, q = f ? c - this.dragStartPoint.y : this.plotArea.y2 - this.plotArea.y1; + this.validateRegion(d, g, e ? a : this.plotArea.x2 - this.plotArea.x1, f ? c : this.plotArea.y2 - this.plotArea.y1, "xy" !== this.zoomType).isValid && (this.resetOverlayedCanvas(), this.overlaidCanvasCtx.fillStyle = "#99B2B5"); + this.overlaidCanvasCtx.globalAlpha = 0.7; + this.overlaidCanvasCtx.fillRect(d, + g, h, q); + this.overlaidCanvasCtx.globalAlpha = b + } + } else + this._toolTip.mouseMoveHandler(a, c) + }; + v.prototype._zoomPanToSelectedRegion = function (a, c, b, d, e) { + a = this.validateRegion(a, c, b, d, e); + c = a.axesWithValidRange; + b = a.axesRanges; + if (a.isValid) + for (d = 0; d < c.length; d++) + e = b[d], c[d].setViewPortRange(e.val1, e.val2); + return a.isValid + }; + v.prototype.validateRegion = function (a, c, b, d, e) { + e = e || !1; + var f = 0 <= this.zoomType.indexOf("x"), g = 0 <= this.zoomType.indexOf("y"), h = !1, q = [], k = [], n = []; + this.axisX && f && k.push(this.axisX); + this.axisY && + g && k.push(this.axisY); + this.axisY2 && g && k.push(this.axisY2); + for (f = 0; f < k.length; f++) { + var g = k[f], m = g.convertPixelToValue({x: a, y: c}), l = g.convertPixelToValue({x: b, y: d}); + if (m > l) + var p = l, l = m, m = p; + if (isFinite(g.dataInfo.minDiff)) + if (!(Math.abs(l - m) < 3 * Math.abs(g.dataInfo.minDiff) || m < g.minimum || l > g.maximum)) + q.push(g), n.push({val1: m, val2: l}), h = !0; + else if (!e) { + h = !1; + break + } + } + return{isValid: h, axesWithValidRange: q, axesRanges: n} + }; + v.prototype.preparePlotArea = function () { + var a = this.plotArea, c = this.axisY ? this.axisY : this.axisY2; + !u && (0 < a.x1 || 0 < a.y1) && a.ctx.translate(a.x1, a.y1); + this.axisX && c ? (a.x1 = this.axisX.lineCoordinates.x1 < this.axisX.lineCoordinates.x2 ? this.axisX.lineCoordinates.x1 : c.lineCoordinates.x1, a.y1 = this.axisX.lineCoordinates.y1 < c.lineCoordinates.y1 ? this.axisX.lineCoordinates.y1 : c.lineCoordinates.y1, a.x2 = this.axisX.lineCoordinates.x2 > c.lineCoordinates.x2 ? this.axisX.lineCoordinates.x2 : c.lineCoordinates.x2, a.y2 = this.axisX.lineCoordinates.y2 > this.axisX.lineCoordinates.y1 ? this.axisX.lineCoordinates.y2 : c.lineCoordinates.y2, + a.width = a.x2 - a.x1, a.height = a.y2 - a.y1) : (c = this.layoutManager.getFreeSpace(), a.x1 = c.x1, a.x2 = c.x2, a.y1 = c.y1, a.y2 = c.y2, a.width = c.width, a.height = c.height); + u || (a.canvas.width = a.width, a.canvas.height = a.height, a.canvas.style.left = a.x1 + "px", a.canvas.style.top = a.y1 + "px", (0 < a.x1 || 0 < a.y1) && a.ctx.translate(-a.x1, -a.y1)); + a.layoutManager = new da(a.x1, a.y1, a.x2, a.y2, 2) + }; + v.prototype.getPixelCoordinatesOnPlotArea = function (a, c) { + return{x: this.axisX.getPixelCoordinatesOnAxis(a).x, y: this.axisY.getPixelCoordinatesOnAxis(c).y} + }; + v.prototype.renderIndexLabels = function (a) { + a = a || this.plotArea.ctx; + for (var c = this.plotArea, b = 0, d = 0, e = 0, f = 0, g = b = f = d = e = 0, h = 0, q = 0; q < this._indexLabels.length; q++) { + var k = this._indexLabels[q], n = k.chartType.toLowerCase(), m, l, p = R("indexLabelFontColor", k.dataPoint, k.dataSeries), g = R("indexLabelFontSize", k.dataPoint, k.dataSeries), h = R("indexLabelFontFamily", k.dataPoint, k.dataSeries); + m = R("indexLabelFontStyle", k.dataPoint, k.dataSeries); + l = R("indexLabelFontWeight", k.dataPoint, k.dataSeries); + var f = R("indexLabelBackgroundColor", + k.dataPoint, k.dataSeries), d = R("indexLabelMaxWidth", k.dataPoint, k.dataSeries), e = R("indexLabelWrap", k.dataPoint, k.dataSeries), r = R("indexLabelLineDashType", k.dataPoint, k.dataSeries), t = R("indexLabelLineColor", k.dataPoint, k.dataSeries), y = x(k.dataPoint.indexLabelLineThickness) ? x(k.dataSeries._options.indexLabelLineThickness) ? 0 : k.dataSeries._options.indexLabelLineThickness : k.dataPoint.indexLabelLineThickness, b = 0 < y ? Math.min(10, ("normal" === this.plotInfo.axisPlacement ? this.plotArea.height : this.plotArea.width) << + 0) : 0, s = {percent: null, total: null}, z = null; + if (0 <= k.dataSeries.type.indexOf("stacked") || "pie" === k.dataSeries.type || "doughnut" === k.dataSeries.type) + s = this.getPercentAndTotal(k.dataSeries, k.dataPoint); + if (k.dataSeries.indexLabelFormatter || k.dataPoint.indexLabelFormatter) + z = {chart: this._publicChartReference, dataSeries: k.dataSeries, dataPoint: k.dataPoint, index: k.indexKeyword, total: s.total, percent: s.percent}; + var w = k.dataPoint.indexLabelFormatter ? k.dataPoint.indexLabelFormatter(z) : k.dataPoint.indexLabel ? this.replaceKeywordsWithValue(k.dataPoint.indexLabel, + k.dataPoint, k.dataSeries, null, k.indexKeyword) : k.dataSeries.indexLabelFormatter ? k.dataSeries.indexLabelFormatter(z) : k.dataSeries.indexLabel ? this.replaceKeywordsWithValue(k.dataSeries.indexLabel, k.dataPoint, k.dataSeries, null, k.indexKeyword) : null; + if (null !== w && "" !== w) { + var s = R("indexLabelPlacement", k.dataPoint, k.dataSeries), z = R("indexLabelOrientation", k.dataPoint, k.dataSeries), u = k.direction, W = k.dataSeries.axisX, A = k.dataSeries.axisY, v = !1, p = new O(a, {x: 0, y: 0, maxWidth: d ? d : 0.5 * this.width, maxHeight: e ? 5 * g : 1.5 * + g, angle: "horizontal" === z ? 0 : -90, text: w, padding: 0, backgroundColor: f, horizontalAlign: "left", fontSize: g, fontFamily: h, fontWeight: l, fontColor: p, fontStyle: m, textBaseline: "top"}); + p.measureText(); + if (0 <= n.indexOf("line") || 0 <= n.indexOf("area") || 0 <= n.indexOf("bubble") || 0 <= n.indexOf("scatter")) { + if (k.dataPoint.x < W.viewportMinimum || k.dataPoint.x > W.viewportMaximum || k.dataPoint.y < A.viewportMinimum || k.dataPoint.y > A.viewportMaximum) + continue + } else if (0 <= n.indexOf("column")) { + if (k.dataPoint.x < W.viewportMinimum || k.dataPoint.x > + W.viewportMaximum || k.bounds.y1 > c.y2 || k.bounds.y2 < c.y1) + continue + } else if (0 <= n.indexOf("bar")) { + if (k.dataPoint.x < W.viewportMinimum || k.dataPoint.x > W.viewportMaximum || k.bounds.x1 > c.x2 || k.bounds.x2 < c.x1) + continue + } else if (k.dataPoint.x < W.viewportMinimum || k.dataPoint.x > W.viewportMaximum) + continue; + d = f = 2; + "horizontal" === z ? (g = p.width, h = p.height) : (h = p.width, g = p.height); + if ("normal" === this.plotInfo.axisPlacement) { + if (0 <= n.indexOf("line") || 0 <= n.indexOf("area")) + s = "auto", f = 4; + else if (0 <= n.indexOf("stacked")) + "auto" === s && + (s = "inside"); + else if ("bubble" === n || "scatter" === n) + s = "inside"; + m = k.point.x - g / 2; + "inside" !== s ? (d = c.y1, e = c.y2, 0 < u ? (l = k.point.y - h - f - b, l < d && (l = "auto" === s ? Math.max(k.point.y, d) + f + b : d + f + b, v = l + h > k.point.y)) : (l = k.point.y + f + b, l > e - h - f - b && (l = "auto" === s ? Math.min(k.point.y, e) - h - f - b : e - h - f - b, v = l < k.point.y))) : (d = Math.max(k.bounds.y1, c.y1), e = Math.min(k.bounds.y2, c.y2), b = 0 <= n.indexOf("range") ? 0 < u ? Math.max(k.bounds.y1, c.y1) + h / 2 + f : Math.min(k.bounds.y2, c.y2) - h / 2 - f : (Math.max(k.bounds.y1, c.y1) + Math.min(k.bounds.y2, c.y2)) / 2, + 0 < u ? (l = Math.max(k.point.y, b) - h / 2, l < d && ("bubble" === n || "scatter" === n) && (l = Math.max(k.point.y - h - f, c.y1 + f))) : (l = Math.min(k.point.y, b) - h / 2, l > e - h - f && ("bubble" === n || "scatter" === n) && (l = Math.min(k.point.y + f, c.y2 - h - f))), l = Math.min(l, e - h)) + } else + 0 <= n.indexOf("line") || 0 <= n.indexOf("area") || 0 <= n.indexOf("scatter") ? (s = "auto", d = 4) : 0 <= n.indexOf("stacked") ? "auto" === s && (s = "inside") : "bubble" === n && (s = "inside"), l = k.point.y - h / 2, "inside" !== s ? (f = c.x1, e = c.x2, 0 > u ? (m = k.point.x - g - d - b, m < f && (m = "auto" === s ? Math.max(k.point.x, f) + + d + b : f + d + b, v = m + g > k.point.x)) : (m = k.point.x + d + b, m > e - g - d - b && (m = "auto" === s ? Math.min(k.point.x, e) - g - d - b : e - g - d - b, v = m < k.point.x))) : (f = Math.max(k.bounds.x1, c.x1), Math.min(k.bounds.x2, c.x2), b = 0 <= n.indexOf("range") ? 0 > u ? Math.max(k.bounds.x1, c.x1) + g / 2 + d : Math.min(k.bounds.x2, c.x2) - g / 2 - d : (Math.max(k.bounds.x1, c.x1) + Math.min(k.bounds.x2, c.x2)) / 2, m = 0 > u ? Math.max(k.point.x, b) - g / 2 : Math.min(k.point.x, b) - g / 2, m = Math.max(m, f)); + "vertical" === z && (l += h); + p.x = m; + p.y = l; + p.render(!0); + y && ("inside" !== s && (0 > n.indexOf("bar") && k.point.x > + c.x1 && k.point.x < c.x2 || !v) && (0 > n.indexOf("column") && k.point.y > c.y1 && k.point.y < c.y2 || !v)) && (a.lineWidth = y, a.strokeStyle = t ? t : "gray", a.setLineDash && a.setLineDash(D(r, y)), a.beginPath(), a.moveTo(k.point.x, k.point.y), 0 <= n.indexOf("bar") ? a.lineTo(m + (0 < k.direction ? 0 : g), l + ("horizontal" === z ? h : -h) / 2) : 0 <= n.indexOf("column") ? a.lineTo(m + g / 2, l + ((0 < k.direction ? h : -h) + ("horizontal" === z ? h : -h)) / 2) : a.lineTo(m + g / 2, l + ((l < k.point.y ? h : -h) + ("horizontal" === z ? h : -h)) / 2), a.stroke()) + } + } + return{source: a, dest: this.plotArea.ctx, animationCallback: B.fadeInAnimation, + easingFunction: B.easing.easeInQuad, animationBase: 0, startTimePercent: 0.7} + }; + v.prototype.renderLine = function (a) { + var c = a.targetCanvasCtx || this.plotArea.ctx; + if (!(0 >= a.dataSeriesIndexes.length)) { + var b = this._eventManager.ghostCtx; + c.save(); + var d = this.plotArea; + c.beginPath(); + c.rect(d.x1, d.y1, d.width, d.height); + c.clip(); + for (var d = [], e = 0; e < a.dataSeriesIndexes.length; e++) { + var f = a.dataSeriesIndexes[e], g = this.data[f]; + c.lineWidth = g.lineThickness; + var h = g.dataPoints, q = "solid"; + if (c.setLineDash) { + var k = D(g.nullDataLineDashType, + g.lineThickness), q = g.lineDashType, n = D(q, g.lineThickness); + c.setLineDash(n) + } + var m = g.id; + this._eventManager.objectMap[m] = {objectType: "dataSeries", dataSeriesIndex: f}; + m = C(m); + b.strokeStyle = m; + b.lineWidth = 0 < g.lineThickness ? Math.max(g.lineThickness, 4) : 0; + var m = g._colorSet, l = m = g._options.lineColor ? g._options.lineColor : m[0]; + c.strokeStyle = m; + var p = !0, r = 0, t, y; + c.beginPath(); + if (0 < h.length) { + for (var s = !1, r = 0; r < h.length; r++) + if (t = h[r].x.getTime ? h[r].x.getTime() : h[r].x, !(t < a.axisX.dataInfo.viewPortMin || t > a.axisX.dataInfo.viewPortMax && + (!g.connectNullData || !s))) + if ("number" !== typeof h[r].y) + 0 < r && !(g.connectNullData || s || p) && (c.stroke(), u && b.stroke()), s = !0; + else { + t = a.axisX.conversionParameters.reference + a.axisX.conversionParameters.pixelPerUnit * (t - a.axisX.conversionParameters.minimum) + 0.5 << 0; + y = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (h[r].y - a.axisY.conversionParameters.minimum) + 0.5 << 0; + var z = g.dataPointIds[r]; + this._eventManager.objectMap[z] = {id: z, objectType: "dataPoint", dataSeriesIndex: f, dataPointIndex: r, + x1: t, y1: y}; + p || s ? (!p && g.connectNullData ? (c.setLineDash && (g._options.nullDataLineDashType || q === g.lineDashType && g.lineDashType !== g.nullDataLineDashType) && (c.stroke(), q = g.nullDataLineDashType, c.setLineDash(k)), c.lineTo(t, y), u && b.lineTo(t, y)) : (c.beginPath(), c.moveTo(t, y), u && (b.beginPath(), b.moveTo(t, y))), s = p = !1) : (c.lineTo(t, y), u && b.lineTo(t, y), 0 == r % 500 && (c.stroke(), c.beginPath(), c.moveTo(t, y), u && (b.stroke(), b.beginPath(), b.moveTo(t, y)))); + r < h.length - 1 && (l !== (h[r].lineColor || m) || q !== (h[r].lineDashType || + g.lineDashType)) && (c.stroke(), c.beginPath(), c.moveTo(t, y), l = h[r].lineColor || m, c.strokeStyle = l, c.setLineDash && (h[r].lineDashType ? (q = h[r].lineDashType, c.setLineDash(D(q, g.lineThickness))) : (q = g.lineDashType, c.setLineDash(n)))); + if (0 < h[r].markerSize || 0 < g.markerSize) { + var w = g.getMarkerProperties(r, t, y, c); + d.push(w); + z = C(z); + u && d.push({x: t, y: y, ctx: b, type: w.type, size: w.size, color: z, borderColor: z, borderThickness: w.borderThickness}) + } + (h[r].indexLabel || g.indexLabel || h[r].indexLabelFormatter || g.indexLabelFormatter) && + this._indexLabels.push({chartType: "line", dataPoint: h[r], dataSeries: g, point: {x: t, y: y}, direction: 0 <= h[r].y ? 1 : -1, color: m}) + } + c.stroke(); + u && b.stroke() + } + } + P.drawMarkers(d); + c.restore(); + c.beginPath(); + u && b.beginPath(); + return{source: c, dest: this.plotArea.ctx, animationCallback: B.xClipAnimation, easingFunction: B.easing.linear, animationBase: 0} + } + }; + v.prototype.renderStepLine = function (a) { + var c = a.targetCanvasCtx || this.plotArea.ctx; + if (!(0 >= a.dataSeriesIndexes.length)) { + var b = this._eventManager.ghostCtx; + c.save(); + var d = this.plotArea; + c.beginPath(); + c.rect(d.x1, d.y1, d.width, d.height); + c.clip(); + for (var d = [], e = 0; e < a.dataSeriesIndexes.length; e++) { + var f = a.dataSeriesIndexes[e], g = this.data[f]; + c.lineWidth = g.lineThickness; + var h = g.dataPoints, q = "solid"; + if (c.setLineDash) { + var k = D(g.nullDataLineDashType, g.lineThickness), q = g.lineDashType, n = D(q, g.lineThickness); + c.setLineDash(n) + } + var m = g.id; + this._eventManager.objectMap[m] = {objectType: "dataSeries", dataSeriesIndex: f}; + m = C(m); + b.strokeStyle = m; + b.lineWidth = 0 < g.lineThickness ? Math.max(g.lineThickness, 4) : + 0; + var m = g._colorSet, l = m = g._options.lineColor ? g._options.lineColor : m[0]; + c.strokeStyle = m; + var p = !0, r = 0, t, y; + c.beginPath(); + if (0 < h.length) { + for (var s = !1, r = 0; r < h.length; r++) + if (t = h[r].getTime ? h[r].x.getTime() : h[r].x, !(t < a.axisX.dataInfo.viewPortMin || t > a.axisX.dataInfo.viewPortMax && (!g.connectNullData || !s))) + if ("number" !== typeof h[r].y) + 0 < r && !(g.connectNullData || s || p) && (c.stroke(), u && b.stroke()), s = !0; + else { + var z = y; + t = a.axisX.conversionParameters.reference + a.axisX.conversionParameters.pixelPerUnit * (t - a.axisX.conversionParameters.minimum) + + 0.5 << 0; + y = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (h[r].y - a.axisY.conversionParameters.minimum) + 0.5 << 0; + var w = g.dataPointIds[r]; + this._eventManager.objectMap[w] = {id: w, objectType: "dataPoint", dataSeriesIndex: f, dataPointIndex: r, x1: t, y1: y}; + p || s ? (!p && g.connectNullData ? (c.setLineDash && (g._options.nullDataLineDashType || q === g.lineDashType && g.lineDashType !== g.nullDataLineDashType) && (c.stroke(), q = g.nullDataLineDashType, c.setLineDash(k)), c.lineTo(t, z), c.lineTo(t, y), u && (b.lineTo(t, + z), b.lineTo(t, y))) : (c.beginPath(), c.moveTo(t, y), u && (b.beginPath(), b.moveTo(t, y))), s = p = !1) : (c.lineTo(t, z), u && b.lineTo(t, z), c.lineTo(t, y), u && b.lineTo(t, y), 0 == r % 500 && (c.stroke(), c.beginPath(), c.moveTo(t, y), u && (b.stroke(), b.beginPath(), b.moveTo(t, y)))); + r < h.length - 1 && (l !== (h[r].lineColor || m) || q !== (h[r].lineDashType || g.lineDashType)) && (c.stroke(), c.beginPath(), c.moveTo(t, y), l = h[r].lineColor || m, c.strokeStyle = l, c.setLineDash && (h[r].lineDashType ? (q = h[r].lineDashType, c.setLineDash(D(q, g.lineThickness))) : (q = + g.lineDashType, c.setLineDash(n)))); + if (0 < h[r].markerSize || 0 < g.markerSize) + z = g.getMarkerProperties(r, t, y, c), d.push(z), w = C(w), u && d.push({x: t, y: y, ctx: b, type: z.type, size: z.size, color: w, borderColor: w, borderThickness: z.borderThickness}); + (h[r].indexLabel || g.indexLabel || h[r].indexLabelFormatter || g.indexLabelFormatter) && this._indexLabels.push({chartType: "stepLine", dataPoint: h[r], dataSeries: g, point: {x: t, y: y}, direction: 0 <= h[r].y ? 1 : -1, color: m}) + } + c.stroke(); + u && b.stroke() + } + } + P.drawMarkers(d); + c.restore(); + c.beginPath(); + u && b.beginPath(); + return{source: c, dest: this.plotArea.ctx, animationCallback: B.xClipAnimation, easingFunction: B.easing.linear, animationBase: 0} + } + }; + v.prototype.renderSpline = function (a) { + function c(a) { + a = ma(a, 2); + if (0 < a.length) { + b.beginPath(); + u && d.beginPath(); + b.moveTo(a[0].x, a[0].y); + a[0].newStrokeStyle && (b.strokeStyle = a[0].newStrokeStyle); + a[0].newLineDashArray && b.setLineDash(a[0].newLineDashArray); + u && d.moveTo(a[0].x, a[0].y); + for (var c = 0; c < a.length - 3; c += 3) + if (b.bezierCurveTo(a[c + 1].x, a[c + 1].y, a[c + 2].x, a[c + 2].y, + a[c + 3].x, a[c + 3].y), u && d.bezierCurveTo(a[c + 1].x, a[c + 1].y, a[c + 2].x, a[c + 2].y, a[c + 3].x, a[c + 3].y), 0 < c && 0 === c % 3E3 || a[c + 3].newStrokeStyle || a[c + 3].newLineDashArray) + b.stroke(), b.beginPath(), b.moveTo(a[c + 3].x, a[c + 3].y), a[c + 3].newStrokeStyle && (b.strokeStyle = a[c + 3].newStrokeStyle), a[c + 3].newLineDashArray && b.setLineDash(a[c + 3].newLineDashArray), u && (d.stroke(), d.beginPath(), d.moveTo(a[c + 3].x, a[c + 3].y)); + b.stroke(); + u && d.stroke() + } + } + var b = a.targetCanvasCtx || this.plotArea.ctx; + if (!(0 >= a.dataSeriesIndexes.length)) { + var d = + this._eventManager.ghostCtx; + b.save(); + var e = this.plotArea; + b.beginPath(); + b.rect(e.x1, e.y1, e.width, e.height); + b.clip(); + for (var e = [], f = 0; f < a.dataSeriesIndexes.length; f++) { + var g = a.dataSeriesIndexes[f], h = this.data[g]; + b.lineWidth = h.lineThickness; + var q = h.dataPoints, k = "solid"; + if (b.setLineDash) { + var n = D(h.nullDataLineDashType, h.lineThickness), k = h.lineDashType, m = D(k, h.lineThickness); + b.setLineDash(m) + } + var l = h.id; + this._eventManager.objectMap[l] = {objectType: "dataSeries", dataSeriesIndex: g}; + l = C(l); + d.strokeStyle = l; + d.lineWidth = + 0 < h.lineThickness ? Math.max(h.lineThickness, 4) : 0; + var l = h._colorSet, p = l = h._options.lineColor ? h._options.lineColor : l[0]; + b.strokeStyle = l; + var r = 0, t, y, s = []; + b.beginPath(); + if (0 < q.length) + for (y = !1, r = 0; r < q.length; r++) + if (t = q[r].getTime ? q[r].x.getTime() : q[r].x, !(t < a.axisX.dataInfo.viewPortMin || t > a.axisX.dataInfo.viewPortMax && (!h.connectNullData || !y))) + if ("number" !== typeof q[r].y) + 0 < r && !y && (h.connectNullData ? b.setLineDash && (0 < s.length && (h._options.nullDataLineDashType || !q[r - 1].lineDashType)) && (s[s.length - 1].newLineDashArray = + n, k = h.nullDataLineDashType) : (c(s), s = [])), y = !0; + else { + t = a.axisX.conversionParameters.reference + a.axisX.conversionParameters.pixelPerUnit * (t - a.axisX.conversionParameters.minimum) + 0.5 << 0; + y = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (q[r].y - a.axisY.conversionParameters.minimum) + 0.5 << 0; + var z = h.dataPointIds[r]; + this._eventManager.objectMap[z] = {id: z, objectType: "dataPoint", dataSeriesIndex: g, dataPointIndex: r, x1: t, y1: y}; + s[s.length] = {x: t, y: y}; + r < q.length - 1 && (p !== (q[r].lineColor || + l) || k !== (q[r].lineDashType || h.lineDashType)) && (p = q[r].lineColor || l, s[s.length - 1].newStrokeStyle = p, b.setLineDash && (q[r].lineDashType ? (k = q[r].lineDashType, s[s.length - 1].newLineDashArray = D(k, h.lineThickness)) : (k = h.lineDashType, s[s.length - 1].newLineDashArray = m))); + if (0 < q[r].markerSize || 0 < h.markerSize) { + var w = h.getMarkerProperties(r, t, y, b); + e.push(w); + z = C(z); + u && e.push({x: t, y: y, ctx: d, type: w.type, size: w.size, color: z, borderColor: z, borderThickness: w.borderThickness}) + } + (q[r].indexLabel || h.indexLabel || q[r].indexLabelFormatter || + h.indexLabelFormatter) && this._indexLabels.push({chartType: "spline", dataPoint: q[r], dataSeries: h, point: {x: t, y: y}, direction: 0 <= q[r].y ? 1 : -1, color: l}); + y = !1 + } + c(s) + } + P.drawMarkers(e); + b.restore(); + b.beginPath(); + u && d.beginPath(); + return{source: b, dest: this.plotArea.ctx, animationCallback: B.xClipAnimation, easingFunction: B.easing.linear, animationBase: 0} + } + }; + var M = function (a, c, b, d, e, f, g, h, q, k, n, m, l) { + "undefined" === typeof l && (l = 1); + g = g || 0; + h = h || "black"; + var p = 15 < d - c && 15 < e - b ? 8 : 0.35 * Math.min(d - c, e - b); + a.beginPath(); + a.moveTo(c, + b); + a.save(); + a.fillStyle = f; + a.globalAlpha = l; + a.fillRect(c, b, d - c, e - b); + a.globalAlpha = 1; + 0 < g && (l = 0 === g % 2 ? 0 : 0.5, a.beginPath(), a.lineWidth = g, a.strokeStyle = h, a.moveTo(c, b), a.rect(c - l, b - l, d - c + 2 * l, e - b + 2 * l), a.stroke()); + a.restore(); + !0 === q && (a.save(), a.beginPath(), a.moveTo(c, b), a.lineTo(c + p, b + p), a.lineTo(d - p, b + p), a.lineTo(d, b), a.closePath(), g = a.createLinearGradient((d + c) / 2, b + p, (d + c) / 2, b), g.addColorStop(0, f), g.addColorStop(1, "rgba(255, 255, 255, .4)"), a.fillStyle = g, a.fill(), a.restore()); + !0 === k && (a.save(), a.beginPath(), + a.moveTo(c, e), a.lineTo(c + p, e - p), a.lineTo(d - p, e - p), a.lineTo(d, e), a.closePath(), g = a.createLinearGradient((d + c) / 2, e - p, (d + c) / 2, e), g.addColorStop(0, f), g.addColorStop(1, "rgba(255, 255, 255, .4)"), a.fillStyle = g, a.fill(), a.restore()); + !0 === n && (a.save(), a.beginPath(), a.moveTo(c, b), a.lineTo(c + p, b + p), a.lineTo(c + p, e - p), a.lineTo(c, e), a.closePath(), g = a.createLinearGradient(c + p, (e + b) / 2, c, (e + b) / 2), g.addColorStop(0, f), g.addColorStop(1, "rgba(255, 255, 255, 0.1)"), a.fillStyle = g, a.fill(), a.restore()); + !0 === m && (a.save(), + a.beginPath(), a.moveTo(d, b), a.lineTo(d - p, b + p), a.lineTo(d - p, e - p), a.lineTo(d, e), g = a.createLinearGradient(d - p, (e + b) / 2, d, (e + b) / 2), g.addColorStop(0, f), g.addColorStop(1, "rgba(255, 255, 255, 0.1)"), a.fillStyle = g, g.addColorStop(0, f), g.addColorStop(1, "rgba(255, 255, 255, 0.1)"), a.fillStyle = g, a.fill(), a.closePath(), a.restore()) + }; + v.prototype.renderColumn = function (a) { + var c = a.targetCanvasCtx || this.plotArea.ctx; + if (!(0 >= a.dataSeriesIndexes.length)) { + var b = null, d = this.plotArea, e = 0, f, g, h, q = a.axisY.conversionParameters.reference + + a.axisY.conversionParameters.pixelPerUnit * (0 - a.axisY.conversionParameters.minimum) << 0, e = this.dataPointMinWidth ? this.dataPointMinWidth : this.dataPointWidth ? this.dataPointWidth : 1, k = this.dataPointMaxWidth ? this.dataPointMaxWidth : this.dataPointWidth ? this.dataPointWidth : Math.min(0.15 * this.width, 0.9 * (this.plotArea.width / a.plotType.totalDataSeries)) << 0, n = a.axisX.dataInfo.minDiff; + isFinite(n) || (n = 0.3 * Math.abs(a.axisX.viewportMaximum - a.axisX.viewportMinimum)); + n = this.dataPointWidth ? this.dataPointWidth : 0.9 * (d.width / + Math.abs(a.axisX.viewportMaximum - a.axisX.viewportMinimum) * Math.abs(n) / a.plotType.totalDataSeries) << 0; + this.dataPointMaxWidth && e > k && (e = Math.min(this.dataPointWidth ? this.dataPointWidth : Infinity, k)); + !this.dataPointMaxWidth && (this.dataPointMinWidth && k < e) && (k = Math.max(this.dataPointWidth ? this.dataPointWidth : -Infinity, e)); + n < e && (n = e); + n > k && (n = k); + c.save(); + u && this._eventManager.ghostCtx.save(); + c.beginPath(); + c.rect(d.x1, d.y1, d.width, d.height); + c.clip(); + u && (this._eventManager.ghostCtx.rect(d.x1, d.y1, d.width, d.height), + this._eventManager.ghostCtx.clip()); + for (d = 0; d < a.dataSeriesIndexes.length; d++) { + var k = a.dataSeriesIndexes[d], m = this.data[k], l = m.dataPoints; + if (0 < l.length) + for (var p = 5 < n && m.bevelEnabled ? !0 : !1, e = 0; e < l.length; e++) + if (l[e].getTime ? h = l[e].x.getTime() : h = l[e].x, !(h < a.axisX.dataInfo.viewPortMin || h > a.axisX.dataInfo.viewPortMax) && "number" === typeof l[e].y) { + f = a.axisX.conversionParameters.reference + a.axisX.conversionParameters.pixelPerUnit * (h - a.axisX.conversionParameters.minimum) + 0.5 << 0; + g = a.axisY.conversionParameters.reference + + a.axisY.conversionParameters.pixelPerUnit * (l[e].y - a.axisY.conversionParameters.minimum) + 0.5 << 0; + f = f - a.plotType.totalDataSeries * n / 2 + (a.previousDataSeriesCount + d) * n << 0; + var r = f + n << 0, t; + 0 <= l[e].y ? t = q : (t = g, g = q); + g > t && (t = g = t); + b = l[e].color ? l[e].color : m._colorSet[e % m._colorSet.length]; + M(c, f, g, r, t, b, 0, null, p && 0 <= l[e].y, 0 > l[e].y && p, !1, !1, m.fillOpacity); + b = m.dataPointIds[e]; + this._eventManager.objectMap[b] = {id: b, objectType: "dataPoint", dataSeriesIndex: k, dataPointIndex: e, x1: f, y1: g, x2: r, y2: t}; + b = C(b); + u && M(this._eventManager.ghostCtx, + f, g, r, t, b, 0, null, !1, !1, !1, !1); + (l[e].indexLabel || m.indexLabel || l[e].indexLabelFormatter || m.indexLabelFormatter) && this._indexLabels.push({chartType: "column", dataPoint: l[e], dataSeries: m, point: {x: f + (r - f) / 2, y: 0 <= l[e].y ? g : t}, direction: 0 <= l[e].y ? 1 : -1, bounds: {x1: f, y1: Math.min(g, t), x2: r, y2: Math.max(g, t)}, color: b}) + } + } + c.restore(); + u && this._eventManager.ghostCtx.restore(); + a = Math.min(q, a.axisY.boundingRect.y2); + return{source: c, dest: this.plotArea.ctx, animationCallback: B.yScaleAnimation, easingFunction: B.easing.easeOutQuart, + animationBase: a} + } + }; + v.prototype.renderStackedColumn = function (a) { + var c = a.targetCanvasCtx || this.plotArea.ctx; + if (!(0 >= a.dataSeriesIndexes.length)) { + var b = null, d = this.plotArea, e = [], f = [], g = 0, h, q = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (0 - a.axisY.conversionParameters.minimum) << 0, g = this.dataPointMinWidth ? this.dataPointMinWidth : this.dataPointWidth ? this.dataPointWidth : 1, k = this.dataPointMaxWidth ? this.dataPointMaxWidth : this.dataPointWidth ? this.dataPointWidth : 0.15 * this.width << + 0, n = a.axisX.dataInfo.minDiff; + isFinite(n) || (n = 0.3 * Math.abs(a.axisX.viewportMaximum - a.axisX.viewportMinimum)); + n = this.dataPointWidth ? this.dataPointWidth : 0.9 * (d.width / Math.abs(a.axisX.viewportMaximum - a.axisX.viewportMinimum) * Math.abs(n) / a.plotType.plotUnits.length) << 0; + this.dataPointMaxWidth && g > k && (g = Math.min(this.dataPointWidth ? this.dataPointWidth : Infinity, k)); + !this.dataPointMaxWidth && (this.dataPointMinWidth && k < g) && (k = Math.max(this.dataPointWidth ? this.dataPointWidth : -Infinity, g)); + n < g && (n = g); + n > k && (n = k); + c.save(); + u && this._eventManager.ghostCtx.save(); + c.beginPath(); + c.rect(d.x1, d.y1, d.width, d.height); + c.clip(); + u && (this._eventManager.ghostCtx.rect(d.x1, d.y1, d.width, d.height), this._eventManager.ghostCtx.clip()); + for (k = 0; k < a.dataSeriesIndexes.length; k++) { + var m = a.dataSeriesIndexes[k], l = this.data[m], p = l.dataPoints; + if (0 < p.length) { + var r = 5 < n && l.bevelEnabled ? !0 : !1; + c.strokeStyle = "#4572A7 "; + for (g = 0; g < p.length; g++) + if (b = p[g].x.getTime ? p[g].x.getTime() : p[g].x, !(b < a.axisX.dataInfo.viewPortMin || b > a.axisX.dataInfo.viewPortMax) && + "number" === typeof p[g].y) { + d = a.axisX.conversionParameters.reference + a.axisX.conversionParameters.pixelPerUnit * (b - a.axisX.conversionParameters.minimum) + 0.5 << 0; + h = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (p[g].y - a.axisY.conversionParameters.minimum); + var t = d - a.plotType.plotUnits.length * n / 2 + a.index * n << 0, y = t + n << 0, s; + if (0 <= p[g].y) { + var z = e[b] ? e[b] : 0; + h -= z; + s = q - z; + e[b] = z + (s - h) + } else + z = f[b] ? f[b] : 0, s = h + z, h = q + z, f[b] = z + (s - h); + b = p[g].color ? p[g].color : l._colorSet[g % l._colorSet.length]; + M(c, t, h, y, s, b, 0, null, r && 0 <= p[g].y, 0 > p[g].y && r, !1, !1, l.fillOpacity); + b = l.dataPointIds[g]; + this._eventManager.objectMap[b] = {id: b, objectType: "dataPoint", dataSeriesIndex: m, dataPointIndex: g, x1: t, y1: h, x2: y, y2: s}; + b = C(b); + u && M(this._eventManager.ghostCtx, t, h, y, s, b, 0, null, !1, !1, !1, !1); + (p[g].indexLabel || l.indexLabel || p[g].indexLabelFormatter || l.indexLabelFormatter) && this._indexLabels.push({chartType: "stackedColumn", dataPoint: p[g], dataSeries: l, point: {x: d, y: 0 <= p[g].y ? h : s}, direction: 0 <= p[g].y ? 1 : -1, bounds: {x1: t, y1: Math.min(h, + s), x2: y, y2: Math.max(h, s)}, color: b}) + } + } + } + c.restore(); + u && this._eventManager.ghostCtx.restore(); + a = Math.min(q, a.axisY.boundingRect.y2); + return{source: c, dest: this.plotArea.ctx, animationCallback: B.yScaleAnimation, easingFunction: B.easing.easeOutQuart, animationBase: a} + } + }; + v.prototype.renderStackedColumn100 = function (a) { + var c = a.targetCanvasCtx || this.plotArea.ctx; + if (!(0 >= a.dataSeriesIndexes.length)) { + var b = null, d = this.plotArea, e = [], f = [], g = 0, h, q = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * + (0 - a.axisY.conversionParameters.minimum) << 0, g = this.dataPointMinWidth ? this.dataPointMinWidth : this.dataPointWidth ? this.dataPointWidth : 1, k = this.dataPointMaxWidth ? this.dataPointMaxWidth : this.dataPointWidth ? this.dataPointWidth : 0.15 * this.width << 0, n = a.axisX.dataInfo.minDiff; + isFinite(n) || (n = 0.3 * Math.abs(a.axisX.viewportMaximum - a.axisX.viewportMinimum)); + n = this.dataPointWidth ? this.dataPointWidth : 0.9 * (d.width / Math.abs(a.axisX.viewportMaximum - a.axisX.viewportMinimum) * Math.abs(n) / a.plotType.plotUnits.length) << + 0; + this.dataPointMaxWidth && g > k && (g = Math.min(this.dataPointWidth ? this.dataPointWidth : Infinity, k)); + !this.dataPointMaxWidth && (this.dataPointMinWidth && k < g) && (k = Math.max(this.dataPointWidth ? this.dataPointWidth : -Infinity, g)); + n < g && (n = g); + n > k && (n = k); + c.save(); + u && this._eventManager.ghostCtx.save(); + c.beginPath(); + c.rect(d.x1, d.y1, d.width, d.height); + c.clip(); + u && (this._eventManager.ghostCtx.rect(d.x1, d.y1, d.width, d.height), this._eventManager.ghostCtx.clip()); + for (k = 0; k < a.dataSeriesIndexes.length; k++) { + var m = a.dataSeriesIndexes[k], + l = this.data[m], p = l.dataPoints; + if (0 < p.length) + for (var r = 5 < n && l.bevelEnabled ? !0 : !1, g = 0; g < p.length; g++) + if (b = p[g].x.getTime ? p[g].x.getTime() : p[g].x, !(b < a.axisX.dataInfo.viewPortMin || b > a.axisX.dataInfo.viewPortMax) && "number" === typeof p[g].y) { + d = a.axisX.conversionParameters.reference + a.axisX.conversionParameters.pixelPerUnit * (b - a.axisX.conversionParameters.minimum) + 0.5 << 0; + h = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * ((0 !== a.dataPointYSums[b] ? 100 * (p[g].y / a.dataPointYSums[b]) : + 0) - a.axisY.conversionParameters.minimum); + var t = d - a.plotType.plotUnits.length * n / 2 + a.index * n << 0, y = t + n << 0, s; + if (0 <= p[g].y) { + var z = e[b] ? e[b] : 0; + h -= z; + s = q - z; + e[b] = z + (s - h) + } else + z = f[b] ? f[b] : 0, s = h + z, h = q + z, f[b] = z + (s - h); + b = p[g].color ? p[g].color : l._colorSet[g % l._colorSet.length]; + M(c, t, h, y, s, b, 0, null, r && 0 <= p[g].y, 0 > p[g].y && r, !1, !1, l.fillOpacity); + b = l.dataPointIds[g]; + this._eventManager.objectMap[b] = {id: b, objectType: "dataPoint", dataSeriesIndex: m, dataPointIndex: g, x1: t, y1: h, x2: y, y2: s}; + b = C(b); + u && M(this._eventManager.ghostCtx, + t, h, y, s, b, 0, null, !1, !1, !1, !1); + (p[g].indexLabel || l.indexLabel || p[g].indexLabelFormatter || l.indexLabelFormatter) && this._indexLabels.push({chartType: "stackedColumn100", dataPoint: p[g], dataSeries: l, point: {x: d, y: 0 <= p[g].y ? h : s}, direction: 0 <= p[g].y ? 1 : -1, bounds: {x1: t, y1: Math.min(h, s), x2: y, y2: Math.max(h, s)}, color: b}) + } + } + c.restore(); + u && this._eventManager.ghostCtx.restore(); + a = Math.min(q, a.axisY.boundingRect.y2); + return{source: c, dest: this.plotArea.ctx, animationCallback: B.yScaleAnimation, easingFunction: B.easing.easeOutQuart, + animationBase: a} + } + }; + v.prototype.renderBar = function (a) { + var c = a.targetCanvasCtx || this.plotArea.ctx; + if (!(0 >= a.dataSeriesIndexes.length)) { + var b = null, d = this.plotArea, e = 0, f, g, h, q = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (0 - a.axisY.conversionParameters.minimum) << 0, e = this.dataPointMinWidth ? this.dataPointMinWidth : this.dataPointWidth ? this.dataPointWidth : 1, k = this.dataPointMaxWidth ? this.dataPointMaxWidth : this.dataPointWidth ? this.dataPointWidth : Math.min(0.15 * this.height, + 0.9 * (this.plotArea.height / a.plotType.totalDataSeries)) << 0, n = a.axisX.dataInfo.minDiff; + isFinite(n) || (n = 0.3 * Math.abs(a.axisX.viewportMaximum - a.axisX.viewportMinimum)); + n = this.dataPointWidth ? this.dataPointWidth : 0.9 * (d.height / Math.abs(a.axisX.viewportMaximum - a.axisX.viewportMinimum) * Math.abs(n) / a.plotType.totalDataSeries) << 0; + this.dataPointMaxWidth && e > k && (e = Math.min(this.dataPointWidth ? this.dataPointWidth : Infinity, k)); + !this.dataPointMaxWidth && (this.dataPointMinWidth && k < e) && (k = Math.max(this.dataPointWidth ? + this.dataPointWidth : -Infinity, e)); + n < e && (n = e); + n > k && (n = k); + c.save(); + u && this._eventManager.ghostCtx.save(); + c.beginPath(); + c.rect(d.x1, d.y1, d.width, d.height); + c.clip(); + u && (this._eventManager.ghostCtx.rect(d.x1, d.y1, d.width, d.height), this._eventManager.ghostCtx.clip()); + for (d = 0; d < a.dataSeriesIndexes.length; d++) { + var k = a.dataSeriesIndexes[d], m = this.data[k], l = m.dataPoints; + if (0 < l.length) { + var p = 5 < n && m.bevelEnabled ? !0 : !1; + c.strokeStyle = "#4572A7 "; + for (e = 0; e < l.length; e++) + if (l[e].getTime ? h = l[e].x.getTime() : h = l[e].x, + !(h < a.axisX.dataInfo.viewPortMin || h > a.axisX.dataInfo.viewPortMax) && "number" === typeof l[e].y) { + g = a.axisX.conversionParameters.reference + a.axisX.conversionParameters.pixelPerUnit * (h - a.axisX.conversionParameters.minimum) + 0.5 << 0; + f = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (l[e].y - a.axisY.conversionParameters.minimum) + 0.5 << 0; + g = g - a.plotType.totalDataSeries * n / 2 + (a.previousDataSeriesCount + d) * n << 0; + var r = g + n << 0, t; + 0 <= l[e].y ? t = q : (t = f, f = q); + b = l[e].color ? l[e].color : m._colorSet[e % + m._colorSet.length]; + M(c, t, g, f, r, b, 0, null, p, !1, !1, !1, m.fillOpacity); + b = m.dataPointIds[e]; + this._eventManager.objectMap[b] = {id: b, objectType: "dataPoint", dataSeriesIndex: k, dataPointIndex: e, x1: t, y1: g, x2: f, y2: r}; + b = C(b); + u && M(this._eventManager.ghostCtx, t, g, f, r, b, 0, null, !1, !1, !1, !1); + (l[e].indexLabel || m.indexLabel || l[e].indexLabelFormatter || m.indexLabelFormatter) && this._indexLabels.push({chartType: "bar", dataPoint: l[e], dataSeries: m, point: {x: 0 <= l[e].y ? f : t, y: g + (r - g) / 2}, direction: 0 <= l[e].y ? 1 : -1, bounds: {x1: Math.min(t, + f), y1: g, x2: Math.max(t, f), y2: r}, color: b}) + } + } + } + c.restore(); + u && this._eventManager.ghostCtx.restore(); + a = Math.max(q, a.axisX.boundingRect.x2); + return{source: c, dest: this.plotArea.ctx, animationCallback: B.xScaleAnimation, easingFunction: B.easing.easeOutQuart, animationBase: a} + } + }; + v.prototype.renderStackedBar = function (a) { + var c = a.targetCanvasCtx || this.plotArea.ctx; + if (!(0 >= a.dataSeriesIndexes.length)) { + var b = null, d = this.plotArea, e = [], f = [], g = 0, h, q = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * + (0 - a.axisY.conversionParameters.minimum) << 0, g = this.dataPointMinWidth ? this.dataPointMinWidth : this.dataPointWidth ? this.dataPointWidth : 1, k = this.dataPointMaxWidth ? this.dataPointMaxWidth : this.dataPointWidth ? this.dataPointWidth : 0.15 * this.height << 0, n = a.axisX.dataInfo.minDiff; + isFinite(n) || (n = 0.3 * Math.abs(a.axisX.viewportMaximum - a.axisX.viewportMinimum)); + n = this.dataPointWidth ? this.dataPointWidth : 0.9 * (d.height / Math.abs(a.axisX.viewportMaximum - a.axisX.viewportMinimum) * Math.abs(n) / a.plotType.plotUnits.length) << + 0; + this.dataPointMaxWidth && g > k && (g = Math.min(this.dataPointWidth ? this.dataPointWidth : Infinity, k)); + !this.dataPointMaxWidth && (this.dataPointMinWidth && k < g) && (k = Math.max(this.dataPointWidth ? this.dataPointWidth : -Infinity, g)); + n < g && (n = g); + n > k && (n = k); + c.save(); + u && this._eventManager.ghostCtx.save(); + c.beginPath(); + c.rect(d.x1, d.y1, d.width, d.height); + c.clip(); + u && (this._eventManager.ghostCtx.rect(d.x1, d.y1, d.width, d.height), this._eventManager.ghostCtx.clip()); + for (k = 0; k < a.dataSeriesIndexes.length; k++) { + var m = a.dataSeriesIndexes[k], + l = this.data[m], p = l.dataPoints; + if (0 < p.length) { + var r = 5 < n && l.bevelEnabled ? !0 : !1; + c.strokeStyle = "#4572A7 "; + for (g = 0; g < p.length; g++) + if (b = p[g].x.getTime ? p[g].x.getTime() : p[g].x, !(b < a.axisX.dataInfo.viewPortMin || b > a.axisX.dataInfo.viewPortMax) && "number" === typeof p[g].y) { + d = a.axisX.conversionParameters.reference + a.axisX.conversionParameters.pixelPerUnit * (b - a.axisX.conversionParameters.minimum) + 0.5 << 0; + h = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (p[g].y - a.axisY.conversionParameters.minimum); + var t = d - a.plotType.plotUnits.length * n / 2 + a.index * n << 0, y = t + n << 0, s; + if (0 <= p[g].y) { + var z = e[b] ? e[b] : 0; + s = q + z; + h += z; + e[b] = z + (h - s) + } else + z = f[b] ? f[b] : 0, s = h - z, h = q - z, f[b] = z + (h - s); + b = p[g].color ? p[g].color : l._colorSet[g % l._colorSet.length]; + M(c, s, t, h, y, b, 0, null, r, !1, !1, !1, l.fillOpacity); + b = l.dataPointIds[g]; + this._eventManager.objectMap[b] = {id: b, objectType: "dataPoint", dataSeriesIndex: m, dataPointIndex: g, x1: s, y1: t, x2: h, y2: y}; + b = C(b); + u && M(this._eventManager.ghostCtx, s, t, h, y, b, 0, null, !1, !1, !1, !1); + (p[g].indexLabel || l.indexLabel || + p[g].indexLabelFormatter || l.indexLabelFormatter) && this._indexLabels.push({chartType: "stackedBar", dataPoint: p[g], dataSeries: l, point: {x: 0 <= p[g].y ? h : s, y: d}, direction: 0 <= p[g].y ? 1 : -1, bounds: {x1: Math.min(s, h), y1: t, x2: Math.max(s, h), y2: y}, color: b}) + } + } + } + c.restore(); + u && this._eventManager.ghostCtx.restore(); + a = Math.max(q, a.axisX.boundingRect.x2); + return{source: c, dest: this.plotArea.ctx, animationCallback: B.xScaleAnimation, easingFunction: B.easing.easeOutQuart, animationBase: a} + } + }; + v.prototype.renderStackedBar100 = function (a) { + var c = + a.targetCanvasCtx || this.plotArea.ctx; + if (!(0 >= a.dataSeriesIndexes.length)) { + var b = null, d = this.plotArea, e = [], f = [], g = 0, h, q = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (0 - a.axisY.conversionParameters.minimum) << 0, g = this.dataPointMinWidth ? this.dataPointMinWidth : this.dataPointWidth ? this.dataPointWidth : 1, k = this.dataPointMaxWidth ? this.dataPointMaxWidth : this.dataPointWidth ? this.dataPointWidth : 0.15 * this.height << 0, n = a.axisX.dataInfo.minDiff; + isFinite(n) || (n = 0.3 * Math.abs(a.axisX.viewportMaximum - + a.axisX.viewportMinimum)); + n = this.dataPointWidth ? this.dataPointWidth : 0.9 * (d.height / Math.abs(a.axisX.viewportMaximum - a.axisX.viewportMinimum) * Math.abs(n) / a.plotType.plotUnits.length) << 0; + this.dataPointMaxWidth && g > k && (g = Math.min(this.dataPointWidth ? this.dataPointWidth : Infinity, k)); + !this.dataPointMaxWidth && (this.dataPointMinWidth && k < g) && (k = Math.max(this.dataPointWidth ? this.dataPointWidth : -Infinity, g)); + n < g && (n = g); + n > k && (n = k); + c.save(); + u && this._eventManager.ghostCtx.save(); + c.beginPath(); + c.rect(d.x1, d.y1, d.width, + d.height); + c.clip(); + u && (this._eventManager.ghostCtx.rect(d.x1, d.y1, d.width, d.height), this._eventManager.ghostCtx.clip()); + for (k = 0; k < a.dataSeriesIndexes.length; k++) { + var m = a.dataSeriesIndexes[k], l = this.data[m], p = l.dataPoints; + if (0 < p.length) { + var r = 5 < n && l.bevelEnabled ? !0 : !1; + c.strokeStyle = "#4572A7 "; + for (g = 0; g < p.length; g++) + if (b = p[g].x.getTime ? p[g].x.getTime() : p[g].x, !(b < a.axisX.dataInfo.viewPortMin || b > a.axisX.dataInfo.viewPortMax) && "number" === typeof p[g].y) { + d = a.axisX.conversionParameters.reference + a.axisX.conversionParameters.pixelPerUnit * + (b - a.axisX.conversionParameters.minimum) + 0.5 << 0; + h = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * ((0 !== a.dataPointYSums[b] ? 100 * (p[g].y / a.dataPointYSums[b]) : 0) - a.axisY.conversionParameters.minimum); + var t = d - a.plotType.plotUnits.length * n / 2 + a.index * n << 0, y = t + n << 0, s; + if (0 <= p[g].y) { + var z = e[b] ? e[b] : 0; + s = q + z; + h += z; + e[b] = z + (h - s) + } else + z = f[b] ? f[b] : 0, s = h - z, h = q - z, f[b] = z + (h - s); + b = p[g].color ? p[g].color : l._colorSet[g % l._colorSet.length]; + M(c, s, t, h, y, b, 0, null, r, !1, !1, !1, l.fillOpacity); + b = + l.dataPointIds[g]; + this._eventManager.objectMap[b] = {id: b, objectType: "dataPoint", dataSeriesIndex: m, dataPointIndex: g, x1: s, y1: t, x2: h, y2: y}; + b = C(b); + u && M(this._eventManager.ghostCtx, s, t, h, y, b, 0, null, !1, !1, !1, !1); + (p[g].indexLabel || l.indexLabel || p[g].indexLabelFormatter || l.indexLabelFormatter) && this._indexLabels.push({chartType: "stackedBar100", dataPoint: p[g], dataSeries: l, point: {x: 0 <= p[g].y ? h : s, y: d}, direction: 0 <= p[g].y ? 1 : -1, bounds: {x1: Math.min(s, h), y1: t, x2: Math.max(s, h), y2: y}, color: b}) + } + } + } + c.restore(); + u && this._eventManager.ghostCtx.restore(); + a = Math.max(q, a.axisX.boundingRect.x2); + return{source: c, dest: this.plotArea.ctx, animationCallback: B.xScaleAnimation, easingFunction: B.easing.easeOutQuart, animationBase: a} + } + }; + v.prototype.renderArea = function (a) { + function c() { + z && (0 < k.lineThickness && b.stroke(), 0 >= a.axisY.viewportMinimum && 0 <= a.axisY.viewportMaximum ? s = y : 0 > a.axisY.viewportMaximum ? s = f.y1 : 0 < a.axisY.viewportMinimum && (s = e.y2), b.lineTo(p, s), b.lineTo(z.x, s), b.closePath(), b.globalAlpha = k.fillOpacity, b.fill(), b.globalAlpha = 1, u && (d.lineTo(p, s), d.lineTo(z.x, + s), d.closePath(), d.fill()), b.beginPath(), b.moveTo(p, r), d.beginPath(), d.moveTo(p, r), z = {x: p, y: r}) + } + var b = a.targetCanvasCtx || this.plotArea.ctx; + if (!(0 >= a.dataSeriesIndexes.length)) { + var d = this._eventManager.ghostCtx, e = a.axisX.lineCoordinates, f = a.axisY.lineCoordinates, g = [], h = this.plotArea; + b.save(); + u && d.save(); + b.beginPath(); + b.rect(h.x1, h.y1, h.width, h.height); + b.clip(); + u && (d.beginPath(), d.rect(h.x1, h.y1, h.width, h.height), d.clip()); + for (h = 0; h < a.dataSeriesIndexes.length; h++) { + var q = a.dataSeriesIndexes[h], k = this.data[q], + n = k.dataPoints, g = k.id; + this._eventManager.objectMap[g] = {objectType: "dataSeries", dataSeriesIndex: q}; + g = C(g); + d.fillStyle = g; + var g = [], m = !0, l = 0, p, r, t, y = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (0 - a.axisY.conversionParameters.minimum) + 0.5 << 0, s, z = null; + if (0 < n.length) { + var w = k._colorSet[l % k._colorSet.length], x = k._options.lineColor || w, v = x; + b.fillStyle = w; + b.strokeStyle = x; + b.lineWidth = k.lineThickness; + var A = "solid"; + if (b.setLineDash) { + var H = D(k.nullDataLineDashType, k.lineThickness), + A = k.lineDashType, K = D(A, k.lineThickness); + b.setLineDash(K) + } + for (var I = !0; l < n.length; l++) + if (t = n[l].x.getTime ? n[l].x.getTime() : n[l].x, !(t < a.axisX.dataInfo.viewPortMin || t > a.axisX.dataInfo.viewPortMax && (!k.connectNullData || !I))) + if ("number" !== typeof n[l].y) + k.connectNullData || (I || m) || c(), I = !0; + else { + p = a.axisX.conversionParameters.reference + a.axisX.conversionParameters.pixelPerUnit * (t - a.axisX.conversionParameters.minimum) + 0.5 << 0; + r = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * + (n[l].y - a.axisY.conversionParameters.minimum) + 0.5 << 0; + m || I ? (!m && k.connectNullData ? (b.setLineDash && (k._options.nullDataLineDashType || A === k.lineDashType && k.lineDashType !== k.nullDataLineDashType) && (b.stroke(), A = k.nullDataLineDashType, b.setLineDash(H)), b.lineTo(p, r), u && d.lineTo(p, r)) : (b.beginPath(), b.moveTo(p, r), u && (d.beginPath(), d.moveTo(p, r)), z = {x: p, y: r}), I = m = !1) : (b.lineTo(p, r), u && d.lineTo(p, r), 0 == l % 250 && c()); + l < n.length - 1 && (v !== (n[l].lineColor || x) || A !== (n[l].lineDashType || k.lineDashType)) && (c(), v = n[l].lineColor || + x, b.strokeStyle = v, b.setLineDash && (n[l].lineDashType ? (A = n[l].lineDashType, b.setLineDash(D(A, k.lineThickness))) : (A = k.lineDashType, b.setLineDash(K)))); + var G = k.dataPointIds[l]; + this._eventManager.objectMap[G] = {id: G, objectType: "dataPoint", dataSeriesIndex: q, dataPointIndex: l, x1: p, y1: r}; + 0 !== n[l].markerSize && (0 < n[l].markerSize || 0 < k.markerSize) && (t = k.getMarkerProperties(l, p, r, b), g.push(t), G = C(G), u && g.push({x: p, y: r, ctx: d, type: t.type, size: t.size, color: G, borderColor: G, borderThickness: t.borderThickness})); + (n[l].indexLabel || + k.indexLabel || n[l].indexLabelFormatter || k.indexLabelFormatter) && this._indexLabels.push({chartType: "area", dataPoint: n[l], dataSeries: k, point: {x: p, y: r}, direction: 0 <= n[l].y ? 1 : -1, color: w}) + } + c(); + P.drawMarkers(g) + } + } + b.restore(); + u && this._eventManager.ghostCtx.restore(); + return{source: b, dest: this.plotArea.ctx, animationCallback: B.xClipAnimation, easingFunction: B.easing.linear, animationBase: 0} + } + }; + v.prototype.renderSplineArea = function (a) { + function c() { + var c = ma(s, 2); + if (0 < c.length) { + if (0 < k.lineThickness) { + b.beginPath(); + b.moveTo(c[0].x, c[0].y); + c[0].newStrokeStyle && (b.strokeStyle = c[0].newStrokeStyle); + c[0].newLineDashArray && b.setLineDash(c[0].newLineDashArray); + for (var g = 0; g < c.length - 3; g += 3) + if (b.bezierCurveTo(c[g + 1].x, c[g + 1].y, c[g + 2].x, c[g + 2].y, c[g + 3].x, c[g + 3].y), u && d.bezierCurveTo(c[g + 1].x, c[g + 1].y, c[g + 2].x, c[g + 2].y, c[g + 3].x, c[g + 3].y), c[g + 3].newStrokeStyle || c[g + 3].newLineDashArray) + b.stroke(), b.beginPath(), b.moveTo(c[g + 3].x, c[g + 3].y), c[g + 3].newStrokeStyle && (b.strokeStyle = c[g + 3].newStrokeStyle), c[g + 3].newLineDashArray && + b.setLineDash(c[g + 3].newLineDashArray); + b.stroke() + } + b.beginPath(); + b.moveTo(c[0].x, c[0].y); + u && (d.beginPath(), d.moveTo(c[0].x, c[0].y)); + for (g = 0; g < c.length - 3; g += 3) + b.bezierCurveTo(c[g + 1].x, c[g + 1].y, c[g + 2].x, c[g + 2].y, c[g + 3].x, c[g + 3].y), u && d.bezierCurveTo(c[g + 1].x, c[g + 1].y, c[g + 2].x, c[g + 2].y, c[g + 3].x, c[g + 3].y); + 0 >= a.axisY.viewportMinimum && 0 <= a.axisY.viewportMaximum ? t = r : 0 > a.axisY.viewportMaximum ? t = f.y1 : 0 < a.axisY.viewportMinimum && (t = e.y2); + y = {x: c[0].x, y: c[0].y}; + b.lineTo(c[c.length - 1].x, t); + b.lineTo(y.x, t); + b.closePath(); + b.globalAlpha = k.fillOpacity; + b.fill(); + b.globalAlpha = 1; + u && (d.lineTo(c[c.length - 1].x, t), d.lineTo(y.x, t), d.closePath(), d.fill()) + } + } + var b = a.targetCanvasCtx || this.plotArea.ctx; + if (!(0 >= a.dataSeriesIndexes.length)) { + var d = this._eventManager.ghostCtx, e = a.axisX.lineCoordinates, f = a.axisY.lineCoordinates, g = [], h = this.plotArea; + b.save(); + u && d.save(); + b.beginPath(); + b.rect(h.x1, h.y1, h.width, h.height); + b.clip(); + u && (d.beginPath(), d.rect(h.x1, h.y1, h.width, h.height), d.clip()); + for (h = 0; h < a.dataSeriesIndexes.length; h++) { + var q = + a.dataSeriesIndexes[h], k = this.data[q], n = k.dataPoints, g = k.id; + this._eventManager.objectMap[g] = {objectType: "dataSeries", dataSeriesIndex: q}; + g = C(g); + d.fillStyle = g; + var g = [], m = 0, l, p, r = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (0 - a.axisY.conversionParameters.minimum) + 0.5 << 0, t, y = null, s = []; + if (0 < n.length) { + var z = k._colorSet[m % k._colorSet.length], w = k._options.lineColor || z, x = w; + b.fillStyle = z; + b.strokeStyle = w; + b.lineWidth = k.lineThickness; + var v = "solid"; + if (b.setLineDash) { + var A = D(k.nullDataLineDashType, + k.lineThickness), v = k.lineDashType, H = D(v, k.lineThickness); + b.setLineDash(H) + } + for (p = !1; m < n.length; m++) + if (l = n[m].x.getTime ? n[m].x.getTime() : n[m].x, !(l < a.axisX.dataInfo.viewPortMin || l > a.axisX.dataInfo.viewPortMax && (!k.connectNullData || !p))) + if ("number" !== typeof n[m].y) + 0 < m && !p && (k.connectNullData ? b.setLineDash && (0 < s.length && (k._options.nullDataLineDashType || !n[m - 1].lineDashType)) && (s[s.length - 1].newLineDashArray = A, v = k.nullDataLineDashType) : (c(), s = [])), p = !0; + else { + l = a.axisX.conversionParameters.reference + a.axisX.conversionParameters.pixelPerUnit * + (l - a.axisX.conversionParameters.minimum) + 0.5 << 0; + p = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (n[m].y - a.axisY.conversionParameters.minimum) + 0.5 << 0; + var K = k.dataPointIds[m]; + this._eventManager.objectMap[K] = {id: K, objectType: "dataPoint", dataSeriesIndex: q, dataPointIndex: m, x1: l, y1: p}; + s[s.length] = {x: l, y: p}; + m < n.length - 1 && (x !== (n[m].lineColor || w) || v !== (n[m].lineDashType || k.lineDashType)) && (x = n[m].lineColor || w, s[s.length - 1].newStrokeStyle = x, b.setLineDash && (n[m].lineDashType ? + (v = n[m].lineDashType, s[s.length - 1].newLineDashArray = D(v, k.lineThickness)) : (v = k.lineDashType, s[s.length - 1].newLineDashArray = H))); + if (0 !== n[m].markerSize && (0 < n[m].markerSize || 0 < k.markerSize)) { + var I = k.getMarkerProperties(m, l, p, b); + g.push(I); + K = C(K); + u && g.push({x: l, y: p, ctx: d, type: I.type, size: I.size, color: K, borderColor: K, borderThickness: I.borderThickness}) + } + (n[m].indexLabel || k.indexLabel || n[m].indexLabelFormatter || k.indexLabelFormatter) && this._indexLabels.push({chartType: "splineArea", dataPoint: n[m], dataSeries: k, + point: {x: l, y: p}, direction: 0 <= n[m].y ? 1 : -1, color: z}); + p = !1 + } + c(); + P.drawMarkers(g) + } + } + b.restore(); + u && this._eventManager.ghostCtx.restore(); + return{source: b, dest: this.plotArea.ctx, animationCallback: B.xClipAnimation, easingFunction: B.easing.linear, animationBase: 0} + } + }; + v.prototype.renderStepArea = function (a) { + function c() { + z && (0 < k.lineThickness && b.stroke(), 0 >= a.axisY.viewportMinimum && 0 <= a.axisY.viewportMaximum ? s = y : 0 > a.axisY.viewportMaximum ? s = f.y1 : 0 < a.axisY.viewportMinimum && (s = e.y2), b.lineTo(p, s), b.lineTo(z.x, s), b.closePath(), + b.globalAlpha = k.fillOpacity, b.fill(), b.globalAlpha = 1, u && (d.lineTo(p, s), d.lineTo(z.x, s), d.closePath(), d.fill()), b.beginPath(), b.moveTo(p, r), d.beginPath(), d.moveTo(p, r), z = {x: p, y: r}) + } + var b = a.targetCanvasCtx || this.plotArea.ctx; + if (!(0 >= a.dataSeriesIndexes.length)) { + var d = this._eventManager.ghostCtx, e = a.axisX.lineCoordinates, f = a.axisY.lineCoordinates, g = [], h = this.plotArea; + b.save(); + u && d.save(); + b.beginPath(); + b.rect(h.x1, h.y1, h.width, h.height); + b.clip(); + u && (d.beginPath(), d.rect(h.x1, h.y1, h.width, h.height), d.clip()); + for (h = 0; h < a.dataSeriesIndexes.length; h++) { + var q = a.dataSeriesIndexes[h], k = this.data[q], n = k.dataPoints, g = k.id; + this._eventManager.objectMap[g] = {objectType: "dataSeries", dataSeriesIndex: q}; + g = C(g); + d.fillStyle = g; + var g = [], m = !0, l = 0, p, r, t, y = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (0 - a.axisY.conversionParameters.minimum) + 0.5 << 0, s, z = null, w = !1; + if (0 < n.length) { + var x = k._colorSet[l % k._colorSet.length], v = k._options.lineColor || x, A = v; + b.fillStyle = x; + b.strokeStyle = v; + b.lineWidth = + k.lineThickness; + var H = "solid"; + if (b.setLineDash) { + var K = D(k.nullDataLineDashType, k.lineThickness), H = k.lineDashType, I = D(H, k.lineThickness); + b.setLineDash(I) + } + for (; l < n.length; l++) + if (t = n[l].x.getTime ? n[l].x.getTime() : n[l].x, !(t < a.axisX.dataInfo.viewPortMin || t > a.axisX.dataInfo.viewPortMax && (!k.connectNullData || !w))) { + var G = r; + "number" !== typeof n[l].y ? (k.connectNullData || (w || m) || c(), w = !0) : (p = a.axisX.conversionParameters.reference + a.axisX.conversionParameters.pixelPerUnit * (t - a.axisX.conversionParameters.minimum) + + 0.5 << 0, r = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (n[l].y - a.axisY.conversionParameters.minimum) + 0.5 << 0, m || w ? (!m && k.connectNullData ? (b.setLineDash && (k._options.nullDataLineDashType || H === k.lineDashType && k.lineDashType !== k.nullDataLineDashType) && (b.stroke(), H = k.nullDataLineDashType, b.setLineDash(K)), b.lineTo(p, G), b.lineTo(p, r), u && (d.lineTo(p, G), d.lineTo(p, r))) : (b.beginPath(), b.moveTo(p, r), u && (d.beginPath(), d.moveTo(p, r)), z = {x: p, y: r}), w = m = !1) : (b.lineTo(p, G), u && + d.lineTo(p, G), b.lineTo(p, r), u && d.lineTo(p, r), 0 == l % 250 && c()), l < n.length - 1 && (A !== (n[l].lineColor || v) || H !== (n[l].lineDashType || k.lineDashType)) && (c(), A = n[l].lineColor || v, b.strokeStyle = A, b.setLineDash && (n[l].lineDashType ? (H = n[l].lineDashType, b.setLineDash(D(H, k.lineThickness))) : (H = k.lineDashType, b.setLineDash(I)))), G = k.dataPointIds[l], this._eventManager.objectMap[G] = {id: G, objectType: "dataPoint", dataSeriesIndex: q, dataPointIndex: l, x1: p, y1: r}, 0 !== n[l].markerSize && (0 < n[l].markerSize || 0 < k.markerSize) && (t = + k.getMarkerProperties(l, p, r, b), g.push(t), G = C(G), u && g.push({x: p, y: r, ctx: d, type: t.type, size: t.size, color: G, borderColor: G, borderThickness: t.borderThickness})), (n[l].indexLabel || k.indexLabel || n[l].indexLabelFormatter || k.indexLabelFormatter) && this._indexLabels.push({chartType: "stepArea", dataPoint: n[l], dataSeries: k, point: {x: p, y: r}, direction: 0 <= n[l].y ? 1 : -1, color: x})) + } + c(); + P.drawMarkers(g) + } + } + b.restore(); + u && this._eventManager.ghostCtx.restore(); + return{source: b, dest: this.plotArea.ctx, animationCallback: B.xClipAnimation, + easingFunction: B.easing.linear, animationBase: 0} + } + }; + v.prototype.renderStackedArea = function (a) { + function c() { + if (!(1 > h.length)) { + for (0 < s.lineThickness && b.stroke(); 0 < h.length; ) { + var a = h.pop(); + b.lineTo(a.x, a.y); + u && r.lineTo(a.x, a.y) + } + b.closePath(); + b.globalAlpha = s.fillOpacity; + b.fill(); + b.globalAlpha = 1; + b.beginPath(); + u && (r.closePath(), r.fill(), r.beginPath()); + h = [] + } + } + var b = a.targetCanvasCtx || this.plotArea.ctx; + if (!(0 >= a.dataSeriesIndexes.length)) { + var d = null, e = [], f = this.plotArea, g = [], h = [], q = [], k = 0, n, m, l, p = a.axisY.conversionParameters.reference + + a.axisY.conversionParameters.pixelPerUnit * (0 - a.axisY.conversionParameters.minimum) << 0, r = this._eventManager.ghostCtx; + u && r.beginPath(); + b.save(); + u && r.save(); + b.beginPath(); + b.rect(f.x1, f.y1, f.width, f.height); + b.clip(); + u && (r.beginPath(), r.rect(f.x1, f.y1, f.width, f.height), r.clip()); + for (var t = [], f = 0; f < a.dataSeriesIndexes.length; f++) { + var y = a.dataSeriesIndexes[f], s = this.data[y], z = s.dataPoints; + s.dataPointIndexes = []; + for (k = 0; k < z.length; k++) + y = z[k].x.getTime ? z[k].x.getTime() : z[k].x, s.dataPointIndexes[y] = k, t[y] || + (q.push(y), t[y] = !0); + q.sort(Aa) + } + for (f = 0; f < a.dataSeriesIndexes.length; f++) { + y = a.dataSeriesIndexes[f]; + s = this.data[y]; + z = s.dataPoints; + t = !0; + h = []; + k = s.id; + this._eventManager.objectMap[k] = {objectType: "dataSeries", dataSeriesIndex: y}; + k = C(k); + r.fillStyle = k; + if (0 < q.length) { + var d = s._colorSet[0], w = s._options.lineColor || d, x = w; + b.fillStyle = d; + b.strokeStyle = w; + b.lineWidth = s.lineThickness; + var v = "solid"; + if (b.setLineDash) { + var A = D(s.nullDataLineDashType, s.lineThickness), v = s.lineDashType, H = D(v, s.lineThickness); + b.setLineDash(H) + } + for (var K = + !0, k = 0; k < q.length; k++) { + l = q[k]; + var I = null, I = 0 <= s.dataPointIndexes[l] ? z[s.dataPointIndexes[l]] : {x: l, y: null}; + if (!(l < a.axisX.dataInfo.viewPortMin || l > a.axisX.dataInfo.viewPortMax && (!s.connectNullData || !K))) + if ("number" !== typeof I.y) + s.connectNullData || (K || t) || c(), K = !0; + else { + n = a.axisX.conversionParameters.reference + a.axisX.conversionParameters.pixelPerUnit * (l - a.axisX.conversionParameters.minimum) + 0.5 << 0; + m = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (I.y - a.axisY.conversionParameters.minimum); + var G = g[l] ? g[l] : 0; + m -= G; + h.push({x: n, y: p - G}); + g[l] = p - m; + t || K ? (!t && s.connectNullData ? (b.setLineDash && (s._options.nullDataLineDashType || v === s.lineDashType && s.lineDashType !== s.nullDataLineDashType) && (b.stroke(), v = s.nullDataLineDashType, b.setLineDash(A)), b.lineTo(n, m), u && r.lineTo(n, m)) : (b.beginPath(), b.moveTo(n, m), u && (r.beginPath(), r.moveTo(n, m))), K = t = !1) : (b.lineTo(n, m), u && r.lineTo(n, m), 0 == k % 250 && (c(), b.moveTo(n, m), u && r.moveTo(n, m), h.push({x: n, y: p - G}))); + k < z.length - 1 && (x !== (z[k].lineColor || w) || v !== (z[k].lineDashType || + s.lineDashType)) && (c(), b.beginPath(), b.moveTo(n, m), h.push({x: n, y: p - G}), x = z[k].lineColor || w, b.strokeStyle = x, b.setLineDash && (z[k].lineDashType ? (v = z[k].lineDashType, b.setLineDash(D(v, s.lineThickness))) : (v = s.lineDashType, b.setLineDash(H)))); + if (0 <= s.dataPointIndexes[l]) { + var S = s.dataPointIds[s.dataPointIndexes[l]]; + this._eventManager.objectMap[S] = {id: S, objectType: "dataPoint", dataSeriesIndex: y, dataPointIndex: s.dataPointIndexes[l], x1: n, y1: m} + } + 0 <= s.dataPointIndexes[l] && 0 !== I.markerSize && (0 < I.markerSize || 0 < s.markerSize) && + (l = s.getMarkerProperties(k, n, m, b), e.push(l), markerColor = C(S), u && e.push({x: n, y: m, ctx: r, type: l.type, size: l.size, color: markerColor, borderColor: markerColor, borderThickness: l.borderThickness})); + (I.indexLabel || s.indexLabel || I.indexLabelFormatter || s.indexLabelFormatter) && this._indexLabels.push({chartType: "stackedArea", dataPoint: I, dataSeries: s, point: {x: n, y: m}, direction: 0 <= z[k].y ? 1 : -1, color: d}) + } + } + c(); + b.moveTo(n, m); + u && r.moveTo(n, m) + } + delete s.dataPointIndexes + } + P.drawMarkers(e); + b.restore(); + u && r.restore(); + return{source: b, + dest: this.plotArea.ctx, animationCallback: B.xClipAnimation, easingFunction: B.easing.linear, animationBase: 0} + } + }; + v.prototype.renderStackedArea100 = function (a) { + function c() { + for (0 < w.lineThickness && b.stroke(); 0 < h.length; ) { + var a = h.pop(); + b.lineTo(a.x, a.y); + u && y.lineTo(a.x, a.y) + } + b.closePath(); + b.globalAlpha = w.fillOpacity; + b.fill(); + b.globalAlpha = 1; + b.beginPath(); + u && (y.closePath(), y.fill(), y.beginPath()); + h = [] + } + var b = a.targetCanvasCtx || this.plotArea.ctx; + if (!(0 >= a.dataSeriesIndexes.length)) { + var d = null, e = this.plotArea, + f = [], g = [], h = [], q = [], k = 0, n, m, l, p = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (0 - a.axisY.conversionParameters.minimum) << 0, r = this.dataPointMaxWidth ? this.dataPointMaxWidth : 0.15 * this.width << 0, t = a.axisX.dataInfo.minDiff, t = 0.9 * e.width / Math.abs(a.axisX.viewportMaximum - a.axisX.viewportMinimum) * Math.abs(t) << 0, y = this._eventManager.ghostCtx; + b.save(); + u && y.save(); + b.beginPath(); + b.rect(e.x1, e.y1, e.width, e.height); + b.clip(); + u && (y.beginPath(), y.rect(e.x1, e.y1, e.width, e.height), y.clip()); + for (var s = [], e = 0; e < a.dataSeriesIndexes.length; e++) { + var z = a.dataSeriesIndexes[e], w = this.data[z], x = w.dataPoints; + w.dataPointIndexes = []; + for (k = 0; k < x.length; k++) + z = x[k].x.getTime ? x[k].x.getTime() : x[k].x, w.dataPointIndexes[z] = k, s[z] || (q.push(z), s[z] = !0); + q.sort(Aa) + } + for (e = 0; e < a.dataSeriesIndexes.length; e++) { + z = a.dataSeriesIndexes[e]; + w = this.data[z]; + x = w.dataPoints; + s = !0; + d = w.id; + this._eventManager.objectMap[d] = {objectType: "dataSeries", dataSeriesIndex: z}; + d = C(d); + y.fillStyle = d; + 1 == x.length && (t = r); + 1 > t ? t = 1 : t > r && (t = r); + h = []; + if (0 < q.length) { + var d = w._colorSet[k % w._colorSet.length], v = w._options.lineColor || d, A = v; + b.fillStyle = d; + b.strokeStyle = v; + b.lineWidth = w.lineThickness; + var H = "solid"; + if (b.setLineDash) { + var K = D(w.nullDataLineDashType, w.lineThickness), H = w.lineDashType, I = D(H, w.lineThickness); + b.setLineDash(I) + } + for (var G = !0, k = 0; k < q.length; k++) { + l = q[k]; + var S = null, S = 0 <= w.dataPointIndexes[l] ? x[w.dataPointIndexes[l]] : {x: l, y: null}; + if (!(l < a.axisX.dataInfo.viewPortMin || l > a.axisX.dataInfo.viewPortMax && (!w.connectNullData || !G))) + if ("number" !== + typeof S.y) + w.connectNullData || (G || s) || c(), G = !0; + else { + m = 0 !== a.dataPointYSums[l] ? 100 * (S.y / a.dataPointYSums[l]) : 0; + n = a.axisX.conversionParameters.reference + a.axisX.conversionParameters.pixelPerUnit * (l - a.axisX.conversionParameters.minimum) + 0.5 << 0; + m = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (m - a.axisY.conversionParameters.minimum); + var sa = g[l] ? g[l] : 0; + m -= sa; + h.push({x: n, y: p - sa}); + g[l] = p - m; + s || G ? (!s && w.connectNullData ? (b.setLineDash && (w._options.nullDataLineDashType || H === + w.lineDashType && w.lineDashType !== w.nullDataLineDashType) && (b.stroke(), H = w.nullDataLineDashType, b.setLineDash(K)), b.lineTo(n, m), u && y.lineTo(n, m)) : (b.beginPath(), b.moveTo(n, m), u && (y.beginPath(), y.moveTo(n, m))), G = s = !1) : (b.lineTo(n, m), u && y.lineTo(n, m), 0 == k % 250 && (c(), b.moveTo(n, m), u && y.moveTo(n, m), h.push({x: n, y: p - sa}))); + k < x.length - 1 && (A !== (x[k].lineColor || v) || H !== (x[k].lineDashType || w.lineDashType)) && (c(), b.beginPath(), b.moveTo(n, m), h.push({x: n, y: p - sa}), A = x[k].lineColor || v, b.strokeStyle = A, b.setLineDash && + (x[k].lineDashType ? (H = x[k].lineDashType, b.setLineDash(D(H, w.lineThickness))) : (H = w.lineDashType, b.setLineDash(I)))); + if (0 <= w.dataPointIndexes[l]) { + var xa = w.dataPointIds[w.dataPointIndexes[l]]; + this._eventManager.objectMap[xa] = {id: xa, objectType: "dataPoint", dataSeriesIndex: z, dataPointIndex: w.dataPointIndexes[l], x1: n, y1: m} + } + 0 <= w.dataPointIndexes[l] && 0 !== S.markerSize && (0 < S.markerSize || 0 < w.markerSize) && (l = w.getMarkerProperties(k, n, m, b), f.push(l), markerColor = C(xa), u && f.push({x: n, y: m, ctx: y, type: l.type, size: l.size, + color: markerColor, borderColor: markerColor, borderThickness: l.borderThickness})); + (S.indexLabel || w.indexLabel || S.indexLabelFormatter || w.indexLabelFormatter) && this._indexLabels.push({chartType: "stackedArea100", dataPoint: S, dataSeries: w, point: {x: n, y: m}, direction: 0 <= x[k].y ? 1 : -1, color: d}) + } + } + c(); + b.moveTo(n, m); + u && y.moveTo(n, m) + } + delete w.dataPointIndexes + } + P.drawMarkers(f); + b.restore(); + u && y.restore(); + return{source: b, dest: this.plotArea.ctx, animationCallback: B.xClipAnimation, easingFunction: B.easing.linear, animationBase: 0} + } + }; + v.prototype.renderBubble = function (a) { + var c = a.targetCanvasCtx || this.plotArea.ctx, b = a.dataSeriesIndexes.length; + if (!(0 >= b)) { + var d = this.plotArea, e = 0, f, g, h = this.dataPointMaxWidth ? this.dataPointMaxWidth : 0.15 * this.width << 0, e = a.axisX.dataInfo.minDiff, b = 0.9 * (d.width / Math.abs(a.axisX.viewportMaximum - a.axisX.viewportMinimum) * Math.abs(e) / b) << 0; + c.save(); + u && this._eventManager.ghostCtx.save(); + c.beginPath(); + c.rect(d.x1, d.y1, d.width, d.height); + c.clip(); + u && (this._eventManager.ghostCtx.rect(d.x1, d.y1, d.width, d.height), + this._eventManager.ghostCtx.clip()); + for (var q = -Infinity, k = Infinity, n = 0; n < a.dataSeriesIndexes.length; n++) + for (var m = a.dataSeriesIndexes[n], l = this.data[m], p = l.dataPoints, r = 0, e = 0; e < p.length; e++) + f = p[e].getTime ? f = p[e].x.getTime() : f = p[e].x, f < a.axisX.dataInfo.viewPortMin || f > a.axisX.dataInfo.viewPortMax || "undefined" === typeof p[e].z || (r = p[e].z, r > q && (q = r), r < k && (k = r)); + for (var t = 25 * Math.PI, d = Math.max(Math.pow(0.25 * Math.min(d.height, d.width) / 2, 2) * Math.PI, t), n = 0; n < a.dataSeriesIndexes.length; n++) + if (m = a.dataSeriesIndexes[n], + l = this.data[m], p = l.dataPoints, 1 == p.length && (b = h), 1 > b ? b = 1 : b > h && (b = h), 0 < p.length) + for (c.strokeStyle = "#4572A7 ", e = 0; e < p.length; e++) + if (f = p[e].getTime ? f = p[e].x.getTime() : f = p[e].x, !(f < a.axisX.dataInfo.viewPortMin || f > a.axisX.dataInfo.viewPortMax) && "number" === typeof p[e].y) { + f = a.axisX.conversionParameters.reference + a.axisX.conversionParameters.pixelPerUnit * (f - a.axisX.conversionParameters.minimum) + 0.5 << 0; + g = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (p[e].y - a.axisY.conversionParameters.minimum) + + 0.5 << 0; + var r = p[e].z, y = 2 * Math.max(Math.sqrt((q === k ? d / 2 : t + (d - t) / (q - k) * (r - k)) / Math.PI) << 0, 1), r = l.getMarkerProperties(e, c); + r.size = y; + c.globalAlpha = l.fillOpacity; + P.drawMarker(f, g, c, r.type, r.size, r.color, r.borderColor, r.borderThickness); + c.globalAlpha = 1; + var s = l.dataPointIds[e]; + this._eventManager.objectMap[s] = {id: s, objectType: "dataPoint", dataSeriesIndex: m, dataPointIndex: e, x1: f, y1: g, size: y}; + y = C(s); + u && P.drawMarker(f, g, this._eventManager.ghostCtx, r.type, r.size, y, y, r.borderThickness); + (p[e].indexLabel || l.indexLabel || + p[e].indexLabelFormatter || l.indexLabelFormatter) && this._indexLabels.push({chartType: "bubble", dataPoint: p[e], dataSeries: l, point: {x: f, y: g}, direction: 1, bounds: {x1: f - r.size / 2, y1: g - r.size / 2, x2: f + r.size / 2, y2: g + r.size / 2}, color: null}) + } + c.restore(); + u && this._eventManager.ghostCtx.restore(); + return{source: c, dest: this.plotArea.ctx, animationCallback: B.fadeInAnimation, easingFunction: B.easing.easeInQuad, animationBase: 0} + } + }; + v.prototype.renderScatter = function (a) { + var c = a.targetCanvasCtx || this.plotArea.ctx, b = a.dataSeriesIndexes.length; + if (!(0 >= b)) { + var d = this.plotArea, e = 0, f, g, h = this.dataPointMaxWidth ? this.dataPointMaxWidth : 0.15 * this.width << 0, e = a.axisX.dataInfo.minDiff, b = 0.9 * (d.width / Math.abs(a.axisX.viewportMaximum - a.axisX.viewportMinimum) * Math.abs(e) / b) << 0; + c.save(); + u && this._eventManager.ghostCtx.save(); + c.beginPath(); + c.rect(d.x1, d.y1, d.width, d.height); + c.clip(); + u && (this._eventManager.ghostCtx.rect(d.x1, d.y1, d.width, d.height), this._eventManager.ghostCtx.clip()); + for (var q = 0; q < a.dataSeriesIndexes.length; q++) { + var k = a.dataSeriesIndexes[q], + n = this.data[k], m = n.dataPoints; + 1 == m.length && (b = h); + 1 > b ? b = 1 : b > h && (b = h); + if (0 < m.length) { + c.strokeStyle = "#4572A7 "; + Math.pow(0.3 * Math.min(d.height, d.width) / 2, 2); + for (var l = 0, p = 0, e = 0; e < m.length; e++) + if (f = m[e].getTime ? f = m[e].x.getTime() : f = m[e].x, !(f < a.axisX.dataInfo.viewPortMin || f > a.axisX.dataInfo.viewPortMax) && "number" === typeof m[e].y) { + f = a.axisX.conversionParameters.reference + a.axisX.conversionParameters.pixelPerUnit * (f - a.axisX.conversionParameters.minimum) + 0.5 << 0; + g = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * + (m[e].y - a.axisY.conversionParameters.minimum) + 0.5 << 0; + var r = n.getMarkerProperties(e, f, g, c); + c.globalAlpha = n.fillOpacity; + P.drawMarker(r.x, r.y, r.ctx, r.type, r.size, r.color, r.borderColor, r.borderThickness); + c.globalAlpha = 1; + Math.sqrt((l - f) * (l - f) + (p - g) * (p - g)) < Math.min(r.size, 5) && m.length > Math.min(this.plotArea.width, this.plotArea.height) || (l = n.dataPointIds[e], this._eventManager.objectMap[l] = {id: l, objectType: "dataPoint", dataSeriesIndex: k, dataPointIndex: e, x1: f, y1: g}, l = C(l), u && P.drawMarker(r.x, r.y, this._eventManager.ghostCtx, + r.type, r.size, l, l, r.borderThickness), (m[e].indexLabel || n.indexLabel || m[e].indexLabelFormatter || n.indexLabelFormatter) && this._indexLabels.push({chartType: "scatter", dataPoint: m[e], dataSeries: n, point: {x: f, y: g}, direction: 1, bounds: {x1: f - r.size / 2, y1: g - r.size / 2, x2: f + r.size / 2, y2: g + r.size / 2}, color: null}), l = f, p = g) + } + } + } + c.restore(); + u && this._eventManager.ghostCtx.restore(); + return{source: c, dest: this.plotArea.ctx, animationCallback: B.fadeInAnimation, easingFunction: B.easing.easeInQuad, animationBase: 0} + } + }; + v.prototype.renderCandlestick = + function (a) { + var c = a.targetCanvasCtx || this.plotArea.ctx, b = this._eventManager.ghostCtx; + if (!(0 >= a.dataSeriesIndexes.length)) { + var d = null, d = this.plotArea, e = 0, f, g, h, q, k, n, e = this.dataPointMinWidth ? this.dataPointMinWidth : this.dataPointWidth ? this.dataPointWidth : 1; + f = this.dataPointMaxWidth ? this.dataPointMaxWidth : this.dataPointWidth ? this.dataPointWidth : 0.015 * this.width; + var m = a.axisX.dataInfo.minDiff; + isFinite(m) || (m = 0.3 * Math.abs(a.axisX.viewportMaximum - a.axisX.viewportMinimum)); + m = this.dataPointWidth ? this.dataPointWidth : + 0.7 * d.width / Math.abs(a.axisX.viewportMaximum - a.axisX.viewportMinimum) * Math.abs(m) << 0; + this.dataPointMaxWidth && e > f && (e = Math.min(this.dataPointWidth ? this.dataPointWidth : Infinity, f)); + !this.dataPointMaxWidth && (this.dataPointMinWidth && f < e) && (f = Math.max(this.dataPointWidth ? this.dataPointWidth : -Infinity, e)); + m < e && (m = e); + m > f && (m = f); + c.save(); + u && b.save(); + c.beginPath(); + c.rect(d.x1, d.y1, d.width, d.height); + c.clip(); + u && (b.rect(d.x1, d.y1, d.width, d.height), b.clip()); + for (var l = 0; l < a.dataSeriesIndexes.length; l++) { + var p = + a.dataSeriesIndexes[l], r = this.data[p], t = r.dataPoints; + if (0 < t.length) + for (var y = 5 < m && r.bevelEnabled ? !0 : !1, e = 0; e < t.length; e++) + if (t[e].getTime ? n = t[e].x.getTime() : n = t[e].x, !(n < a.axisX.dataInfo.viewPortMin || n > a.axisX.dataInfo.viewPortMax) && null !== t[e].y && t[e].y.length && "number" === typeof t[e].y[0] && "number" === typeof t[e].y[1] && "number" === typeof t[e].y[2] && "number" === typeof t[e].y[3]) { + f = a.axisX.conversionParameters.reference + a.axisX.conversionParameters.pixelPerUnit * (n - a.axisX.conversionParameters.minimum) + + 0.5 << 0; + g = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (t[e].y[0] - a.axisY.conversionParameters.minimum) + 0.5 << 0; + h = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (t[e].y[1] - a.axisY.conversionParameters.minimum) + 0.5 << 0; + q = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (t[e].y[2] - a.axisY.conversionParameters.minimum) + 0.5 << 0; + k = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * + (t[e].y[3] - a.axisY.conversionParameters.minimum) + 0.5 << 0; + var s = f - m / 2 << 0, z = s + m << 0, d = t[e].color ? t[e].color : r._colorSet[0], w = Math.round(Math.max(1, 0.15 * m)), x = 0 === w % 2 ? 0 : 0.5, v = r.dataPointIds[e]; + this._eventManager.objectMap[v] = {id: v, objectType: "dataPoint", dataSeriesIndex: p, dataPointIndex: e, x1: s, y1: g, x2: z, y2: h, x3: f, y3: q, x4: f, y4: k, borderThickness: w, color: d}; + c.strokeStyle = d; + c.beginPath(); + c.lineWidth = w; + b.lineWidth = Math.max(w, 4); + "candlestick" === r.type ? (c.moveTo(f - x, h), c.lineTo(f - x, Math.min(g, k)), c.stroke(), c.moveTo(f - + x, Math.max(g, k)), c.lineTo(f - x, q), c.stroke(), M(c, s, Math.min(g, k), z, Math.max(g, k), t[e].y[0] <= t[e].y[3] ? r.risingColor : d, w, d, y, y, !1, !1, r.fillOpacity), u && (d = C(v), b.strokeStyle = d, b.moveTo(f - x, h), b.lineTo(f - x, Math.min(g, k)), b.stroke(), b.moveTo(f - x, Math.max(g, k)), b.lineTo(f - x, q), b.stroke(), M(b, s, Math.min(g, k), z, Math.max(g, k), d, 0, null, !1, !1, !1, !1))) : "ohlc" === r.type && (c.moveTo(f - x, h), c.lineTo(f - x, q), c.stroke(), c.beginPath(), c.moveTo(f, g), c.lineTo(s, g), c.stroke(), c.beginPath(), c.moveTo(f, k), c.lineTo(z, k), c.stroke(), + u && (d = C(v), b.strokeStyle = d, b.moveTo(f - x, h), b.lineTo(f - x, q), b.stroke(), b.beginPath(), b.moveTo(f, g), b.lineTo(s, g), b.stroke(), b.beginPath(), b.moveTo(f, k), b.lineTo(z, k), b.stroke())); + (t[e].indexLabel || r.indexLabel || t[e].indexLabelFormatter || r.indexLabelFormatter) && this._indexLabels.push({chartType: r.type, dataPoint: t[e], dataSeries: r, point: {x: s + (z - s) / 2, y: h}, direction: 1, bounds: {x1: s, y1: Math.min(h, q), x2: z, y2: Math.max(h, q)}, color: d}) + } + } + c.restore(); + u && b.restore(); + return{source: c, dest: this.plotArea.ctx, animationCallback: B.fadeInAnimation, + easingFunction: B.easing.easeInQuad, animationBase: 0} + } + }; + v.prototype.renderRangeColumn = function (a) { + var c = a.targetCanvasCtx || this.plotArea.ctx; + if (!(0 >= a.dataSeriesIndexes.length)) { + var b = null, d = this.plotArea, e = 0, f, g, e = this.dataPointMinWidth ? this.dataPointMinWidth : this.dataPointWidth ? this.dataPointWidth : 1; + f = this.dataPointMaxWidth ? this.dataPointMaxWidth : this.dataPointWidth ? this.dataPointWidth : 0.03 * this.width; + var h = a.axisX.dataInfo.minDiff; + isFinite(h) || (h = 0.3 * Math.abs(a.axisX.viewportMaximum - a.axisX.viewportMinimum)); + h = this.dataPointWidth ? this.dataPointWidth : 0.9 * (d.width / Math.abs(a.axisX.viewportMaximum - a.axisX.viewportMinimum) * Math.abs(h) / a.plotType.totalDataSeries) << 0; + this.dataPointMaxWidth && e > f && (e = Math.min(this.dataPointWidth ? this.dataPointWidth : Infinity, f)); + !this.dataPointMaxWidth && (this.dataPointMinWidth && f < e) && (f = Math.max(this.dataPointWidth ? this.dataPointWidth : -Infinity, e)); + h < e && (h = e); + h > f && (h = f); + c.save(); + u && this._eventManager.ghostCtx.save(); + c.beginPath(); + c.rect(d.x1, d.y1, d.width, d.height); + c.clip(); + u && + (this._eventManager.ghostCtx.rect(d.x1, d.y1, d.width, d.height), this._eventManager.ghostCtx.clip()); + for (var q = 0; q < a.dataSeriesIndexes.length; q++) { + var k = a.dataSeriesIndexes[q], n = this.data[k], m = n.dataPoints; + if (0 < m.length) + for (var l = 5 < h && n.bevelEnabled ? !0 : !1, e = 0; e < m.length; e++) + if (m[e].getTime ? g = m[e].x.getTime() : g = m[e].x, !(g < a.axisX.dataInfo.viewPortMin || g > a.axisX.dataInfo.viewPortMax) && null !== m[e].y && m[e].y.length && "number" === typeof m[e].y[0] && "number" === typeof m[e].y[1]) { + b = a.axisX.conversionParameters.reference + + a.axisX.conversionParameters.pixelPerUnit * (g - a.axisX.conversionParameters.minimum) + 0.5 << 0; + d = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (m[e].y[0] - a.axisY.conversionParameters.minimum) + 0.5 << 0; + f = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (m[e].y[1] - a.axisY.conversionParameters.minimum) + 0.5 << 0; + var p = b - a.plotType.totalDataSeries * h / 2 + (a.previousDataSeriesCount + q) * h << 0, r = p + h << 0, b = m[e].color ? m[e].color : n._colorSet[e % n._colorSet.length]; + if (d > f) { + var t = d, d = f; + f = t + } + t = n.dataPointIds[e]; + this._eventManager.objectMap[t] = {id: t, objectType: "dataPoint", dataSeriesIndex: k, dataPointIndex: e, x1: p, y1: d, x2: r, y2: f}; + M(c, p, d, r, f, b, 0, b, l, l, !1, !1, n.fillOpacity); + b = C(t); + u && M(this._eventManager.ghostCtx, p, d, r, f, b, 0, null, !1, !1, !1, !1); + if (m[e].indexLabel || n.indexLabel || m[e].indexLabelFormatter || n.indexLabelFormatter) + this._indexLabels.push({chartType: "rangeColumn", dataPoint: m[e], dataSeries: n, indexKeyword: 0, point: {x: p + (r - p) / 2, y: m[e].y[1] >= m[e].y[0] ? f : d}, direction: m[e].y[1] >= + m[e].y[0] ? -1 : 1, bounds: {x1: p, y1: Math.min(d, f), x2: r, y2: Math.max(d, f)}, color: b}), this._indexLabels.push({chartType: "rangeColumn", dataPoint: m[e], dataSeries: n, indexKeyword: 1, point: {x: p + (r - p) / 2, y: m[e].y[1] >= m[e].y[0] ? d : f}, direction: m[e].y[1] >= m[e].y[0] ? 1 : -1, bounds: {x1: p, y1: Math.min(d, f), x2: r, y2: Math.max(d, f)}, color: b}) + } + } + c.restore(); + u && this._eventManager.ghostCtx.restore(); + return{source: c, dest: this.plotArea.ctx, animationCallback: B.fadeInAnimation, easingFunction: B.easing.easeInQuad, animationBase: 0} + } + }; + v.prototype.renderRangeBar = + function (a) { + var c = a.targetCanvasCtx || this.plotArea.ctx; + if (!(0 >= a.dataSeriesIndexes.length)) { + var b = null, d = this.plotArea, e = 0, f, g, h, e = this.dataPointMinWidth ? this.dataPointMinWidth : this.dataPointWidth ? this.dataPointWidth : 1; + f = this.dataPointMaxWidth ? this.dataPointMaxWidth : this.dataPointWidth ? this.dataPointWidth : Math.min(0.15 * this.height, 0.9 * (this.plotArea.height / a.plotType.totalDataSeries)) << 0; + var q = a.axisX.dataInfo.minDiff; + isFinite(q) || (q = 0.3 * Math.abs(a.axisX.viewportMaximum - a.axisX.viewportMinimum)); + q = this.dataPointWidth ? this.dataPointWidth : 0.9 * (d.height / Math.abs(a.axisX.viewportMaximum - a.axisX.viewportMinimum) * Math.abs(q) / a.plotType.totalDataSeries) << 0; + this.dataPointMaxWidth && e > f && (e = Math.min(this.dataPointWidth ? this.dataPointWidth : Infinity, f)); + !this.dataPointMaxWidth && (this.dataPointMinWidth && f < e) && (f = Math.max(this.dataPointWidth ? this.dataPointWidth : -Infinity, e)); + q < e && (q = e); + q > f && (q = f); + c.save(); + u && this._eventManager.ghostCtx.save(); + c.beginPath(); + c.rect(d.x1, d.y1, d.width, d.height); + c.clip(); + u && + (this._eventManager.ghostCtx.rect(d.x1, d.y1, d.width, d.height), this._eventManager.ghostCtx.clip()); + for (var k = 0; k < a.dataSeriesIndexes.length; k++) { + var n = a.dataSeriesIndexes[k], m = this.data[n], l = m.dataPoints; + if (0 < l.length) { + var p = 5 < q && m.bevelEnabled ? !0 : !1; + c.strokeStyle = "#4572A7 "; + for (e = 0; e < l.length; e++) + if (l[e].getTime ? h = l[e].x.getTime() : h = l[e].x, !(h < a.axisX.dataInfo.viewPortMin || h > a.axisX.dataInfo.viewPortMax) && null !== l[e].y && l[e].y.length && "number" === typeof l[e].y[0] && "number" === typeof l[e].y[1]) { + d = a.axisY.conversionParameters.reference + + a.axisY.conversionParameters.pixelPerUnit * (l[e].y[0] - a.axisY.conversionParameters.minimum) + 0.5 << 0; + f = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (l[e].y[1] - a.axisY.conversionParameters.minimum) + 0.5 << 0; + g = a.axisX.conversionParameters.reference + a.axisX.conversionParameters.pixelPerUnit * (h - a.axisX.conversionParameters.minimum) + 0.5 << 0; + g = g - a.plotType.totalDataSeries * q / 2 + (a.previousDataSeriesCount + k) * q << 0; + var r = g + q << 0; + d > f && (b = d, d = f, f = b); + b = l[e].color ? l[e].color : m._colorSet[e % + m._colorSet.length]; + M(c, d, g, f, r, b, 0, null, p, !1, !1, !1, m.fillOpacity); + b = m.dataPointIds[e]; + this._eventManager.objectMap[b] = {id: b, objectType: "dataPoint", dataSeriesIndex: n, dataPointIndex: e, x1: d, y1: g, x2: f, y2: r}; + b = C(b); + u && M(this._eventManager.ghostCtx, d, g, f, r, b, 0, null, !1, !1, !1, !1); + if (l[e].indexLabel || m.indexLabel || l[e].indexLabelFormatter || m.indexLabelFormatter) + this._indexLabels.push({chartType: "rangeBar", dataPoint: l[e], dataSeries: m, indexKeyword: 0, point: {x: l[e].y[1] >= l[e].y[0] ? d : f, y: g + (r - g) / 2}, direction: l[e].y[1] >= + l[e].y[0] ? -1 : 1, bounds: {x1: Math.min(d, f), y1: g, x2: Math.max(d, f), y2: r}, color: b}), this._indexLabels.push({chartType: "rangeBar", dataPoint: l[e], dataSeries: m, indexKeyword: 1, point: {x: l[e].y[1] >= l[e].y[0] ? f : d, y: g + (r - g) / 2}, direction: l[e].y[1] >= l[e].y[0] ? 1 : -1, bounds: {x1: Math.min(d, f), y1: g, x2: Math.max(d, f), y2: r}, color: b}) + } + } + } + c.restore(); + u && this._eventManager.ghostCtx.restore(); + return{source: c, dest: this.plotArea.ctx, animationCallback: B.fadeInAnimation, easingFunction: B.easing.easeInQuad, animationBase: 0} + } + }; + v.prototype.renderRangeArea = + function (a) { + function c() { + if (y) { + var a = null; + 0 < q.lineThickness && b.stroke(); + for (var c = g.length - 1; 0 <= c; c--) + a = g[c], b.lineTo(a.x, a.y), d.lineTo(a.x, a.y); + b.closePath(); + b.globalAlpha = q.fillOpacity; + b.fill(); + b.globalAlpha = 1; + d.fill(); + if (0 < q.lineThickness) { + b.beginPath(); + b.moveTo(a.x, a.y); + for (c = 0; c < g.length; c++) + a = g[c], b.lineTo(a.x, a.y); + b.stroke() + } + b.beginPath(); + b.moveTo(l, p); + d.beginPath(); + d.moveTo(l, p); + y = {x: l, y: p}; + g = []; + g.push({x: l, y: r}) + } + } + var b = a.targetCanvasCtx || this.plotArea.ctx; + if (!(0 >= a.dataSeriesIndexes.length)) { + var d = + this._eventManager.ghostCtx, e = [], f = this.plotArea; + b.save(); + u && d.save(); + b.beginPath(); + b.rect(f.x1, f.y1, f.width, f.height); + b.clip(); + u && (d.beginPath(), d.rect(f.x1, f.y1, f.width, f.height), d.clip()); + for (f = 0; f < a.dataSeriesIndexes.length; f++) { + var g = [], h = a.dataSeriesIndexes[f], q = this.data[h], k = q.dataPoints, e = q.id; + this._eventManager.objectMap[e] = {objectType: "dataSeries", dataSeriesIndex: h}; + e = C(e); + d.fillStyle = e; + var e = [], n = !0, m = 0, l, p, r, t, y = null; + if (0 < k.length) { + var s = q._colorSet[m % q._colorSet.length], z = q._options.lineColor || + s, w = z; + b.fillStyle = s; + b.strokeStyle = z; + b.lineWidth = q.lineThickness; + var x = "solid"; + if (b.setLineDash) { + var v = D(q.nullDataLineDashType, q.lineThickness), x = q.lineDashType, A = D(x, q.lineThickness); + b.setLineDash(A) + } + for (var H = !0; m < k.length; m++) + if (t = k[m].x.getTime ? k[m].x.getTime() : k[m].x, !(t < a.axisX.dataInfo.viewPortMin || t > a.axisX.dataInfo.viewPortMax && (!q.connectNullData || !H))) + if (null !== k[m].y && k[m].y.length && "number" === typeof k[m].y[0] && "number" === typeof k[m].y[1]) { + l = a.axisX.conversionParameters.reference + a.axisX.conversionParameters.pixelPerUnit * + (t - a.axisX.conversionParameters.minimum) + 0.5 << 0; + p = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (k[m].y[0] - a.axisY.conversionParameters.minimum) + 0.5 << 0; + r = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (k[m].y[1] - a.axisY.conversionParameters.minimum) + 0.5 << 0; + n || H ? (q.connectNullData && !n ? (b.setLineDash && (q._options.nullDataLineDashType || x === q.lineDashType && q.lineDashType !== q.nullDataLineDashType) && (g[g.length - 1].newLineDashArray = A, x = + q.nullDataLineDashType, b.setLineDash(v)), b.lineTo(l, p), u && d.lineTo(l, p), g.push({x: l, y: r})) : (b.beginPath(), b.moveTo(l, p), y = {x: l, y: p}, g = [], g.push({x: l, y: r}), u && (d.beginPath(), d.moveTo(l, p))), H = n = !1) : (b.lineTo(l, p), g.push({x: l, y: r}), u && d.lineTo(l, p), 0 == m % 250 && c()); + t = q.dataPointIds[m]; + this._eventManager.objectMap[t] = {id: t, objectType: "dataPoint", dataSeriesIndex: h, dataPointIndex: m, x1: l, y1: p, y2: r}; + m < k.length - 1 && (w !== (k[m].lineColor || z) || x !== (k[m].lineDashType || q.lineDashType)) && (c(), w = k[m].lineColor || z, + g[g.length - 1].newStrokeStyle = w, b.strokeStyle = w, b.setLineDash && (k[m].lineDashType ? (x = k[m].lineDashType, g[g.length - 1].newLineDashArray = D(x, q.lineThickness), b.setLineDash(g[g.length - 1].newLineDashArray)) : (x = q.lineDashType, g[g.length - 1].newLineDashArray = A, b.setLineDash(A)))); + if (0 !== k[m].markerSize && (0 < k[m].markerSize || 0 < q.markerSize)) { + var K = q.getMarkerProperties(m, l, r, b); + e.push(K); + var I = C(t); + u && e.push({x: l, y: r, ctx: d, type: K.type, size: K.size, color: I, borderColor: I, borderThickness: K.borderThickness}); + K = q.getMarkerProperties(m, + l, p, b); + e.push(K); + I = C(t); + u && e.push({x: l, y: p, ctx: d, type: K.type, size: K.size, color: I, borderColor: I, borderThickness: K.borderThickness}) + } + if (k[m].indexLabel || q.indexLabel || k[m].indexLabelFormatter || q.indexLabelFormatter) + this._indexLabels.push({chartType: "rangeArea", dataPoint: k[m], dataSeries: q, indexKeyword: 0, point: {x: l, y: p}, direction: k[m].y[0] <= k[m].y[1] ? -1 : 1, color: s}), this._indexLabels.push({chartType: "rangeArea", dataPoint: k[m], dataSeries: q, indexKeyword: 1, point: {x: l, y: r}, direction: k[m].y[0] <= k[m].y[1] ? 1 : + -1, color: s}) + } else + H || n || c(), H = !0; + c(); + P.drawMarkers(e) + } + } + b.restore(); + u && this._eventManager.ghostCtx.restore(); + return{source: b, dest: this.plotArea.ctx, animationCallback: B.xClipAnimation, easingFunction: B.easing.linear, animationBase: 0} + } + }; + v.prototype.renderRangeSplineArea = function (a) { + function c(a, c) { + var e = ma(p, 2); + if (0 < e.length) { + if (0 < h.lineThickness) { + b.strokeStyle = c; + b.setLineDash && b.setLineDash(a); + b.beginPath(); + b.moveTo(e[0].x, e[0].y); + for (var f = 0; f < e.length - 3; f += 3) { + if (e[f].newStrokeStyle || e[f].newLineDashArray) + b.stroke(), + b.beginPath(), b.moveTo(e[f].x, e[f].y), e[f].newStrokeStyle && (b.strokeStyle = e[f].newStrokeStyle), e[f].newLineDashArray && b.setLineDash(e[f].newLineDashArray); + b.bezierCurveTo(e[f + 1].x, e[f + 1].y, e[f + 2].x, e[f + 2].y, e[f + 3].x, e[f + 3].y) + } + b.stroke() + } + b.beginPath(); + b.moveTo(e[0].x, e[0].y); + u && (d.beginPath(), d.moveTo(e[0].x, e[0].y)); + for (f = 0; f < e.length - 3; f += 3) + b.bezierCurveTo(e[f + 1].x, e[f + 1].y, e[f + 2].x, e[f + 2].y, e[f + 3].x, e[f + 3].y), u && d.bezierCurveTo(e[f + 1].x, e[f + 1].y, e[f + 2].x, e[f + 2].y, e[f + 3].x, e[f + 3].y); + e = ma(r, 2); + b.lineTo(r[r.length - + 1].x, r[r.length - 1].y); + for (f = e.length - 1; 2 < f; f -= 3) + b.bezierCurveTo(e[f - 1].x, e[f - 1].y, e[f - 2].x, e[f - 2].y, e[f - 3].x, e[f - 3].y), u && d.bezierCurveTo(e[f - 1].x, e[f - 1].y, e[f - 2].x, e[f - 2].y, e[f - 3].x, e[f - 3].y); + b.closePath(); + b.globalAlpha = h.fillOpacity; + b.fill(); + u && (d.closePath(), d.fill()); + b.globalAlpha = 1; + if (0 < h.lineThickness) { + b.strokeStyle = c; + b.setLineDash && b.setLineDash(a); + b.beginPath(); + b.moveTo(e[0].x, e[0].y); + for (var g = f = 0; f < e.length - 3; f += 3, g++) { + if (p[g].newStrokeStyle || p[g].newLineDashArray) + b.stroke(), b.beginPath(), + b.moveTo(e[f].x, e[f].y), p[g].newStrokeStyle && (b.strokeStyle = p[g].newStrokeStyle), p[g].newLineDashArray && b.setLineDash(p[g].newLineDashArray); + b.bezierCurveTo(e[f + 1].x, e[f + 1].y, e[f + 2].x, e[f + 2].y, e[f + 3].x, e[f + 3].y) + } + b.stroke() + } + b.beginPath() + } + } + var b = a.targetCanvasCtx || this.plotArea.ctx; + if (!(0 >= a.dataSeriesIndexes.length)) { + var d = this._eventManager.ghostCtx, e = [], f = this.plotArea; + b.save(); + u && d.save(); + b.beginPath(); + b.rect(f.x1, f.y1, f.width, f.height); + b.clip(); + u && (d.beginPath(), d.rect(f.x1, f.y1, f.width, f.height), + d.clip()); + for (f = 0; f < a.dataSeriesIndexes.length; f++) { + var g = a.dataSeriesIndexes[f], h = this.data[g], q = h.dataPoints, e = h.id; + this._eventManager.objectMap[e] = {objectType: "dataSeries", dataSeriesIndex: g}; + e = C(e); + d.fillStyle = e; + var e = [], k = 0, n, m, l, p = [], r = []; + if (0 < q.length) { + var t = h._colorSet[k % h._colorSet.length], y = h._options.lineColor || t, s = y; + b.fillStyle = t; + b.lineWidth = h.lineThickness; + var z = "solid", w; + if (b.setLineDash) { + var x = D(h.nullDataLineDashType, h.lineThickness), z = h.lineDashType; + w = D(z, h.lineThickness) + } + for (m = !1; k < + q.length; k++) + if (n = q[k].x.getTime ? q[k].x.getTime() : q[k].x, !(n < a.axisX.dataInfo.viewPortMin || n > a.axisX.dataInfo.viewPortMax && (!h.connectNullData || !m))) + if (null !== q[k].y && q[k].y.length && "number" === typeof q[k].y[0] && "number" === typeof q[k].y[1]) { + n = a.axisX.conversionParameters.reference + a.axisX.conversionParameters.pixelPerUnit * (n - a.axisX.conversionParameters.minimum) + 0.5 << 0; + m = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (q[k].y[0] - a.axisY.conversionParameters.minimum) + + 0.5 << 0; + l = a.axisY.conversionParameters.reference + a.axisY.conversionParameters.pixelPerUnit * (q[k].y[1] - a.axisY.conversionParameters.minimum) + 0.5 << 0; + var v = h.dataPointIds[k]; + this._eventManager.objectMap[v] = {id: v, objectType: "dataPoint", dataSeriesIndex: g, dataPointIndex: k, x1: n, y1: m, y2: l}; + p[p.length] = {x: n, y: m}; + r[r.length] = {x: n, y: l}; + k < q.length - 1 && (s !== (q[k].lineColor || y) || z !== (q[k].lineDashType || h.lineDashType)) && (s = q[k].lineColor || y, p[p.length - 1].newStrokeStyle = s, b.setLineDash && (q[k].lineDashType ? (z = q[k].lineDashType, + p[p.length - 1].newLineDashArray = D(z, h.lineThickness)) : (z = h.lineDashType, p[p.length - 1].newLineDashArray = w))); + if (0 !== q[k].markerSize && (0 < q[k].markerSize || 0 < h.markerSize)) { + var A = h.getMarkerProperties(k, n, m, b); + e.push(A); + var H = C(v); + u && e.push({x: n, y: m, ctx: d, type: A.type, size: A.size, color: H, borderColor: H, borderThickness: A.borderThickness}); + A = h.getMarkerProperties(k, n, l, b); + e.push(A); + H = C(v); + u && e.push({x: n, y: l, ctx: d, type: A.type, size: A.size, color: H, borderColor: H, borderThickness: A.borderThickness}) + } + if (q[k].indexLabel || + h.indexLabel || q[k].indexLabelFormatter || h.indexLabelFormatter) + this._indexLabels.push({chartType: "splineArea", dataPoint: q[k], dataSeries: h, indexKeyword: 0, point: {x: n, y: m}, direction: q[k].y[0] <= q[k].y[1] ? -1 : 1, color: t}), this._indexLabels.push({chartType: "splineArea", dataPoint: q[k], dataSeries: h, indexKeyword: 1, point: {x: n, y: l}, direction: q[k].y[0] <= q[k].y[1] ? 1 : -1, color: t}); + m = !1 + } else + 0 < k && !m && (h.connectNullData ? b.setLineDash && (0 < p.length && (h._options.nullDataLineDashType || !q[k - 1].lineDashType)) && (p[p.length - + 1].newLineDashArray = x, z = h.nullDataLineDashType) : (c(w, y), p = [], r = [])), m = !0; + c(w, y); + P.drawMarkers(e) + } + } + b.restore(); + u && this._eventManager.ghostCtx.restore(); + return{source: b, dest: this.plotArea.ctx, animationCallback: B.xClipAnimation, easingFunction: B.easing.linear, animationBase: 0} + } + }; + var ya = function (a, c, b, d, e, f, g, h, q) { + if (!(0 > b)) { + "undefined" === typeof h && (h = 1); + if (!u) { + var k = Number((g % (2 * Math.PI)).toFixed(8)); + Number((f % (2 * Math.PI)).toFixed(8)) === k && (g -= 1E-4) + } + a.save(); + a.globalAlpha = h; + "pie" === e ? (a.beginPath(), a.moveTo(c.x, + c.y), a.arc(c.x, c.y, b, f, g, !1), a.fillStyle = d, a.strokeStyle = "white", a.lineWidth = 2, a.closePath(), a.fill()) : "doughnut" === e && (a.beginPath(), a.arc(c.x, c.y, b, f, g, !1), 0 <= q && a.arc(c.x, c.y, q * b, g, f, !0), a.closePath(), a.fillStyle = d, a.strokeStyle = "white", a.lineWidth = 2, a.fill()); + a.globalAlpha = 1; + a.restore() + } + }; + v.prototype.renderPie = function (a) { + function c() { + if (k && n) { + for (var a = 0, b = 0, c = 0, d = 0, e = 0; e < n.length; e++) { + var f = n[e], g = k.dataPointIds[e], h = {id: g, objectType: "dataPoint", dataPointIndex: e, dataSeriesIndex: 0}; + p.push(h); + var m = {percent: null, total: null}, r = null, m = q.getPercentAndTotal(k, f); + if (k.indexLabelFormatter || f.indexLabelFormatter) + r = {chart: q._options, dataSeries: k, dataPoint: f, total: m.total, percent: m.percent}; + m = f.indexLabelFormatter ? f.indexLabelFormatter(r) : f.indexLabel ? q.replaceKeywordsWithValue(f.indexLabel, f, k, e) : k.indexLabelFormatter ? k.indexLabelFormatter(r) : k.indexLabel ? q.replaceKeywordsWithValue(k.indexLabel, f, k, e) : f.label ? f.label : ""; + q._eventManager.objectMap[g] = h; + h.center = {x: w.x, y: w.y}; + h.y = f.y; + h.radius = A; + h.percentInnerRadius = K; + h.indexLabelText = m; + h.indexLabelPlacement = k.indexLabelPlacement; + h.indexLabelLineColor = f.indexLabelLineColor ? f.indexLabelLineColor : k.indexLabelLineColor ? k.indexLabelLineColor : f.color ? f.color : k._colorSet[e % k._colorSet.length]; + h.indexLabelLineThickness = x(f.indexLabelLineThickness) ? k.indexLabelLineThickness : f.indexLabelLineThickness; + h.indexLabelLineDashType = f.indexLabelLineDashType ? f.indexLabelLineDashType : k.indexLabelLineDashType; + h.indexLabelFontColor = f.indexLabelFontColor ? f.indexLabelFontColor : + k.indexLabelFontColor; + h.indexLabelFontStyle = f.indexLabelFontStyle ? f.indexLabelFontStyle : k.indexLabelFontStyle; + h.indexLabelFontWeight = f.indexLabelFontWeight ? f.indexLabelFontWeight : k.indexLabelFontWeight; + h.indexLabelFontSize = f.indexLabelFontSize ? f.indexLabelFontSize : k.indexLabelFontSize; + h.indexLabelFontFamily = f.indexLabelFontFamily ? f.indexLabelFontFamily : k.indexLabelFontFamily; + h.indexLabelBackgroundColor = f.indexLabelBackgroundColor ? f.indexLabelBackgroundColor : k.indexLabelBackgroundColor ? k.indexLabelBackgroundColor : + null; + h.indexLabelMaxWidth = f.indexLabelMaxWidth ? f.indexLabelMaxWidth : k.indexLabelMaxWidth ? k.indexLabelMaxWidth : 0.33 * l.width; + h.indexLabelWrap = "undefined" !== typeof f.indexLabelWrap ? f.indexLabelWrap : k.indexLabelWrap; + h.startAngle = 0 === e ? k.startAngle ? k.startAngle / 180 * Math.PI : 0 : p[e - 1].endAngle; + h.startAngle = (h.startAngle + 2 * Math.PI) % (2 * Math.PI); + h.endAngle = h.startAngle + 2 * Math.PI / v * Math.abs(f.y); + f = (h.endAngle + h.startAngle) / 2; + f = (f + 2 * Math.PI) % (2 * Math.PI); + h.midAngle = f; + if (h.midAngle > Math.PI / 2 - s && h.midAngle < Math.PI / + 2 + s) { + if (0 === a || p[c].midAngle > h.midAngle) + c = e; + a++ + } else if (h.midAngle > 3 * Math.PI / 2 - s && h.midAngle < 3 * Math.PI / 2 + s) { + if (0 === b || p[d].midAngle > h.midAngle) + d = e; + b++ + } + h.hemisphere = f > Math.PI / 2 && f <= 3 * Math.PI / 2 ? "left" : "right"; + h.indexLabelTextBlock = new O(q.plotArea.ctx, {fontSize: h.indexLabelFontSize, fontFamily: h.indexLabelFontFamily, fontColor: h.indexLabelFontColor, fontStyle: h.indexLabelFontStyle, fontWeight: h.indexLabelFontWeight, horizontalAlign: "left", backgroundColor: h.indexLabelBackgroundColor, maxWidth: h.indexLabelMaxWidth, + maxHeight: h.indexLabelWrap ? 5 * h.indexLabelFontSize : 1.5 * h.indexLabelFontSize, text: h.indexLabelText, padding: 0, textBaseline: "top"}); + h.indexLabelTextBlock.measureText() + } + g = f = 0; + m = !1; + for (e = 0; e < n.length; e++) + h = p[(c + e) % n.length], 1 < a && (h.midAngle > Math.PI / 2 - s && h.midAngle < Math.PI / 2 + s) && (f <= a / 2 && !m ? (h.hemisphere = "right", f++) : (h.hemisphere = "left", m = !0)); + m = !1; + for (e = 0; e < n.length; e++) + h = p[(d + e) % n.length], 1 < b && (h.midAngle > 3 * Math.PI / 2 - s && h.midAngle < 3 * Math.PI / 2 + s) && (g <= b / 2 && !m ? (h.hemisphere = "left", g++) : (h.hemisphere = "right", + m = !0)) + } + } + function b(a) { + var b = q.plotArea.ctx; + b.clearRect(l.x1, l.y1, l.width, l.height); + b.fillStyle = q.backgroundColor; + b.fillRect(l.x1, l.y1, l.width, l.height); + for (b = 0; b < n.length; b++) { + var c = p[b].startAngle, d = p[b].endAngle; + if (d > c) { + var e = 0.07 * A * Math.cos(p[b].midAngle), f = 0.07 * A * Math.sin(p[b].midAngle), g = !1; + if (n[b].exploded) { + if (1E-9 < Math.abs(p[b].center.x - (w.x + e)) || 1E-9 < Math.abs(p[b].center.y - (w.y + f))) + p[b].center.x = w.x + e * a, p[b].center.y = w.y + f * a, g = !0 + } else if (0 < Math.abs(p[b].center.x - w.x) || 0 < Math.abs(p[b].center.y - + w.y)) + p[b].center.x = w.x + e * (1 - a), p[b].center.y = w.y + f * (1 - a), g = !0; + g && (e = {}, e.dataSeries = k, e.dataPoint = k.dataPoints[b], e.index = b, q._toolTip.highlightObjects([e])); + ya(q.plotArea.ctx, p[b].center, p[b].radius, n[b].color ? n[b].color : k._colorSet[b % k._colorSet.length], k.type, c, d, k.fillOpacity, p[b].percentInnerRadius) + } + } + a = q.plotArea.ctx; + a.save(); + a.fillStyle = "black"; + a.strokeStyle = "grey"; + a.textBaseline = "middle"; + a.lineJoin = "round"; + for (b = b = 0; b < n.length; b++) + c = p[b], c.indexLabelText && (c.indexLabelTextBlock.y -= c.indexLabelTextBlock.height / + 2, d = 0, d = "left" === c.hemisphere ? "inside" !== k.indexLabelPlacement ? -(c.indexLabelTextBlock.width + m) : -c.indexLabelTextBlock.width / 2 : "inside" !== k.indexLabelPlacement ? m : -c.indexLabelTextBlock.width / 2, c.indexLabelTextBlock.x += d, c.indexLabelTextBlock.render(!0), c.indexLabelTextBlock.x -= d, c.indexLabelTextBlock.y += c.indexLabelTextBlock.height / 2, "inside" !== c.indexLabelPlacement && 0 < c.indexLabelLineThickness && (d = c.center.x + A * Math.cos(c.midAngle), e = c.center.y + A * Math.sin(c.midAngle), a.strokeStyle = c.indexLabelLineColor, + a.lineWidth = c.indexLabelLineThickness, a.setLineDash && a.setLineDash(D(c.indexLabelLineDashType, c.indexLabelLineThickness)), a.beginPath(), a.moveTo(d, e), a.lineTo(c.indexLabelTextBlock.x, c.indexLabelTextBlock.y), a.lineTo(c.indexLabelTextBlock.x + ("left" === c.hemisphere ? -m : m), c.indexLabelTextBlock.y), a.stroke()), a.lineJoin = "miter"); + a.save() + } + function d(a, b) { + var c = 0, c = a.indexLabelTextBlock.y - a.indexLabelTextBlock.height / 2, d = a.indexLabelTextBlock.y + a.indexLabelTextBlock.height / 2, e = b.indexLabelTextBlock.y - b.indexLabelTextBlock.height / + 2, f = b.indexLabelTextBlock.y + b.indexLabelTextBlock.height / 2; + return c = b.indexLabelTextBlock.y > a.indexLabelTextBlock.y ? e - d : c - f + } + function e(a) { + for (var b = null, c = 1; c < n.length; c++) + if (b = (a + c + p.length) % p.length, p[b].hemisphere !== p[a].hemisphere) { + b = null; + break + } else if (p[b].indexLabelText && b !== a && (0 > d(p[b], p[a]) || ("right" === p[a].hemisphere ? p[b].indexLabelTextBlock.y >= p[a].indexLabelTextBlock.y : p[b].indexLabelTextBlock.y <= p[a].indexLabelTextBlock.y))) + break; + else + b = null; + return b + } + function f(a, b, c) { + c = (c || 0) + 1; + if (1E3 < + c) + return 0; + b = b || 0; + var g = 0, k = w.y - 1 * t, h = w.y + 1 * t; + if (0 <= a && a < n.length) { + var l = p[a]; + if (0 > b && l.indexLabelTextBlock.y < k || 0 < b && l.indexLabelTextBlock.y > h) + return 0; + var m = 0, q = 0, q = m = m = 0; + 0 > b ? l.indexLabelTextBlock.y - l.indexLabelTextBlock.height / 2 > k && l.indexLabelTextBlock.y - l.indexLabelTextBlock.height / 2 + b < k && (b = -(k - (l.indexLabelTextBlock.y - l.indexLabelTextBlock.height / 2 + b))) : l.indexLabelTextBlock.y + l.indexLabelTextBlock.height / 2 < k && l.indexLabelTextBlock.y + l.indexLabelTextBlock.height / 2 + b > h && (b = l.indexLabelTextBlock.y + + l.indexLabelTextBlock.height / 2 + b - h); + b = l.indexLabelTextBlock.y + b; + k = 0; + k = "right" === l.hemisphere ? w.x + Math.sqrt(Math.pow(t, 2) - Math.pow(b - w.y, 2)) : w.x - Math.sqrt(Math.pow(t, 2) - Math.pow(b - w.y, 2)); + q = w.x + A * Math.cos(l.midAngle); + m = w.y + A * Math.sin(l.midAngle); + m = Math.sqrt(Math.pow(k - q, 2) + Math.pow(b - m, 2)); + q = Math.acos(A / t); + m = Math.acos((t * t + A * A - m * m) / (2 * A * t)); + b = m < q ? b - l.indexLabelTextBlock.y : 0; + k = null; + for (h = 1; h < n.length; h++) + if (k = (a - h + p.length) % p.length, p[k].hemisphere !== p[a].hemisphere) { + k = null; + break + } else if (p[k].indexLabelText && + p[k].hemisphere === p[a].hemisphere && k !== a && (0 > d(p[k], p[a]) || ("right" === p[a].hemisphere ? p[k].indexLabelTextBlock.y <= p[a].indexLabelTextBlock.y : p[k].indexLabelTextBlock.y >= p[a].indexLabelTextBlock.y))) + break; + else + k = null; + q = k; + m = e(a); + h = k = 0; + 0 > b ? (h = "right" === l.hemisphere ? q : m, g = b, null !== h && (q = -b, b = l.indexLabelTextBlock.y - l.indexLabelTextBlock.height / 2 - (p[h].indexLabelTextBlock.y + p[h].indexLabelTextBlock.height / 2), b - q < r && (k = -q, h = f(h, k, c + 1), +h.toFixed(u) > +k.toFixed(u) && (g = b > r ? -(b - r) : -(q - (h - k)))))) : 0 < b && (h = "right" === + l.hemisphere ? m : q, g = b, null !== h && (q = b, b = p[h].indexLabelTextBlock.y - p[h].indexLabelTextBlock.height / 2 - (l.indexLabelTextBlock.y + l.indexLabelTextBlock.height / 2), b - q < r && (k = q, h = f(h, k, c + 1), +h.toFixed(u) < +k.toFixed(u) && (g = b > r ? b - r : q - (k - h))))); + g && (c = l.indexLabelTextBlock.y + g, b = 0, b = "right" === l.hemisphere ? w.x + Math.sqrt(Math.pow(t, 2) - Math.pow(c - w.y, 2)) : w.x - Math.sqrt(Math.pow(t, 2) - Math.pow(c - w.y, 2)), l.midAngle > Math.PI / 2 - s && l.midAngle < Math.PI / 2 + s ? (k = (a - 1 + p.length) % p.length, k = p[k], a = p[(a + 1 + p.length) % p.length], "left" === + l.hemisphere && "right" === k.hemisphere && b > k.indexLabelTextBlock.x ? b = k.indexLabelTextBlock.x - 15 : "right" === l.hemisphere && ("left" === a.hemisphere && b < a.indexLabelTextBlock.x) && (b = a.indexLabelTextBlock.x + 15)) : l.midAngle > 3 * Math.PI / 2 - s && l.midAngle < 3 * Math.PI / 2 + s && (k = (a - 1 + p.length) % p.length, k = p[k], a = p[(a + 1 + p.length) % p.length], "right" === l.hemisphere && "left" === k.hemisphere && b < k.indexLabelTextBlock.x ? b = k.indexLabelTextBlock.x + 15 : "left" === l.hemisphere && ("right" === a.hemisphere && b > a.indexLabelTextBlock.x) && (b = a.indexLabelTextBlock.x - + 15)), l.indexLabelTextBlock.y = c, l.indexLabelTextBlock.x = b, l.indexLabelAngle = Math.atan2(l.indexLabelTextBlock.y - w.y, l.indexLabelTextBlock.x - w.x)) + } + return g + } + function g() { + var a = q.plotArea.ctx; + a.fillStyle = "grey"; + a.strokeStyle = "grey"; + a.font = "16px Arial"; + a.textBaseline = "middle"; + for (var b = a = 0, c = 0, g = !0, b = 0; 10 > b && (1 > b || 0 < c); b++) { + if (k.radius || !k.radius && "undefined" !== typeof k.innerRadius && null !== k.innerRadius && A - c <= H) + g = !1; + g && (A -= c); + c = 0; + if ("inside" !== k.indexLabelPlacement) { + t = A * y; + for (a = 0; a < n.length; a++) { + var h = + p[a]; + h.indexLabelTextBlock.x = w.x + t * Math.cos(h.midAngle); + h.indexLabelTextBlock.y = w.y + t * Math.sin(h.midAngle); + h.indexLabelAngle = h.midAngle; + h.radius = A; + h.percentInnerRadius = K + } + for (var s, x, a = 0; a < n.length; a++) { + var h = p[a], v = e(a); + if (null !== v) { + s = p[a]; + x = p[v]; + var B = 0, B = d(s, x) - r; + if (0 > B) { + for (var C = x = 0, D = 0; D < n.length; D++) + D !== a && p[D].hemisphere === h.hemisphere && (p[D].indexLabelTextBlock.y < h.indexLabelTextBlock.y ? x++ : C++); + x = B / (x + C || 1) * C; + var C = -1 * (B - x), E = D = 0; + "right" === h.hemisphere ? (D = f(a, x), C = -1 * (B - D), E = f(v, C), +E.toFixed(u) < + +C.toFixed(u) && +D.toFixed(u) <= +x.toFixed(u) && f(a, -(C - E))) : (D = f(v, x), C = -1 * (B - D), E = f(a, C), +E.toFixed(u) < +C.toFixed(u) && +D.toFixed(u) <= +x.toFixed(u) && f(v, -(C - E))) + } + } + } + } else + for (a = 0; a < n.length; a++) + h = p[a], t = "pie" === k.type ? 0.7 * A : 0.8 * A, v = w.x + t * Math.cos(h.midAngle), x = w.y + t * Math.sin(h.midAngle), h.indexLabelTextBlock.x = v, h.indexLabelTextBlock.y = x; + for (a = 0; a < n.length; a++) + if (h = p[a], v = h.indexLabelTextBlock.measureText(), 0 !== v.height && 0 !== v.width) + v = v = 0, "right" === h.hemisphere ? (v = l.x2 - (h.indexLabelTextBlock.x + h.indexLabelTextBlock.width + + m), v *= -1) : v = l.x1 - (h.indexLabelTextBlock.x - h.indexLabelTextBlock.width - m), 0 < v && (!g && h.indexLabelText && (x = "right" === h.hemisphere ? l.x2 - h.indexLabelTextBlock.x : h.indexLabelTextBlock.x - l.x1, 0.3 * h.indexLabelTextBlock.maxWidth > x ? h.indexLabelText = "" : h.indexLabelTextBlock.maxWidth = 0.85 * x, 0.3 * h.indexLabelTextBlock.maxWidth < x && (h.indexLabelTextBlock.x -= "right" === h.hemisphere ? 2 : -2)), Math.abs(h.indexLabelTextBlock.y - h.indexLabelTextBlock.height / 2 - w.y) < A || Math.abs(h.indexLabelTextBlock.y + h.indexLabelTextBlock.height / + 2 - w.y) < A) && (v /= Math.abs(Math.cos(h.indexLabelAngle)), 9 < v && (v *= 0.3), v > c && (c = v)), v = v = 0, 0 < h.indexLabelAngle && h.indexLabelAngle < Math.PI ? (v = l.y2 - (h.indexLabelTextBlock.y + h.indexLabelTextBlock.height / 2 + 5), v *= -1) : v = l.y1 - (h.indexLabelTextBlock.y - h.indexLabelTextBlock.height / 2 - 5), 0 < v && (!g && h.indexLabelText && (x = 0 < h.indexLabelAngle && h.indexLabelAngle < Math.PI ? -1 : 1, 0 === f(a, v * x) && f(a, 2 * x)), Math.abs(h.indexLabelTextBlock.x - w.x) < A && (v /= Math.abs(Math.sin(h.indexLabelAngle)), 9 < v && (v *= 0.3), v > c && (c = v))); + var F = function (a, + b, c) { + for (var d = [], e = 0; d.push(p[b]), b !== c; b = (b + 1 + n.length) % n.length) + ; + d.sort(function (a, b) { + return a.y - b.y + }); + for (b = 0; b < d.length; b++) + if (c = d[b], e < 0.7 * a) + e += c.indexLabelTextBlock.height, c.indexLabelTextBlock.text = "", c.indexLabelText = "", c.indexLabelTextBlock.measureText(); + else + break + }; + (function () { + for (var a = -1, b = -1, c = 0, f = !1, g = 0; g < n.length; g++) + if (f = !1, s = p[g], s.indexLabelText) { + var h = e(g); + if (null !== h) { + var k = p[h]; + B = 0; + B = d(s, k); + var l; + if (l = 0 > B) { + l = s.indexLabelTextBlock.x; + var q = s.indexLabelTextBlock.y - s.indexLabelTextBlock.height / + 2, r = s.indexLabelTextBlock.y + s.indexLabelTextBlock.height / 2, t = k.indexLabelTextBlock.y - k.indexLabelTextBlock.height / 2, u = k.indexLabelTextBlock.x + k.indexLabelTextBlock.width, y = k.indexLabelTextBlock.y + k.indexLabelTextBlock.height / 2; + l = s.indexLabelTextBlock.x + s.indexLabelTextBlock.width < k.indexLabelTextBlock.x - m || l > u + m || q > y + m || r < t - m ? !1 : !0 + } + l ? (0 > a && (a = g), h !== a && (b = h, c += -B), 0 === g % Math.max(n.length / 10, 3) && (f = !0)) : f = !0; + f && (0 < c && 0 <= a && 0 <= b) && (F(c, a, b), b = a = -1, c = 0) + } + } + 0 < c && F(c, a, b) + })() + } + } + function h() { + q.plotArea.layoutManager.reset(); + q._title && (q._title.dockInsidePlotArea || "center" === q._title.horizontalAlign && "center" === q._title.verticalAlign) && q._title.render(); + if (q.subtitles) + for (var a = 0; a < q.subtitles.length; a++) { + var b = q.subtitles[a]; + (b.dockInsidePlotArea || "center" === b.horizontalAlign && "center" === b.verticalAlign) && b.render() + } + q.legend && (q.legend.dockInsidePlotArea || "center" === q.legend.horizontalAlign && "center" === q.legend.verticalAlign) && q.legend.render() + } + var q = this; + if (!(0 >= a.dataSeriesIndexes.length)) { + var k = this.data[a.dataSeriesIndexes[0]], + n = k.dataPoints, m = 10, l = this.plotArea, p = [], r = 2, t, y = 1.3, s = 20 / 180 * Math.PI, u = 6, w = {x: (l.x2 + l.x1) / 2, y: (l.y2 + l.y1) / 2}, v = 0; + a = !1; + for (var B = 0; B < n.length; B++) + v += Math.abs(n[B].y), !a && ("undefined" !== typeof n[B].indexLabel && null !== n[B].indexLabel && 0 < n[B].indexLabel.toString().length) && (a = !0), !a && ("undefined" !== typeof n[B].label && null !== n[B].label && 0 < n[B].label.toString().length) && (a = !0); + if (0 !== v) { + a = a || "undefined" !== typeof k.indexLabel && null !== k.indexLabel && 0 < k.indexLabel.toString().length; + var A = "inside" !== k.indexLabelPlacement && + a ? 0.75 * Math.min(l.width, l.height) / 2 : 0.92 * Math.min(l.width, l.height) / 2; + k.radius && (A = Ha(k.radius, A)); + var H = "undefined" !== typeof k.innerRadius && null !== k.innerRadius ? Ha(k.innerRadius, A) : 0.7 * A, K = Math.min(H / A, (A - 1) / A); + this.pieDoughnutClickHandler = function (a) { + q.isAnimating || !x(a.dataSeries.explodeOnClick) && !a.dataSeries.explodeOnClick || (a = a.dataPoint, a.exploded = a.exploded ? !1 : !0, 1 < this.dataPoints.length && q._animator.animate(0, 500, function (a) { + b(a); + h() + })) + }; + c(); + g(); + g(); + g(); + g(); + this.disableToolTip = !0; + this._animator.animate(0, + this.animatedRender ? this.animationDuration : 0, function (a) { + var b = q.plotArea.ctx; + b.clearRect(l.x1, l.y1, l.width, l.height); + b.fillStyle = q.backgroundColor; + b.fillRect(l.x1, l.y1, l.width, l.height); + a = p[0].startAngle + 2 * Math.PI * a; + for (b = 0; b < n.length; b++) { + var c = 0 === b ? p[b].startAngle : d, d = c + (p[b].endAngle - p[b].startAngle), e = !1; + d > a && (d = a, e = !0); + var f = n[b].color ? n[b].color : k._colorSet[b % k._colorSet.length]; + d > c && ya(q.plotArea.ctx, p[b].center, p[b].radius, f, k.type, c, d, k.fillOpacity, p[b].percentInnerRadius); + if (e) + break + } + h() + }, + function () { + q.disableToolTip = !1; + q._animator.animate(0, q.animatedRender ? 500 : 0, function (a) { + b(a); + h() + }) + }) + } + } + }; + v.prototype.animationRequestId = null; + v.prototype.requestAnimFrame = function () { + return window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame || function (a) { + window.setTimeout(a, 1E3 / 60) + } + }(); + v.prototype.cancelRequestAnimFrame = window.cancelAnimationFrame || window.webkitCancelRequestAnimationFrame || window.mozCancelRequestAnimationFrame || + window.oCancelRequestAnimationFrame || window.msCancelRequestAnimationFrame || clearTimeout; + da.prototype.registerSpace = function (a, c) { + "top" === a ? this._topOccupied += c.height : "bottom" === a ? this._bottomOccupied += c.height : "left" === a ? this._leftOccupied += c.width : "right" === a && (this._rightOccupied += c.width) + }; + da.prototype.unRegisterSpace = function (a, c) { + "top" === a ? this._topOccupied -= c.height : "bottom" === a ? this._bottomOccupied -= c.height : "left" === a ? this._leftOccupied -= c.width : "right" === a && (this._rightOccupied -= c.width) + }; + da.prototype.getFreeSpace = function () { + return{x1: this._x1 + this._leftOccupied, y1: this._y1 + this._topOccupied, x2: this._x2 - this._rightOccupied, y2: this._y2 - this._bottomOccupied, width: this._x2 - this._x1 - this._rightOccupied - this._leftOccupied, height: this._y2 - this._y1 - this._bottomOccupied - this._topOccupied} + }; + da.prototype.reset = function () { + this._rightOccupied = this._leftOccupied = this._bottomOccupied = this._topOccupied = this._padding + }; + T(O, L); + O.prototype.render = function (a) { + a && this.ctx.save(); + var c = this.ctx.font; + this.ctx.textBaseline = + this.textBaseline; + var b = 0; + this._isDirty && this.measureText(this.ctx); + this.ctx.translate(this.x, this.y + b); + "middle" === this.textBaseline && (b = -this._lineHeight / 2); + this.ctx.font = this._getFontString(); + this.ctx.rotate(Math.PI / 180 * this.angle); + var d = 0, e = this.padding, f = null; + (0 < this.borderThickness && this.borderColor || this.backgroundColor) && this.ctx.roundRect(0, b, this.width, this.height, this.cornerRadius, this.borderThickness, this.backgroundColor, this.borderColor); + this.ctx.fillStyle = this.fontColor; + for (b = 0; b < this._wrappedText.lines.length; b++) + f = + this._wrappedText.lines[b], "right" === this.horizontalAlign ? d = this.width - f.width - this.padding : "left" === this.horizontalAlign ? d = this.padding : "center" === this.horizontalAlign && (d = (this.width - 2 * this.padding) / 2 - f.width / 2 + this.padding), this.ctx.fillText(f.text, d, e), e += f.height; + this.ctx.font = c; + a && this.ctx.restore() + }; + O.prototype.setText = function (a) { + this.text = a; + this._isDirty = !0; + this._wrappedText = null + }; + O.prototype.measureText = function () { + if (null === this.maxWidth) + throw"Please set maxWidth and height for TextBlock"; + this._wrapText(this.ctx); + this._isDirty = !1; + return{width: this.width, height: this.height} + }; + O.prototype._getLineWithWidth = function (a, c, b) { + a = String(a); + if (!a) + return{text: "", width: 0}; + var d = b = 0, e = a.length - 1, f = Infinity; + for (this.ctx.font = this._getFontString(); d <= e; ) { + var f = Math.floor((d + e) / 2), g = a.substr(0, f + 1); + b = this.ctx.measureText(g).width; + if (b < c) + d = f + 1; + else if (b > c) + e = f - 1; + else + break + } + b > c && 1 < g.length && (g = g.substr(0, g.length - 1), b = this.ctx.measureText(g).width); + c = !0; + if (g.length === a.length || " " === a[g.length]) + c = !1; + c && (a = g.split(" "), 1 < a.length && a.pop(), g = a.join(" "), b = this.ctx.measureText(g).width); + return{text: g, width: b} + }; + O.prototype._wrapText = function () { + var a = new String(ea(String(this.text))), c = [], b = this.ctx.font, d = 0, e = 0; + for (this.ctx.font = this._getFontString(); 0 < a.length; ) { + var f = this.maxHeight - 2 * this.padding, g = this._getLineWithWidth(a, this.maxWidth - 2 * this.padding, !1); + g.height = this._lineHeight; + c.push(g); + e = Math.max(e, g.width); + d += g.height; + a = ea(a.slice(g.text.length, a.length)); + f && d > f && (g = c.pop(), d -= g.height) + } + this._wrappedText = + {lines: c, width: e, height: d}; + this.width = e + 2 * this.padding; + this.height = d + 2 * this.padding; + this.ctx.font = b + }; + O.prototype._getFontString = function () { + var a; + a = "" + (this.fontStyle ? this.fontStyle + " " : ""); + a += this.fontWeight ? this.fontWeight + " " : ""; + a += this.fontSize ? this.fontSize + "px " : ""; + var c = this.fontFamily ? this.fontFamily + "" : ""; + !u && c && (c = c.split(",")[0], "'" !== c[0] && '"' !== c[0] && (c = "'" + c + "'")); + return a += c + }; + T(ga, L); + ga.prototype.render = function () { + if (this.text) { + var a = this.dockInsidePlotArea ? this.chart.plotArea : this.chart, + c = a.layoutManager.getFreeSpace(), b = c.x1, d = c.y1, e = 0, f = 0, g = this.chart._menuButton && this.chart.exportEnabled && "top" === this.verticalAlign ? 22 : 0, h, q; + "top" === this.verticalAlign || "bottom" === this.verticalAlign ? (null === this.maxWidth && (this.maxWidth = c.width - 4 - g * ("center" === this.horizontalAlign ? 2 : 1)), f = 0.5 * c.height - this.margin - 2, e = 0) : "center" === this.verticalAlign && ("left" === this.horizontalAlign || "right" === this.horizontalAlign ? (null === this.maxWidth && (this.maxWidth = c.height - 4), f = 0.5 * c.width - this.margin - 2) : "center" === + this.horizontalAlign && (null === this.maxWidth && (this.maxWidth = c.width - 4), f = 0.5 * c.height - 4)); + this.wrap || (f = Math.min(f, Math.max(1.5 * this.fontSize, this.fontSize + 2.5 * this.padding))); + var f = new O(this.ctx, {fontSize: this.fontSize, fontFamily: this.fontFamily, fontColor: this.fontColor, fontStyle: this.fontStyle, fontWeight: this.fontWeight, horizontalAlign: this.horizontalAlign, verticalAlign: this.verticalAlign, borderColor: this.borderColor, borderThickness: this.borderThickness, backgroundColor: this.backgroundColor, maxWidth: this.maxWidth, + maxHeight: f, cornerRadius: this.cornerRadius, text: this.text, padding: this.padding, textBaseline: "top"}), k = f.measureText(); + "top" === this.verticalAlign || "bottom" === this.verticalAlign ? ("top" === this.verticalAlign ? (d = c.y1 + 2, q = "top") : "bottom" === this.verticalAlign && (d = c.y2 - 2 - k.height, q = "bottom"), "left" === this.horizontalAlign ? b = c.x1 + 2 : "center" === this.horizontalAlign ? b = c.x1 + c.width / 2 - k.width / 2 : "right" === this.horizontalAlign && (b = c.x2 - 2 - k.width - g), h = this.horizontalAlign, this.width = k.width, this.height = k.height) : "center" === + this.verticalAlign && ("left" === this.horizontalAlign ? (b = c.x1 + 2, d = c.y2 - 2 - (this.maxWidth / 2 - k.width / 2), e = -90, q = "left", this.width = k.height, this.height = k.width) : "right" === this.horizontalAlign ? (b = c.x2 - 2, d = c.y1 + 2 + (this.maxWidth / 2 - k.width / 2), e = 90, q = "right", this.width = k.height, this.height = k.width) : "center" === this.horizontalAlign && (d = a.y1 + (a.height / 2 - k.height / 2), b = a.x1 + (a.width / 2 - k.width / 2), q = "center", this.width = k.width, this.height = k.height), h = "center"); + f.x = b; + f.y = d; + f.angle = e; + f.horizontalAlign = h; + f.render(!0); + a.layoutManager.registerSpace(q, {width: this.width + ("left" === q || "right" === q ? this.margin + 2 : 0), height: this.height + ("top" === q || "bottom" === q ? this.margin + 2 : 0)}); + this.bounds = {x1: b, y1: d, x2: b + this.width, y2: d + this.height}; + this.ctx.textBaseline = "top" + } + }; + T(na, L); + na.prototype.render = ga.prototype.render; + T(oa, L); + oa.prototype.render = function () { + var a = this.dockInsidePlotArea ? this.chart.plotArea : this.chart, c = a.layoutManager.getFreeSpace(), b = null, d = 0, e = 0, f = 0, g = 0, h = this.chart._options.legend && !x(this.chart._options.legend.markerMargin) ? + this.chart._options.legend.markerMargin : 0.3 * this.fontSize, q = [], k = []; + "top" === this.verticalAlign || "bottom" === this.verticalAlign ? (this.orientation = "horizontal", b = this.verticalAlign, f = null !== this.maxWidth ? this.maxWidth : 0.7 * c.width, g = null !== this.maxHeight ? this.maxHeight : 0.5 * c.height) : "center" === this.verticalAlign && (this.orientation = "vertical", b = this.horizontalAlign, f = null !== this.maxWidth ? this.maxWidth : 0.5 * c.width, g = null !== this.maxHeight ? this.maxHeight : 0.7 * c.height); + for (var n = 0; n < this.dataSeries.length; n++) { + var m = + this.dataSeries[n]; + if ("pie" !== m.type && "doughnut" !== m.type && "funnel" !== m.type) { + var l = m.legendMarkerType ? m.legendMarkerType : "line" !== m.type && "stepLine" !== m.type && "spline" !== m.type && "scatter" !== m.type && "bubble" !== m.type || !m.markerType ? Y.getDefaultLegendMarker(m.type) : m.markerType, p = m.legendText ? m.legendText : this.itemTextFormatter ? this.itemTextFormatter({chart: this.chart._publicChartReference, legend: this._options, dataSeries: m, dataPoint: null}) : m.name, r = m.legendMarkerColor ? m.legendMarkerColor : m.markerColor ? + m.markerColor : m._colorSet[0], t = m.markerSize || "line" !== m.type && "stepLine" !== m.type && "spline" !== m.type ? 0.75 * this.lineHeight : 0, u = m.legendMarkerBorderColor ? m.legendMarkerBorderColor : m.markerBorderColor, s = m.legendMarkerBorderThickness ? m.legendMarkerBorderThickness : m.markerBorderThickness ? Math.max(1, Math.round(0.2 * t)) : 0, p = this.chart.replaceKeywordsWithValue(p, m.dataPoints[0], m, n), l = {markerType: l, markerColor: r, text: p, textBlock: null, chartType: m.type, markerSize: t, lineColor: m._colorSet[0], dataSeriesIndex: m.index, + dataPointIndex: null, markerBorderColor: u, markerBorderThickness: s}; + q.push(l) + } else + for (var v = 0; v < m.dataPoints.length; v++) { + var w = m.dataPoints[v], l = w.legendMarkerType ? w.legendMarkerType : m.legendMarkerType ? m.legendMarkerType : Y.getDefaultLegendMarker(m.type), p = w.legendText ? w.legendText : m.legendText ? m.legendText : this.itemTextFormatter ? this.itemTextFormatter({chart: this.chart._publicChartReference, legend: this._options, dataSeries: m, dataPoint: w}) : w.name ? w.name : "DataPoint: " + (v + 1), r = w.legendMarkerColor ? w.legendMarkerColor : + m.legendMarkerColor ? m.legendMarkerColor : w.color ? w.color : m.color ? m.color : m._colorSet[v % m._colorSet.length], t = 0.75 * this.lineHeight, u = w.legendMarkerBorderColor ? w.legendMarkerBorderColor : m.legendMarkerBorderColor ? m.legendMarkerBorderColor : w.markerBorderColor ? w.markerBorderColor : m.markerBorderColor, s = w.legendMarkerBorderThickness ? w.legendMarkerBorderThickness : m.legendMarkerBorderThickness ? m.legendMarkerBorderThickness : w.markerBorderThickness || m.markerBorderThickness ? Math.max(1, Math.round(0.2 * t)) : 0, p = this.chart.replaceKeywordsWithValue(p, + w, m, v), l = {markerType: l, markerColor: r, text: p, textBlock: null, chartType: m.type, markerSize: t, dataSeriesIndex: n, dataPointIndex: v, markerBorderColor: u, markerBorderThickness: s}; + (w.showInLegend || m.showInLegend && !1 !== w.showInLegend) && q.push(l) + } + } + !0 === this.reversed && q.reverse(); + if (0 < q.length) { + m = null; + v = p = w = 0; + p = null !== this.itemWidth ? null !== this.itemMaxWidth ? Math.min(this.itemWidth, this.itemMaxWidth, f) : Math.min(this.itemWidth, f) : null !== this.itemMaxWidth ? Math.min(this.itemMaxWidth, f) : f; + t = 0 === t ? 0.75 * this.lineHeight : + t; + p -= t + h; + for (n = 0; n < q.length; n++) { + l = q[n]; + if ("line" === l.chartType || "spline" === l.chartType || "stepLine" === l.chartType) + p -= 2 * 0.1 * this.lineHeight; + if (!(0 >= g || "undefined" === typeof g || 0 >= p || "undefined" === typeof p)) { + if ("horizontal" === this.orientation) { + l.textBlock = new O(this.ctx, {x: 0, y: 0, maxWidth: p, maxHeight: this.itemWrap ? g : this.lineHeight, angle: 0, text: l.text, horizontalAlign: "left", fontSize: this.fontSize, fontFamily: this.fontFamily, fontWeight: this.fontWeight, fontColor: this.fontColor, fontStyle: this.fontStyle, textBaseline: "middle"}); + l.textBlock.measureText(); + null !== this.itemWidth && (l.textBlock.width = this.itemWidth - (t + h + ("line" === l.chartType || "spline" === l.chartType || "stepLine" === l.chartType ? 2 * 0.1 * this.lineHeight : 0))); + if (!m || m.width + Math.round(l.textBlock.width + t + h + (0 === m.width ? 0 : this.horizontalSpacing) + ("line" === l.chartType || "spline" === l.chartType || "stepLine" === l.chartType ? 2 * 0.1 * this.lineHeight : 0)) > f) + m = {items: [], width: 0}, k.push(m), this.height += v, v = 0; + v = Math.max(v, l.textBlock.height) + } else + l.textBlock = new O(this.ctx, {x: 0, y: 0, maxWidth: p, + maxHeight: !0 === this.itemWrap ? g : 1.5 * this.fontSize, angle: 0, text: l.text, horizontalAlign: "left", fontSize: this.fontSize, fontFamily: this.fontFamily, fontWeight: this.fontWeight, fontColor: this.fontColor, fontStyle: this.fontStyle, textBaseline: "middle"}), l.textBlock.measureText(), null !== this.itemWidth && (l.textBlock.width = this.itemWidth - (t + h + ("line" === l.chartType || "spline" === l.chartType || "stepLine" === l.chartType ? 2 * 0.1 * this.lineHeight : 0))), this.height < g - this.lineHeight ? (m = {items: [], width: 0}, k.push(m)) : (m = k[w], + w = (w + 1) % k.length), this.height += l.textBlock.height; + l.textBlock.x = m.width; + l.textBlock.y = 0; + m.width += Math.round(l.textBlock.width + t + h + (0 === m.width ? 0 : this.horizontalSpacing) + ("line" === l.chartType || "spline" === l.chartType || "stepLine" === l.chartType ? 2 * 0.1 * this.lineHeight : 0)); + m.items.push(l); + this.width = Math.max(m.width, this.width) + } + } + this.height = !1 === this.itemWrap ? k.length * this.lineHeight : this.height + v; + this.height = Math.min(g, this.height); + this.width = Math.min(f, this.width) + } + "top" === this.verticalAlign ? (e = "left" === + this.horizontalAlign ? c.x1 : "right" === this.horizontalAlign ? c.x2 - this.width : c.x1 + c.width / 2 - this.width / 2, d = c.y1) : "center" === this.verticalAlign ? (e = "left" === this.horizontalAlign ? c.x1 : "right" === this.horizontalAlign ? c.x2 - this.width : c.x1 + c.width / 2 - this.width / 2, d = c.y1 + c.height / 2 - this.height / 2) : "bottom" === this.verticalAlign && (e = "left" === this.horizontalAlign ? c.x1 : "right" === this.horizontalAlign ? c.x2 - this.width : c.x1 + c.width / 2 - this.width / 2, d = c.y2 - this.height); + this.items = q; + for (n = 0; n < this.items.length; n++) + l = q[n], + l.id = ++this.chart._eventManager.lastObjectId, this.chart._eventManager.objectMap[l.id] = {id: l.id, objectType: "legendItem", legendItemIndex: n, dataSeriesIndex: l.dataSeriesIndex, dataPointIndex: l.dataPointIndex}; + for (n = c = 0; n < k.length; n++) { + m = k[n]; + for (w = v = 0; w < m.items.length; w++) { + l = m.items[w]; + r = l.textBlock.x + e + (0 === w ? 0.2 * t : this.horizontalSpacing); + u = d + c; + p = r; + this.chart.data[l.dataSeriesIndex].visible || (this.ctx.globalAlpha = 0.5); + this.ctx.save(); + this.ctx.rect(e, d, f, Math.max(g - g % this.lineHeight, d)); + this.ctx.clip(); + if ("line" === l.chartType || "stepLine" === l.chartType || "spline" === l.chartType) + this.ctx.strokeStyle = l.lineColor, this.ctx.lineWidth = Math.ceil(this.lineHeight / 8), this.ctx.beginPath(), this.ctx.moveTo(r - 0.1 * this.lineHeight, u + this.lineHeight / 2), this.ctx.lineTo(r + 0.85 * this.lineHeight, u + this.lineHeight / 2), this.ctx.stroke(), p -= 0.1 * this.lineHeight; + P.drawMarker(r + t / 2, u + this.lineHeight / 2, this.ctx, l.markerType, l.markerSize, l.markerColor, l.markerBorderColor, l.markerBorderThickness); + l.textBlock.x = r + h + t; + if ("line" === + l.chartType || "stepLine" === l.chartType || "spline" === l.chartType) + l.textBlock.x += 0.1 * this.lineHeight; + l.textBlock.y = Math.round(u + this.lineHeight / 2); + l.textBlock.render(!0); + this.ctx.restore(); + v = 0 < w ? Math.max(v, l.textBlock.height) : l.textBlock.height; + this.chart.data[l.dataSeriesIndex].visible || (this.ctx.globalAlpha = 1); + r = C(l.id); + this.ghostCtx.fillStyle = r; + this.ghostCtx.beginPath(); + this.ghostCtx.fillRect(p, l.textBlock.y - this.lineHeight / 2, l.textBlock.x + l.textBlock.width - p, l.textBlock.height); + l.x1 = this.chart._eventManager.objectMap[l.id].x1 = + p; + l.y1 = this.chart._eventManager.objectMap[l.id].y1 = l.textBlock.y - this.lineHeight / 2; + l.x2 = this.chart._eventManager.objectMap[l.id].x2 = l.textBlock.x + l.textBlock.width; + l.y2 = this.chart._eventManager.objectMap[l.id].y2 = l.textBlock.y + l.textBlock.height - this.lineHeight / 2 + } + c += v + } + 0 < q.length && a.layoutManager.registerSpace(b, {width: this.width + 2 + 2, height: this.height + 5 + 5}); + this.bounds = {x1: e, y1: d, x2: e + this.width, y2: d + this.height} + }; + T(ua, L); + ua.prototype.render = function () { + var a = this.chart.layoutManager.getFreeSpace(); + this.ctx.fillStyle = "red"; + this.ctx.fillRect(a.x1, a.y1, a.x2, a.y2) + }; + T(Y, L); + Y.prototype.getDefaultAxisPlacement = function () { + var a = this.type; + if ("column" === a || "line" === a || "stepLine" === a || "spline" === a || "area" === a || "stepArea" === a || "splineArea" === a || "stackedColumn" === a || "stackedLine" === a || "bubble" === a || "scatter" === a || "stackedArea" === a || "stackedColumn100" === a || "stackedLine100" === a || "stackedArea100" === a || "candlestick" === a || "ohlc" === a || "rangeColumn" === a || "rangeArea" === a || "rangeSplineArea" === a) + return"normal"; + if ("bar" === + a || "stackedBar" === a || "stackedBar100" === a || "rangeBar" === a) + return"xySwapped"; + if ("pie" === a || "doughnut" === a || "funnel" === a) + return"none"; + window.console.log("Unknown Chart Type: " + a); + return null + }; + Y.getDefaultLegendMarker = function (a) { + if ("column" === a || "stackedColumn" === a || "stackedLine" === a || "bar" === a || "stackedBar" === a || "stackedBar100" === a || "bubble" === a || "scatter" === a || "stackedColumn100" === a || "stackedLine100" === a || "stepArea" === a || "candlestick" === a || "ohlc" === a || "rangeColumn" === a || "rangeBar" === a || "rangeArea" === + a || "rangeSplineArea" === a) + return"square"; + if ("line" === a || "stepLine" === a || "spline" === a || "pie" === a || "doughnut" === a || "funnel" === a) + return"circle"; + if ("area" === a || "splineArea" === a || "stackedArea" === a || "stackedArea100" === a) + return"triangle"; + window.console.log("Unknown Chart Type: " + a); + return null + }; + Y.prototype.getDataPointAtX = function (a, c) { + if (!this.dataPoints || 0 === this.dataPoints.length) + return null; + var b = {dataPoint: null, distance: Infinity, index: NaN}, d = null, e = 0, f = 0, g = 1, h = Infinity, q = 0, k = 0, n = 0; + "none" !== this.chart.plotInfo.axisPlacement && + (n = this.dataPoints[this.dataPoints.length - 1].x - this.dataPoints[0].x, n = 0 < n ? Math.min(Math.max((this.dataPoints.length - 1) / n * (a - this.dataPoints[0].x) >> 0, 0), this.dataPoints.length) : 0); + for (; ; ) { + f = 0 < g ? n + e : n - e; + if (0 <= f && f < this.dataPoints.length) { + var d = this.dataPoints[f], m = Math.abs(d.x - a); + m < b.distance && (b.dataPoint = d, b.distance = m, b.index = f); + d = Math.abs(d.x - a); + d <= h ? h = d : 0 < g ? q++ : k++; + if (1E3 < q && 1E3 < k) + break + } else if (0 > n - e && n + e >= this.dataPoints.length) + break; + -1 === g ? (e++, g = 1) : g = -1 + } + return c || b.dataPoint.x !== a ? c && null !== + b.dataPoint ? b : null : b + }; + Y.prototype.getDataPointAtXY = function (a, c, b) { + if (!this.dataPoints || 0 === this.dataPoints.length || a < this.chart.plotArea.x1 || a > this.chart.plotArea.x2 || c < this.chart.plotArea.y1 || c > this.chart.plotArea.y2) + return null; + b = b || !1; + var d = [], e = 0, f = 0, g = 1, h = !1, q = Infinity, k = 0, n = 0, m = 0; + "none" !== this.chart.plotInfo.axisPlacement && (m = this.chart.axisX.getXValueAt({x: a, y: c}), f = this.dataPoints[this.dataPoints.length - 1].x - this.dataPoints[0].x, m = 0 < f ? Math.min(Math.max((this.dataPoints.length - 1) / f * (m - this.dataPoints[0].x) >> + 0, 0), this.dataPoints.length) : 0); + for (; ; ) { + f = 0 < g ? m + e : m - e; + if (0 <= f && f < this.dataPoints.length) { + var l = this.chart._eventManager.objectMap[this.dataPointIds[f]], p = this.dataPoints[f], r = null; + if (l) { + switch (this.type) { + case "column": + case "stackedColumn": + case "stackedColumn100": + case "bar": + case "stackedBar": + case "stackedBar100": + case "rangeColumn": + case "rangeBar": + a >= l.x1 && (a <= l.x2 && c >= l.y1 && c <= l.y2) && (d.push({dataPoint: p, dataPointIndex: f, dataSeries: this, distance: Math.min(Math.abs(l.x1 - a), Math.abs(l.x2 - a), Math.abs(l.y1 - + c), Math.abs(l.y2 - c))}), h = !0); + break; + case "line": + case "stepLine": + case "spline": + case "area": + case "stepArea": + case "stackedArea": + case "stackedArea100": + case "splineArea": + case "scatter": + var t = R("markerSize", p, this) || 4, u = b ? 20 : t, r = Math.sqrt(Math.pow(l.x1 - a, 2) + Math.pow(l.y1 - c, 2)); + r <= u && d.push({dataPoint: p, dataPointIndex: f, dataSeries: this, distance: r}); + f = Math.abs(l.x1 - a); + f <= q ? q = f : 0 < g ? k++ : n++; + r <= t / 2 && (h = !0); + break; + case "rangeArea": + case "rangeSplineArea": + t = R("markerSize", p, this) || 4; + u = b ? 20 : t; + r = Math.min(Math.sqrt(Math.pow(l.x1 - + a, 2) + Math.pow(l.y1 - c, 2)), Math.sqrt(Math.pow(l.x1 - a, 2) + Math.pow(l.y2 - c, 2))); + r <= u && d.push({dataPoint: p, dataPointIndex: f, dataSeries: this, distance: r}); + f = Math.abs(l.x1 - a); + f <= q ? q = f : 0 < g ? k++ : n++; + r <= t / 2 && (h = !0); + break; + case "bubble": + t = l.size; + r = Math.sqrt(Math.pow(l.x1 - a, 2) + Math.pow(l.y1 - c, 2)); + r <= t / 2 && (d.push({dataPoint: p, dataPointIndex: f, dataSeries: this, distance: r}), h = !0); + break; + case "pie": + case "doughnut": + t = l.center; + u = "doughnut" === this.type ? l.percentInnerRadius * l.radius : 0; + r = Math.sqrt(Math.pow(t.x - a, 2) + Math.pow(t.y - + c, 2)); + r < l.radius && r > u && (r = Math.atan2(c - t.y, a - t.x), 0 > r && (r += 2 * Math.PI), r = Number(((180 * (r / Math.PI) % 360 + 360) % 360).toFixed(12)), t = Number(((180 * (l.startAngle / Math.PI) % 360 + 360) % 360).toFixed(12)), u = Number(((180 * (l.endAngle / Math.PI) % 360 + 360) % 360).toFixed(12)), 0 === u && 1 < l.endAngle && (u = 360), t >= u && 0 !== p.y && (u += 360, r < t && (r += 360)), r > t && r < u && (d.push({dataPoint: p, dataPointIndex: f, dataSeries: this, distance: 0}), h = !0)); + break; + case "candlestick": + if (a >= l.x1 - l.borderThickness / 2 && a <= l.x2 + l.borderThickness / 2 && c >= l.y2 - l.borderThickness / + 2 && c <= l.y3 + l.borderThickness / 2 || Math.abs(l.x2 - a + l.x1 - a) < l.borderThickness && c >= l.y1 && c <= l.y4) + d.push({dataPoint: p, dataPointIndex: f, dataSeries: this, distance: Math.min(Math.abs(l.x1 - a), Math.abs(l.x2 - a), Math.abs(l.y2 - c), Math.abs(l.y3 - c))}), h = !0; + break; + case "ohlc": + if (Math.abs(l.x2 - a + l.x1 - a) < l.borderThickness && c >= l.y2 && c <= l.y3 || a >= l.x1 && a <= (l.x2 + l.x1) / 2 && c >= l.y1 - l.borderThickness / 2 && c <= l.y1 + l.borderThickness / 2 || a >= (l.x1 + l.x2) / 2 && a <= l.x2 && c >= l.y4 - l.borderThickness / 2 && c <= l.y4 + l.borderThickness / 2) + d.push({dataPoint: p, + dataPointIndex: f, dataSeries: this, distance: Math.min(Math.abs(l.x1 - a), Math.abs(l.x2 - a), Math.abs(l.y2 - c), Math.abs(l.y3 - c))}), h = !0 + } + if (h || 1E3 < k && 1E3 < n) + break + } + } else if (0 > m - e && m + e >= this.dataPoints.length) + break; + -1 === g ? (e++, g = 1) : g = -1 + } + a = null; + for (c = 0; c < d.length; c++) + a ? d[c].distance <= a.distance && (a = d[c]) : a = d[c]; + return a + }; + Y.prototype.getMarkerProperties = function (a, c, b, d) { + var e = this.dataPoints; + return{x: c, y: b, ctx: d, type: e[a].markerType ? e[a].markerType : this.markerType, size: e[a].markerSize ? e[a].markerSize : this.markerSize, + color: e[a].markerColor ? e[a].markerColor : this.markerColor ? this.markerColor : e[a].color ? e[a].color : this.color ? this.color : this._colorSet[a % this._colorSet.length], borderColor: e[a].markerBorderColor ? e[a].markerBorderColor : this.markerBorderColor ? this.markerBorderColor : null, borderThickness: e[a].markerBorderThickness ? e[a].markerBorderThickness : this.markerBorderThickness ? this.markerBorderThickness : null} + }; + T(F, L); + F.prototype.createLabels = function () { + var a, c, b = 0, b = 0, d, e = 0, f = 0, g = 0, h = 0, q = 0; + if ("bottom" === this._position || + "top" === this._position) + q = this.lineCoordinates.width / Math.abs(this.viewportMaximum - this.viewportMinimum) * E[this.intervalType + "Duration"] * this.interval, e = "undefined" === typeof this._options.labelMaxWidth ? 0.5 * this.chart.width >> 0 : this._options.labelMaxWidth, this.chart.panEnabled || (g = "undefined" === typeof this._options.labelWrap || this.labelWrap ? 0.8 * this.chart.height >> 0 : 1.5 * this.labelFontSize); + else if ("left" === this._position || "right" === this._position) + q = this.lineCoordinates.height / Math.abs(this.viewportMaximum - + this.viewportMinimum) * E[this.intervalType + "Duration"] * this.interval, this.chart.panEnabled || (e = "undefined" === typeof this._options.labelMaxWidth ? 0.3 * this.chart.width >> 0 : this._options.labelMaxWidth), g = "undefined" === typeof this._options.labelWrap || this.labelWrap ? 0.3 * this.chart.height >> 0 : 1.5 * this.labelFontSize; + if ("axisX" === this.type && "dateTime" === this.chart.plotInfo.axisXValueType) + for (this.intervalStartPosition = this.getLabelStartPoint(new Date(this.viewportMinimum), this.intervalType, this.interval), d = za(new Date(this.viewportMaximum), + this.interval, this.intervalType), b = this.intervalStartPosition; b < d; za(b, this.interval, this.intervalType)) + a = b.getTime(), a = this.labelFormatter ? this.labelFormatter({chart: this.chart._publicChartReference, axis: this._options, value: b, label: this.labels[b] ? this.labels[b] : null}) : "axisX" === this.type && this.labels[a] ? this.labels[a] : wa(b, this.valueFormatString, this.chart._cultureInfo), a = new O(this.ctx, {x: 0, y: 0, maxWidth: e, maxHeight: g, angle: this.labelAngle, text: this.prefix + a + this.suffix, horizontalAlign: "left", fontSize: this.labelFontSize, + fontFamily: this.labelFontFamily, fontWeight: this.labelFontWeight, fontColor: this.labelFontColor, fontStyle: this.labelFontStyle, textBaseline: "middle"}), this._labels.push({position: b.getTime(), textBlock: a, effectiveHeight: null}); + else { + d = this.viewportMaximum; + if (this.labels && this.labels.length) { + a = Math.ceil(this.interval); + for (var k = Math.ceil(this.intervalStartPosition), f = !1, b = k; b < this.viewportMaximum; b += a) + if (this.labels[b]) + f = !0; + else { + f = !1; + break + } + f && (this.interval = a, this.intervalStartPosition = k) + } + for (b = this.intervalStartPosition; b <= + d; b = parseFloat((b + this.interval).toFixed(14))) + a = this.labelFormatter ? this.labelFormatter({chart: this.chart._publicChartReference, axis: this._options, value: b, label: this.labels[b] ? this.labels[b] : null}) : "axisX" === this.type && this.labels[b] ? this.labels[b] : ba(b, this.valueFormatString, this.chart._cultureInfo), a = new O(this.ctx, {x: 0, y: 0, maxWidth: e, maxHeight: g, angle: this.labelAngle, text: this.prefix + a + this.suffix, horizontalAlign: "left", fontSize: this.labelFontSize, fontFamily: this.labelFontFamily, fontWeight: this.labelFontWeight, + fontColor: this.labelFontColor, fontStyle: this.labelFontStyle, textBaseline: "middle", borderThickness: 0}), this._labels.push({position: b, textBlock: a, effectiveHeight: null}) + } + d = []; + f = []; + if (this.labelAutoFit || this._options.labelAutoFit) + if ("bottom" === this._position || "top" === this._position) + if (h = 0, e = 0.9 * q >> 0, x(this.labelAngle) || (this.labelAngle = (this.labelAngle % 360 + 360) % 360, 90 < this.labelAngle && 270 >= this.labelAngle ? this.labelAngle -= 180 : 270 < this.labelAngle && 360 >= this.labelAngle && (this.labelAngle -= 360)), !this.chart.panEnabled && + 1 <= this._labels.length) { + this.sessionVariables.labelFontSize = this.labelFontSize; + this.sessionVariables.labelMaxWidth = e; + this.sessionVariables.labelMaxHeight = g; + this.sessionVariables.labelAngle = this.labelAngle; + this.sessionVariables.labelWrap = !0; + for (b = 0; b < this._labels.length; b++) + (a = this._labels[b].textBlock, k = a.measureText(), b < this._labels.length - 1 && (h = b + 1, c = this._labels[h].textBlock, c = c.measureText()), d.push(a.height), this.sessionVariables.labelMaxHeight = Math.max.apply(Math, d), f = e * Math.cos(Math.PI / 180 * + Math.abs(this.labelAngle)) + (g - a.fontSize / 2) * Math.sin(Math.PI / 180 * Math.abs(this.labelAngle)), h = e * Math.sin(Math.PI / 180 * Math.abs(this.labelAngle)) + (g - a.fontSize / 2) * Math.cos(Math.PI / 180 * Math.abs(this.labelAngle)), x(this._options.labelAngle) && isNaN(this._options.labelAngle) && 0 !== this._options.labelAngle) ? (this.sessionVariables.labelMaxHeight = 0 === this.labelAngle ? g : Math.min((h - e * Math.cos(Math.PI / 180 * Math.abs(this.labelAngle))) / Math.sin(Math.PI / 180 * Math.abs(this.labelAngle)), h), x(this._options.labelWrap)) ? + x(this._options.labelWrap) && (x(this._options.labelMaxWidth) ? x(c) || (k.width + c.width >> 0 >= 2 * e && k.width + c.width >> 0 < 2.4 * e ? (k = this.labelFontSize, this.sessionVariables.labelMaxWidth = 1.2 * e, x(this._options.labelFontSize) && 12 < k && (k = Math.floor(12 / 13 * k), a.measureText()), this.sessionVariables.labelFontSize = x(this._options.labelFontSize) ? k : this._options.labelFontSize, this.sessionVariables.labelAngle = this.labelAngle) : k.width + c.width >> 0 >= 2.4 * e && k.width + c.width < 2.8 * e ? (this.sessionVariables.labelAngle = -25, this.sessionVariables.labelMaxWidth = + 2.5 * e, this.sessionVariables.labelFontSize = this.labelFontSize) : k.width + c.width >> 0 >= 2.8 * e && k.width + c.width < 3.2 * e ? (this.sessionVariables.labelMaxWidth = 1.2 * e, this.sessionVariables.labelWrap = !0, x(this._options.labelFontSize) && 12 < this.labelFontSize && (this.labelFontSize = Math.floor(12 / 13 * this.labelFontSize), a.measureText()), this.sessionVariables.labelFontSize = x(this._options.labelFontSize) ? this.labelFontSize : this._options.labelFontSize, this.sessionVariables.labelAngle = this.labelAngle) : k.width + c.width >> 0 >= + 3.2 * e && k.width + c.width < 3.6 * e ? (this.sessionVariables.labelAngle = -25, this.sessionVariables.labelWrap = !0, this.sessionVariables.labelMaxWidth = 2.5 * e, this.sessionVariables.labelFontSize = this.labelFontSize) : k.width + c.width > 3.6 * e && k.width + c.width < 5 * e ? (x(this._options.labelFontSize) && 12 < this.labelFontSize && (this.labelFontSize = Math.floor(12 / 13 * this.labelFontSize), a.measureText()), this.sessionVariables.labelFontSize = x(this._options.labelFontSize) ? this.labelFontSize : this._options.labelFontSize, this.sessionVariables.labelWrap = + !0, this.sessionVariables.labelMaxWidth = e, this.sessionVariables.labelAngle = this.labelAngle, this.sessionVariables.labelWrap = !0) : k.width + c.width > 5 * e && (this.sessionVariables.labelWrap = !0, this.sessionVariables.labelMaxWidth = e, this.sessionVariables.labelFontSize = this.labelFontSize, this.sessionVariables.labelMaxHeight = g, this.sessionVariables.labelAngle = this.labelAngle)) : this._options.labelMaxWidth < e ? (this.sessionVariables.labelMaxWidth = this._options.labelMaxWidth, this.sessionVariables.labelMaxHeight = h) : + (this.sessionVariables.labelAngle = -25, this.sessionVariables.labelMaxWidth = x(this._options.labelMaxWidth) ? e : this._options.labelMaxWidth > 0.3 * this.chart.width >> 0 ? 0.3 * this.chart.width >> 0 : this._options.labelMaxWidth, this.sessionVariables.labelMaxHeight = 2.5 * this.labelFontSize)) : this._options.labelWrap ? (this.sessionVariables.labelMaxWidth = this._options.labelMaxWidth ? this._options.labelMaxWidth : e, this.sessionVariables.labelAngle = this._options.labelMaxWidth > e ? -25 : this.sessionVariables.labelAngle, this.sessionVariables.labelMaxHeight = + h) : x(this._options.labelMaxWidth) ? (this.sessionVariables.labelMaxWidth = e, this.sessionVariables.labelWrap = this.labelWrap, this.sessionVariables.labelMaxHeight = g) : (this.sessionVariables.labelMaxWidth = this._options.labelMaxWidth ? this._options.labelMaxWidth : e, this.sessionVariables.labelAngle = this._options.labelMaxWidth > e ? -25 : this.sessionVariables.labelAngle, this.sessionVariables.labelMaxHeight = g, this.sessionVariables.labelWrap = this.labelWrap) : (this.sessionVariables.labelAngle = this.labelAngle, this.sessionVariables.labelMaxHeight = + 0 === this.labelAngle ? g : Math.min((h - e * Math.cos(Math.PI / 180 * Math.abs(this.labelAngle))) / Math.sin(Math.PI / 180 * Math.abs(this.labelAngle)), h), x(this._options.labelWrap)) ? x(this._options.labelWrap) && (this.labelWrap && !x(this._options.labelMaxWidth) ? (this.sessionVariables.labelWrap = this.labelWrap, this.sessionVariables.labelMaxWidth = this._options.labelMaxWidth ? this._options.labelMaxWidth > 0.8 * this.chart.height >> 0 ? 0.8 * this.chart.height >> 0 : this._options.labelMaxWidth : e, this.sessionVariables.labelMaxHeight = g) : + (this.sessionVariables.labelMaxWidth = f > 0.5 * this.chart.height ? 0.5 * this.chart.height : f, this.sessionVariables.labelMaxHeight = h < 0.9 * q ? 0.9 * q : h < this.labelFontSize ? 2.5 * this.labelFontSize : h - this.labelFontSize, this.sessionVariables.labelWrap = this.labelWrap, x(this._options.labelMaxWidth) && (this.sessionVariables.labelAngle = this.labelAngle))) : (this._options.labelWrap ? (this.sessionVariables.labelWrap = this.labelWrap, this.sessionVariables.labelMaxWidth = this._options.labelMaxWidth ? this._options.labelMaxWidth > 0.8 * + this.chart.height >> 0 ? 0.8 * this.chart.height >> 0 : this._options.labelMaxWidth : e) : (x(this._options.labelMaxWidth), this.sessionVariables.labelMaxWidth = this._options.labelMaxWidth ? this._options.labelMaxWidth > 0.8 * this.chart.height >> 0 ? 0.8 * this.chart.height >> 0 : this._options.labelMaxWidth : f, this.sessionVariables.labelWrap = this.labelWrap), this.sessionVariables.labelMaxHeight = g); + for (b = 0; b < this._labels.length; b++) + a = this._labels[b].textBlock, a.maxWidth = this.labelMaxWidth = this.sessionVariables.labelMaxWidth, a.fontSize = + this.labelFontSize = this.sessionVariables.labelFontSize, a.angle = this.labelAngle = this.sessionVariables.labelAngle, a.wrap = this.labelWrap = this.sessionVariables.labelWrap, a.maxHeight = this.sessionVariables.labelMaxHeight, a.measureText() + } else + for (b = 0; b < this._labels.length; b++) + a = this._labels[b].textBlock, a.maxWidth = this.labelMaxWidth = x(this._options.labelMaxWidth) ? this.sessionVariables.labelMaxWidth : this._options.labelMaxWidth, a.fontSize = this.labelFontSize = x(this._options.labelFontSize) ? this.sessionVariables.labelFontSize : + this._options.labelFontSize, a.angle = this.labelAngle = x(this._options.labelAngle) ? this.sessionVariables.labelAngle : this.labelAngle, a.wrap = this.labelWrap = x(this._options.labelWrap) ? this.sessionVariables.labelWrap : this._options.labelWrap, a.maxHeight = this.sessionVariables.labelMaxHeight, a.measureText(); + else if ("left" === this._position || "right" === this._position) + if (e = x(this._options.labelMaxWidth) ? 0.3 * this.chart.width >> 0 : this._options.labelMaxWidth, x(this.labelAngle) || (this.labelAngle = (this.labelAngle % 360 + + 360) % 360, 90 < this.labelAngle && 270 >= this.labelAngle ? this.labelAngle -= 180 : 270 < this.labelAngle && 360 >= this.labelAngle && (this.labelAngle -= 360)), !this.chart.panEnabled && 1 <= this._labels.length) { + this.sessionVariables.labelFontSize = this.labelFontSize; + this.sessionVariables.labelMaxWidth = e; + this.sessionVariables.labelMaxHeight = g; + this.sessionVariables.labelAngle = x(this.sessionVariables.labelAngle) ? 0 : this.sessionVariables.labelAngle; + this.sessionVariables.labelWrap = !0; + for (b = 0; b < this._labels.length; b++) + (a = this._labels[b].textBlock, + k = a.measureText(), b < this._labels.length - 1 && (h = b + 1, c = this._labels[h].textBlock, c = c.measureText()), f.push(a.height), this.sessionVariables.labelMaxHeight = Math.max.apply(Math, f), h = e * Math.sin(Math.PI / 180 * Math.abs(this.labelAngle)) + (g - a.fontSize / 2) * Math.cos(Math.PI / 180 * Math.abs(this.labelAngle)), Math.cos(Math.PI / 180 * Math.abs(this.labelAngle)), Math.sin(Math.PI / 180 * Math.abs(this.labelAngle)), x(this._options.labelAngle) && isNaN(this._options.labelAngle) && 0 !== this._options.labelAngle) ? x(this._options.labelWrap) ? + x(this._options.labelWrap) && (x(this._options.labelMaxWidth) ? x(c) || (k.height + c.height >> 0 >= 2 * this.labelMaxHeight && k.height + c.height >> 0 < 2.4 * this.labelMaxHeight ? (x(this._options.labelFontSize) && 12 < this.labelFontSize && (this.labelFontSize = Math.floor(12 / 13 * this.labelFontSize), a.measureText()), this.sessionVariables.labelMaxHeight = this.labelMaxHeight, this.sessionVariables.labelFontSize = x(this._options.labelFontSize) ? this.labelFontSize : this._options.labelFontSize) : k.height + c.height >> 0 >= 2.4 * this.labelMaxHeight && + k.height + c.height < 2.8 * this.labelMaxHeight ? (this.sessionVariables.labelAngle = -25, this.sessionVariables.labelMaxHeight = h, this.sessionVariables.labelFontSize = this.labelFontSize, this.sessionVariables.labelWrap = !0) : k.height + c.height >> 0 >= 2.8 * this.labelMaxHeight && k.height + c.height < 3.2 * this.labelMaxHeight ? (this.sessionVariables.labelMaxHeight = this.labelMaxHeight, this.sessionVariables.labelWrap = !0, x(this._options.labelFontSize) && 12 < this.labelFontSize && (this.labelFontSize = Math.floor(12 / 13 * this.labelFontSize), + a.measureText()), this.sessionVariables.labelFontSize = x(this._options.labelFontSize) ? this.labelFontSize : this._options.labelFontSize, this.sessionVariables.labelAngle = x(this.sessionVariables.labelAngle) ? 0 : this.sessionVariables.labelAngle) : k.height + c.height >> 0 >= 3.2 * this.labelMaxHeight && k.height + c.height < 3.6 * this.labelMaxHeight ? (this.sessionVariables.labelAngle = -25, this.sessionVariables.labelMaxHeight = h, this.sessionVariables.labelWrap = !0, this.sessionVariables.labelFontSize = this.labelFontSize) : k.height + + c.height > 3.6 * this.labelMaxHeight && k.height + c.height < 10 * this.labelMaxHeight ? (x(this._options.labelFontSize) && 12 < this.labelFontSize && (this.labelFontSize = Math.floor(12 / 13 * this.labelFontSize), a.measureText()), this.sessionVariables.labelFontSize = x(this._options.labelFontSize) ? this.labelFontSize : this._options.labelFontSize, this.sessionVariables.labelMaxWidth = e, this.sessionVariables.labelMaxHeight = this.labelMaxHeight, this.sessionVariables.labelAngle = x(this.sessionVariables.labelAngle) ? 0 : this.sessionVariables.labelAngle) : + k.height + c.height > 10 * this.labelMaxHeight && k.height + c.height < 50 * this.labelMaxHeight && (x(this._options.labelFontSize) && 12 < this.labelFontSize && (this.labelFontSize = Math.floor(12 / 13 * this.labelFontSize), a.measureText()), this.sessionVariables.labelFontSize = x(this._options.labelFontSize) ? this.labelFontSize : this._options.labelFontSize, this.sessionVariables.labelMaxHeight = this.labelMaxHeight, this.sessionVariables.labelMaxWidth = e, this.sessionVariables.labelAngle = x(this.sessionVariables.labelAngle) ? 0 : this.sessionVariables.labelAngle)) : + this.sessionVariables.labelMaxWidth = this._options.labelMaxWidth < e ? this._options.labelMaxWidth : this._options.labelMaxWidth ? this._options.labelMaxWidth > 0.3 * this.chart.width >> 0 ? 0.3 * this.chart.width >> 0 : this._options.labelMaxWidth : this.sessionVariables.labelMaxWidth) : this._options.labelWrap ? this.sessionVariables.labelMaxWidth = this._options.labelMaxWidth ? this._options.labelMaxWidth > 0.3 * this.chart.width >> 0 ? 0.3 * this.chart.width >> 0 : this._options.labelMaxWidth : this.sessionVariables.labelMaxWidth : this._options.labelMaxWidth ? + this.sessionVariables.labelMaxWidth = this._options.labelMaxWidth ? this._options.labelMaxWidth > 0.3 * this.chart.width >> 0 ? 0.3 * this.chart.width >> 0 : this._options.labelMaxWidth : this.sessionVariables.labelMaxWidth : (this.sessionVariables.labelMaxWidth = e, this.sessionVariables.labelAngle = -25) : (this.sessionVariables.labelAngle = this.labelAngle, this.sessionVariables.labelMaxWidth = 0 === this.labelAngle ? e : Math.min((h - g * Math.sin(Math.PI / 180 * Math.abs(this.labelAngle))) / Math.cos(Math.PI / 180 * Math.abs(this.labelAngle)), g), + x(this._options.labelWrap)) ? x(this._options.labelWrap) && (this.labelWrap && !x(this._options.labelMaxWidth) ? (this.sessionVariables.labelMaxWidth = this._options.labelMaxWidth ? this._options.labelMaxWidth > 0.8 * this.chart.height >> 0 ? 0.8 * this.chart.height >> 0 : this._options.labelMaxWidth : this.sessionVariables.labelMaxWidth, this.sessionVariables.labelWrap = this.labelWrap, this.sessionVariables.labelMaxHeight = h) : (this.sessionVariables.labelMaxWidth = this._options.labelMaxWidth ? this._options.labelMaxWidth > 0.8 * this.chart.height >> + 0 ? 0.8 * this.chart.height >> 0 : this._options.labelMaxWidth : e, this.sessionVariables.labelMaxHeight = 0 === this.labelAngle ? g : h, x(this._options.labelMaxWidth) && (this.sessionVariables.labelAngle = this.labelAngle))) : this._options.labelWrap ? (this.sessionVariables.labelMaxHeight = 0 === this.labelAngle ? g : h, this.sessionVariables.labelWrap = this.labelWrap, this.sessionVariables.labelMaxWidth = e) : (x(this._options.labelMaxWidth), this.sessionVariables.labelMaxWidth = this._options.labelMaxWidth ? this._options.labelMaxWidth > 0.8 * + this.chart.height >> 0 ? 0.8 * this.chart.height >> 0 : this._options.labelMaxWidth : this.sessionVariables.labelMaxWidth, this.sessionVariables.labelWrap = this.labelWrap); + for (b = 0; b < this._labels.length; b++) + a = this._labels[b].textBlock, a.maxWidth = this.labelMaxWidth = this.sessionVariables.labelMaxWidth, a.fontSize = this.labelFontSize = this.sessionVariables.labelFontSize, a.angle = this.labelAngle = this.sessionVariables.labelAngle, a.wrap = this.labelWrap = this.sessionVariables.labelWrap, a.maxHeight = this.sessionVariables.labelMaxHeight, + a.measureText() + } else + for (b = 0; b < this._labels.length; b++) + a = this._labels[b].textBlock, a.maxWidth = this.labelMaxWidth = x(this._options.labelMaxWidth) ? this.sessionVariables.labelMaxWidth : this._options.labelMaxWidth, a.fontSize = this.labelFontSize = x(this._options.labelFontSize) ? this.sessionVariables.labelFontSize : this._options.labelFontSize, a.angle = this.labelAngle = x(this._options.labelAngle) ? this.sessionVariables.labelAngle : this.labelAngle, a.wrap = this.labelWrap = x(this._options.labelWrap) ? this.sessionVariables.labelWrap : + this._options.labelWrap, a.maxHeight = this.sessionVariables.labelMaxHeight, a.measureText(); + for (b = 0; b < this.stripLines.length; b++) + c = this.stripLines[b], e = "bottom" === this._position || "top" === this._position ? 0.9 * this.chart.width >> 0 : 0.9 * this.chart.height >> 0, a = new O(this.ctx, {x: 0, y: 0, backgroundColor: "outside" === c.labelPlacement ? c._options.labelBackgroundColor ? c._options.labelBackgroundColor : "#EEEEEE" : c.startValue ? "#EEEEEE" : c.labelBackgroundColor, maxWidth: c._options.labelMaxWidth ? c._options.labelMaxWidth : e, maxHeight: "undefined" === + typeof c._options.labelWrap || c.labelWrap ? e : 1.5 * this.labelFontSize, angle: this.labelAngle, text: c.labelFormatter ? c.labelFormatter({chart: this.chart._publicChartReference, axis: this, stripLine: c}) : c.label, horizontalAlign: "left", fontSize: "outside" === c.labelPlacement ? c._options.labelFontSize ? c._options.labelFontSize : this.labelFontSize : c.labelFontSize, fontFamily: "outside" === c.labelPlacement ? c._options.labelFontFamily ? c._options.labelFontFamily : this.labelFontFamily : c.labelFontFamily, fontWeight: "outside" === + c.labelPlacement ? c._options.fontWeight ? c._options.fontWeight : this.fontWeight : c.fontWeight, fontColor: c._options.labelFontColor || c.labelFontColor, fontStyle: "outside" === c.labelPlacement ? c._options.fontStyle ? c._options.fontStyle : this.fontWeight : c.fontStyle, textBaseline: "middle", borderThickness: 0}), this._stripLineLabels.push({position: c.value, textBlock: a, effectiveHeight: null, stripLine: c}) + }; + F.prototype.createLabelsAndCalculateWidth = function () { + var a = 0, c = 0; + this._labels = []; + this._stripLineLabels = []; + if ("left" === + this._position || "right" === this._position) { + this.createLabels(); + for (c = 0; c < this._labels.length; c++) { + var b = this._labels[c].textBlock, d = b.measureText(), e = 0, e = 0 === this.labelAngle ? d.width : d.width * Math.cos(Math.PI / 180 * Math.abs(this.labelAngle)) + (d.height - b.fontSize / 2) * Math.sin(Math.PI / 180 * Math.abs(this.labelAngle)); + a < e && (a = e); + this._labels[c].effectiveWidth = e + } + for (c = 0; c < this._stripLineLabels.length; c++) + "outside" === this._stripLineLabels[c].stripLine.labelPlacement && (b = this._stripLineLabels[c].textBlock, d = b.measureText(), + e = 0 === this.labelAngle ? d.width : d.width * Math.cos(Math.PI / 180 * Math.abs(this.labelAngle)) + (d.height - b.fontSize / 2) * Math.sin(Math.PI / 180 * Math.abs(this.labelAngle)), a < e && (a = e), this._stripLineLabels[c].effectiveWidth = e) + } + return(this.title ? this._titleTextBlock.measureText().height + 2 : 0) + a + this.tickLength + 5 + }; + F.prototype.createLabelsAndCalculateHeight = function () { + var a = 0; + this._labels = []; + this._stripLineLabels = []; + var c, b = 0; + this.createLabels(); + if ("bottom" === this._position || "top" === this._position) { + for (b = 0; b < this._labels.length; b++) { + c = + this._labels[b].textBlock; + var d = c.measureText(), e = 0, e = 0 === this.labelAngle ? d.height : d.width * Math.sin(Math.PI / 180 * Math.abs(this.labelAngle)) + (d.height - c.fontSize / 2) * Math.cos(Math.PI / 180 * Math.abs(this.labelAngle)); + a < e && (a = e); + this._labels[b].effectiveHeight = e + } + for (b = 0; b < this._stripLineLabels.length; b++) + "outside" === this._stripLineLabels[b].stripLine.labelPlacement && (c = this._stripLineLabels[b].textBlock, d = c.measureText(), e = 0 === this.labelAngle ? d.height : d.width * Math.sin(Math.PI / 180 * Math.abs(this.labelAngle)) + + (d.height - c.fontSize / 2) * Math.cos(Math.PI / 180 * Math.abs(this.labelAngle)), a < e && (a = e), this._labels[b].effectiveHeight = e) + } + return(this.title ? this._titleTextBlock.measureText().height + 2 : 0) + a + this.tickLength + 5 + }; + F.setLayoutAndRender = function (a, c, b, d, e) { + var f, g, h, q = a.chart, k = q.ctx; + a.calculateAxisParameters(); + c && c.calculateAxisParameters(); + b && b.calculateAxisParameters(); + var n = c ? c.margin : 0, m = b ? b.margin : 0, l = 0, p = 0, r = 0, t, u, s, v, w, B, C = 0, A = 0, D, E, I; + D = E = I = !1; + a && a.title && (a._titleTextBlock = new O(a.ctx, {text: a.title, + horizontalAlign: "center", fontSize: a.titleFontSize, fontFamily: a.titleFontFamily, fontWeight: a.titleFontWeight, fontColor: a.titleFontColor, fontStyle: a.titleFontStyle, textBaseline: "top"})); + c && c.title && (c._titleTextBlock = new O(c.ctx, {text: c.title, horizontalAlign: "center", fontSize: c.titleFontSize, fontFamily: c.titleFontFamily, fontWeight: c.titleFontWeight, fontColor: c.titleFontColor, fontStyle: c.titleFontStyle, textBaseline: "top"})); + b && b.title && (b._titleTextBlock = new O(b.ctx, {text: b.title, horizontalAlign: "center", + fontSize: b.titleFontSize, fontFamily: b.titleFontFamily, fontWeight: b.titleFontWeight, fontColor: b.titleFontColor, fontStyle: b.titleFontStyle, textBaseline: "top"})); + if ("normal" === d) { + var G = [], F = [], J = []; + a && a.title && (a._titleTextBlock.maxWidth = a.titleMaxWidth || e.width, a._titleTextBlock.maxHeight = a.titleWrap ? 0.8 * e.height : 1.5 * a.titleFontSize, a._titleTextBlock.angle = 0); + c && c.title && (c._titleTextBlock.maxWidth = c.titleMaxWidth || e.height, c._titleTextBlock.maxHeight = c.titleWrap ? 0.8 * e.width : 1.5 * c.titleFontSize, c._titleTextBlock.angle = + -90); + b && b.title && (b._titleTextBlock.maxWidth = b.titleMaxWidth || e.height, b._titleTextBlock.maxHeight = b.titleWrap ? 0.8 * e.width : 1.5 * b.titleFontSize, b._titleTextBlock.angle = 90); + for (; 4 > l++; ) { + a.lineCoordinates = {}; + t = Math.ceil(c ? c.createLabelsAndCalculateWidth() : 0); + F.push(t); + f = Math.round(e.x1 + t + n); + u = Math.ceil(b ? b.createLabelsAndCalculateWidth() : 0); + J.push(u); + g = Math.round(e.x2 - u - m > a.chart.width - 10 ? a.chart.width - 10 : e.x2 - u - m); + !a.labelAutoFit || (x(w) || x(B)) || (0 < a.labelAngle ? B + r > g && (C += 0 < a.labelAngle ? B + r - g - u : 0) : 0 > + a.labelAngle ? w - p < f && w - p < a.viewportMinimum && (A = f - (n + a.tickLength + t + w - p + a.labelFontSize / 2)) : 0 === a.labelAngle && (B + r > g && (C = B + r / 2 - g - u), w - p < f && w - p < a.viewportMinimum && (A = f - n - a.tickLength - t - w + p / 2)), a.viewportMaximum === a.maximum && a.viewportMinimum === a.minimum && 0 < a.labelAngle && 0 < C ? g -= C : a.viewportMaximum === a.maximum && a.viewportMinimum === a.minimum && 0 > a.labelAngle && 0 < A ? f += A : a.viewportMaximum === a.maximum && a.viewportMinimum === a.minimum && 0 === a.labelAngle && (0 < A && (f += A), 0 < C && (g -= C))); + a.lineCoordinates.x1 = f; + a.lineCoordinates.x2 = + g; + a.lineCoordinates.width = Math.abs(g - f); + a.title && (a._titleTextBlock.maxWidth = 0 < a.titleMaxWidth && a.titleMaxWidth < a.lineCoordinates.width ? a.titleMaxWidth : a.lineCoordinates.width); + s = Math.ceil(a.createLabelsAndCalculateHeight()); + G.push(s); + a._labels && 1 < a._labels.length && (d = h = 0, h = a._labels[1], d = "dateTime" === a.chart.plotInfo.axisXValueType ? a._labels[a._labels.length - 2] : a._labels[a._labels.length - 1], p = h.textBlock.width * Math.cos(Math.PI / 180 * Math.abs(h.textBlock.angle)) + (h.textBlock.height - d.textBlock.fontSize / + 2) * Math.sin(Math.PI / 180 * Math.abs(h.textBlock.angle)), r = d.textBlock.width * Math.cos(Math.PI / 180 * Math.abs(d.textBlock.angle)) + (d.textBlock.height - d.textBlock.fontSize / 2) * Math.sin(Math.PI / 180 * Math.abs(d.textBlock.angle))); + q.panEnabled ? s = q.sessionVariables.axisX.height : q.sessionVariables.axisX.height = s; + d = Math.round(e.y2 - s - a.margin); + h = Math.round(e.y2 - a.margin); + a.lineCoordinates.y1 = d; + a.lineCoordinates.y2 = d; + a.boundingRect = {x1: f, y1: d, x2: g, y2: h, width: g - f, height: h - d}; + c && (f = Math.round(e.x1 + c.margin), d = Math.round(10 > + e.y1 ? 10 : e.y1), g = Math.round(e.x1 + t + c.margin), h = Math.round(e.y2 - s - a.margin), c.lineCoordinates = {x1: g, y1: d, x2: g, y2: h, height: Math.abs(h - d)}, c.boundingRect = {x1: f, y1: d, x2: g, y2: h, width: g - f, height: h - d}, c.title && (c._titleTextBlock.maxWidth = 0 < c.titleMaxWidth && c.titleMaxWidth < c.lineCoordinates.height ? c.titleMaxWidth : c.lineCoordinates.height)); + b && (f = Math.round(a.lineCoordinates.x2), d = Math.round(10 > e.y1 ? 10 : e.y1), g = Math.round(f + u), h = Math.round(e.y2 - s - a.margin), b.lineCoordinates = {x1: f, y1: d, x2: f, y2: h, height: Math.abs(h - + d)}, b.boundingRect = {x1: f, y1: d, x2: g, y2: h, width: g - f, height: h - d}, b.title && (b._titleTextBlock.maxWidth = 0 < b.titleMaxWidth && b.titleMaxWidth < b.lineCoordinates.height ? b.titleMaxWidth : b.lineCoordinates.height)); + a.calculateValueToPixelConversionParameters(); + a._labels && 1 < a._labels.length && (w = (a._labels[1].position - a.viewportMinimum) * a.conversionParameters.pixelPerUnit + a.lineCoordinates.x1, B = "dateTime" === a.chart.plotInfo.axisXValueType ? (a._labels[a._labels.length - 2].position - a.viewportMinimum) * a.conversionParameters.pixelPerUnit + + a.lineCoordinates.x1 : (a._labels[a._labels.length - 1].position - a.viewportMinimum) * a.conversionParameters.pixelPerUnit + a.lineCoordinates.x1); + c && c.calculateValueToPixelConversionParameters(); + b && b.calculateValueToPixelConversionParameters(); + if (a || c || b) { + if (!x(G)) + for (l = 0; l < G.length; l++) + for (j = l + 1; j < G.length; j++) + G[l] == G[j] && (D = !0); + if (!x(F)) + for (l = 0; l < F.length; l++) + for (j = l + 1; j < F.length; j++) + F[l] == F[j] && (E = !0); + if (!x(J)) + for (l = 0; l < J.length; l++) + for (j = l + 1; j < J.length; j++) + J[l] == J[j] && (I = !0) + } + if (D && E && I) + break + } + k.save(); + k.rect(5, a.boundingRect.y1, a.chart.width - 10, a.boundingRect.height); + k.clip(); + a.renderLabelsTicksAndTitle(); + k.restore(); + c && c.renderLabelsTicksAndTitle(); + b && b.renderLabelsTicksAndTitle() + } else { + m = []; + w = []; + B = []; + a && a.title && (a._titleTextBlock.maxWidth = a.titleMaxWidth || e.height, a._titleTextBlock.maxHeight = a.titleWrap ? 0.8 * e.width : 1.5 * a.titleFontSize, a._titleTextBlock.angle = -90); + c && c.title && (c._titleTextBlock.maxWidth = c.titleMaxWidth || e.width, c._titleTextBlock.maxHeight = c.titleWrap ? 0.8 * e.height : 1.5 * c.titleFontSize, + c._titleTextBlock.angle = 0); + b && b.title && (b._titleTextBlock.maxWidth = c.titleMaxWidth || e.width, b._titleTextBlock.maxHeight = b.titleWrap ? 0.8 * e.height : 1.5 * b.titleFontSize, b._titleTextBlock.angle = 0); + for (; 4 > l++; ) { + C = Math.ceil(a.createLabelsAndCalculateWidth()); + m.push(C); + c && (c.lineCoordinates = {}, f = Math.round(e.x1 + C + a.margin), g = Math.round(e.x2 > c.chart.width - 10 ? c.chart.width - 10 : e.x2), c.labelAutoFit && !x(t) && (f = 0 > c.labelAngle ? Math.max(f, t) : 0 === c.labelAngle ? Math.max(f, t / 2) : f, g = 0 < c.labelAngle ? g - u : 0 === c.labelAngle ? + g - u / 2 : g), c.lineCoordinates.x1 = f, c.lineCoordinates.x2 = g, c.lineCoordinates.width = Math.abs(g - f), c.title && (c._titleTextBlock.maxWidth = 0 < c.titleMaxWidth && c.titleMaxWidth < c.lineCoordinates.width ? c.titleMaxWidth : c.lineCoordinates.width)); + b && (b.lineCoordinates = {}, f = Math.round(e.x1 + C + a.margin), g = Math.round(e.x2 > b.chart.width - 10 ? b.chart.width - 10 : e.x2), c && c.labelAutoFit && !x(s) && (f = 0 < b.labelAngle ? Math.max(f, s) : 0 === b.labelAngle ? Math.max(f, s / 2) : f, g -= v / 2), b.lineCoordinates.x1 = f, b.lineCoordinates.x2 = g, b.lineCoordinates.width = + Math.abs(g - f), b.title && (b._titleTextBlock.maxWidth = 0 < b.titleMaxWidth && b.titleMaxWidth < b.lineCoordinates.width ? b.titleMaxWidth : b.lineCoordinates.width)); + A = Math.ceil(c ? c.createLabelsAndCalculateHeight() : 0); + p = Math.ceil(b ? b.createLabelsAndCalculateHeight() : 0); + w.push(A); + B.push(p); + c && 0 < c._labels.length && (h = c._labels[0], d = c._labels[c._labels.length - 1], t = h.textBlock.width * Math.cos(Math.PI / 180 * Math.abs(h.textBlock.angle)) + (h.textBlock.height - d.textBlock.fontSize / 2) * Math.sin(Math.PI / 180 * Math.abs(h.textBlock.angle)), + u = d.textBlock.width * Math.cos(Math.PI / 180 * Math.abs(d.textBlock.angle)) + (d.textBlock.height - d.textBlock.fontSize / 2) * Math.sin(Math.PI / 180 * Math.abs(d.textBlock.angle))); + b && 0 < b._labels.length && (h = b._labels[0], d = b._labels[b._labels.length - 1], s = h.textBlock.width * Math.cos(Math.PI / 180 * Math.abs(h.textBlock.angle)) + (h.textBlock.height - d.textBlock.fontSize / 2) * Math.sin(Math.PI / 180 * Math.abs(h.textBlock.angle)), v = d.textBlock.width * Math.cos(Math.PI / 180 * Math.abs(d.textBlock.angle)) + (d.textBlock.height - d.textBlock.fontSize / + 2) * Math.sin(Math.PI / 180 * Math.abs(d.textBlock.angle))); + q.panEnabled ? A = q.sessionVariables.axisY.height : q.sessionVariables.axisY.height = A; + c && (d = Math.round(e.y2 - A - c.margin), h = Math.round(e.y2 - n > c.chart.height - 10 ? c.chart.height - 10 : e.y2 - n), c.lineCoordinates.y1 = d, c.lineCoordinates.y2 = d, c.boundingRect = {x1: f, y1: d, x2: g, y2: h, width: g - f, height: A}, c.title && (c._titleTextBlock.maxWidth = 0 < c.titleMaxWidth && c.titleMaxWidth < c.lineCoordinates.width ? c.titleMaxWidth : c.lineCoordinates.width)); + b && (d = Math.round(e.y1 + b.margin), + h = e.y1 + b.margin + p, b.lineCoordinates.y1 = h, b.lineCoordinates.y2 = h, b.boundingRect = {x1: f, y1: d, x2: g, y2: h, width: g - f, height: p}, b.title && (b._titleTextBlock.maxWidth = 0 < b.titleMaxWidth && b.titleMaxWidth < b.lineCoordinates.width ? b.titleMaxWidth : b.lineCoordinates.width)); + f = Math.round(e.x1 + a.margin); + d = Math.round(b ? b.lineCoordinates.y2 : 10 > e.y1 ? 10 : e.y1); + g = Math.round(e.x1 + C + a.margin); + h = Math.round(c ? c.lineCoordinates.y1 : e.y2 - n > a.chart.height - 10 ? a.chart.height - 10 : e.y2 - n); + c && c.labelAutoFit && (g = 0 > c.labelAngle ? Math.max(g, + t) : 0 === c.labelAngle ? Math.max(g, t / 2) : g, f = 0 > c.labelAngle || 0 === c.labelAngle ? g - C : f); + b && b.labelAutoFit && (g = b.lineCoordinates.x1, f = g - C); + a.lineCoordinates = {x1: g, y1: d, x2: g, y2: h, height: Math.abs(h - d)}; + a.boundingRect = {x1: f, y1: d, x2: g, y2: h, width: g - f, height: h - d}; + a.title && (a._titleTextBlock.maxWidth = 0 < a.titleMaxWidth && a.titleMaxWidth < a.lineCoordinates.height ? a.titleMaxWidth : a.lineCoordinates.height); + a.calculateValueToPixelConversionParameters(); + c && c.calculateValueToPixelConversionParameters(); + b && b.calculateValueToPixelConversionParameters(); + if (a || c || b) { + if (!x(G)) + for (l = 0; l < G.length; l++) + for (j = l + 1; j < G.length; j++) + G[l] == G[j] && (D = !0); + if (!x(F)) + for (l = 0; l < F.length; l++) + for (j = l + 1; j < F.length; j++) + F[l] == F[j] && (E = !0); + if (!x(J)) + for (l = 0; l < J.length; l++) + for (j = l + 1; j < J.length; j++) + J[l] == J[j] && (I = !0) + } + if (D && E && I) + break + } + c && c.renderLabelsTicksAndTitle(); + b && b.renderLabelsTicksAndTitle(); + a.renderLabelsTicksAndTitle() + } + q.preparePlotArea(); + e = a.chart.plotArea; + k.save(); + k.rect(e.x1, e.y1, Math.abs(e.x2 - e.x1), Math.abs(e.y2 - e.y1)); + k.clip(); + a.renderStripLinesOfThicknessType("value"); + c && c.renderStripLinesOfThicknessType("value"); + b && b.renderStripLinesOfThicknessType("value"); + a.renderInterlacedColors(); + c && c.renderInterlacedColors(); + b && b.renderInterlacedColors(); + k.restore(); + a.renderGrid(); + c && c.renderGrid(); + b && b.renderGrid(); + a.renderAxisLine(); + c && c.renderAxisLine(); + b && b.renderAxisLine(); + a.renderStripLinesOfThicknessType("pixel"); + c && c.renderStripLinesOfThicknessType("pixel"); + b && b.renderStripLinesOfThicknessType("pixel") + }; + F.prototype.renderLabelsTicksAndTitle = function () { + var a = !1, c = + 0, b = 1, d = 0; + 0 !== this.labelAngle && 360 !== this.labelAngle && (b = 1.2); + if ("undefined" === typeof this._options.interval) { + if ("bottom" === this._position || "top" === this._position) { + for (var e = 0; e < this._labels.length; e++) + f = this._labels[e], f.position < this.viewportMinimum || (f = f.textBlock.width * Math.cos(Math.PI / 180 * this.labelAngle) + f.textBlock.height * Math.sin(Math.PI / 180 * this.labelAngle), c += f); + c > this.lineCoordinates.width * b && this.labelAutoFit && (a = !0) + } + if ("left" === this._position || "right" === this._position) { + for (e = 0; e < this._labels.length; e++) + f = + this._labels[e], f.position < this.viewportMinimum || (f = f.textBlock.height * Math.cos(Math.PI / 180 * this.labelAngle) + f.textBlock.width * Math.sin(Math.PI / 180 * this.labelAngle), c += f); + c > this.lineCoordinates.height * b && this.labelAutoFit && (a = !0) + } + } + if ("bottom" === this._position) { + for (var f, e = 0; e < this._labels.length; e++) + f = this._labels[e], f.position < this.viewportMinimum || f.position > this.viewportMaximum || (c = this.getPixelCoordinatesOnAxis(f.position), this.tickThickness && (this.ctx.lineWidth = this.tickThickness, this.ctx.strokeStyle = + this.tickColor, b = 1 === this.ctx.lineWidth % 2 ? (c.x << 0) + 0.5 : c.x << 0, this.ctx.beginPath(), this.ctx.moveTo(b, c.y << 0), this.ctx.lineTo(b, c.y + this.tickLength << 0), this.ctx.stroke()), a && 0 !== d++ % 2 && this.labelAutoFit || (0 === f.textBlock.angle ? (c.x -= f.textBlock.width / 2, c.y += this.tickLength + f.textBlock.fontSize / 2) : (c.x -= 0 > this.labelAngle ? f.textBlock.width * Math.cos(Math.PI / 180 * this.labelAngle) : 0, c.y += this.tickLength + Math.abs(0 > this.labelAngle ? f.textBlock.width * Math.sin(Math.PI / 180 * this.labelAngle) - 5 : 5)), f.textBlock.x = + c.x, f.textBlock.y = c.y, f.textBlock.render(!0))); + this.title && (this._titleTextBlock.measureText(), this._titleTextBlock.x = this.lineCoordinates.x1 + this.lineCoordinates.width / 2 - this._titleTextBlock.width / 2, this._titleTextBlock.y = this.boundingRect.y2 - this._titleTextBlock.height - 3, this._titleTextBlock.render(!0)) + } else if ("top" === this._position) { + for (e = 0; e < this._labels.length; e++) + f = this._labels[e], f.position < this.viewportMinimum || f.position > this.viewportMaximum || (c = this.getPixelCoordinatesOnAxis(f.position), + this.tickThickness && (this.ctx.lineWidth = this.tickThickness, this.ctx.strokeStyle = this.tickColor, b = 1 === this.ctx.lineWidth % 2 ? (c.x << 0) + 0.5 : c.x << 0, this.ctx.beginPath(), this.ctx.moveTo(b, c.y << 0), this.ctx.lineTo(b, c.y - this.tickLength << 0), this.ctx.stroke()), a && 0 !== d++ % 2 && this.labelAutoFit || (0 === f.textBlock.angle ? (c.x -= f.textBlock.width / 2, c.y -= this.tickLength + f.textBlock.height) : (c.x += (f.textBlock.height - this.tickLength - this.labelFontSize / 2) * Math.sin(Math.PI / 180 * this.labelAngle) - (0 < this.labelAngle ? f.textBlock.width * + Math.cos(Math.PI / 180 * this.labelAngle) : 0), c.y -= this.tickLength + (f.textBlock.height * Math.cos(Math.PI / 180 * this.labelAngle) + (0 < this.labelAngle ? f.textBlock.width * Math.sin(Math.PI / 180 * this.labelAngle) : 0))), f.textBlock.x = c.x, f.textBlock.y = c.y, f.textBlock.render(!0))); + this.title && (this._titleTextBlock.measureText(), this._titleTextBlock.x = this.lineCoordinates.x1 + this.lineCoordinates.width / 2 - this._titleTextBlock.width / 2, this._titleTextBlock.y = this.boundingRect.y1 + 1, this._titleTextBlock.render(!0)) + } else if ("left" === + this._position) { + for (e = 0; e < this._labels.length; e++) + f = this._labels[e], f.position < this.viewportMinimum || f.position > this.viewportMaximum || (c = this.getPixelCoordinatesOnAxis(f.position), this.tickThickness && (this.ctx.lineWidth = this.tickThickness, this.ctx.strokeStyle = this.tickColor, b = 1 === this.ctx.lineWidth % 2 ? (c.y << 0) + 0.5 : c.y << 0, this.ctx.beginPath(), this.ctx.moveTo(c.x << 0, b), this.ctx.lineTo(c.x - this.tickLength << 0, b), this.ctx.stroke()), a && 0 !== d++ % 2 && this.labelAutoFit || (0 === this.labelAngle ? (f.textBlock.y = c.y, + f.textBlock.x = c.x - f.textBlock.width * Math.cos(Math.PI / 180 * this.labelAngle) - this.tickLength - 5) : (f.textBlock.y = c.y - f.textBlock.width * Math.sin(Math.PI / 180 * this.labelAngle), f.textBlock.x = 0 < this.labelAngle ? c.x - f.textBlock.width * Math.cos(Math.PI / 180 * this.labelAngle) - this.tickLength - 5 : c.x - f.textBlock.width * Math.cos(Math.PI / 180 * this.labelAngle) + (f.textBlock.height - f.textBlock.fontSize / 2 - 5) * Math.sin(Math.PI / 180 * this.labelAngle) - this.tickLength), f.textBlock.render(!0))); + this.title && (this._titleTextBlock.measureText(), + this._titleTextBlock.x = this.boundingRect.x1 + 1, this._titleTextBlock.y = this.lineCoordinates.height / 2 + this._titleTextBlock.width / 2 + this.lineCoordinates.y1, this._titleTextBlock.render(!0)) + } else if ("right" === this._position) { + for (e = 0; e < this._labels.length; e++) + f = this._labels[e], f.position < this.viewportMinimum || f.position > this.viewportMaximum || (c = this.getPixelCoordinatesOnAxis(f.position), this.tickThickness && (this.ctx.lineWidth = this.tickThickness, this.ctx.strokeStyle = this.tickColor, b = 1 === this.ctx.lineWidth % + 2 ? (c.y << 0) + 0.5 : c.y << 0, this.ctx.beginPath(), this.ctx.moveTo(c.x << 0, b), this.ctx.lineTo(c.x + this.tickLength << 0, b), this.ctx.stroke()), a && 0 !== d++ % 2 && this.labelAutoFit || (0 === this.labelAngle ? (f.textBlock.y = c.y, f.textBlock.x = c.x + this.tickLength + 5) : (f.textBlock.y = 0 > this.labelAngle ? c.y : c.y - (f.textBlock.height - f.textBlock.fontSize / 2 - 5) * Math.cos(Math.PI / 180 * this.labelAngle), f.textBlock.x = 0 < this.labelAngle ? c.x + (f.textBlock.height - f.textBlock.fontSize / 2 - 5) * Math.sin(Math.PI / 180 * this.labelAngle) + this.tickLength : + c.x + this.tickLength + 5), f.textBlock.render(!0))); + this.title && (this._titleTextBlock.measureText(), this._titleTextBlock.x = this.boundingRect.x2 - 1, this._titleTextBlock.y = this.lineCoordinates.height / 2 - this._titleTextBlock.width / 2 + this.lineCoordinates.y1, this._titleTextBlock.render(!0)) + } + }; + F.prototype.renderInterlacedColors = function () { + var a = this.chart.plotArea.ctx, c, b, d = this.chart.plotArea, e = 0; + c = !0; + if (("bottom" === this._position || "top" === this._position) && this.interlacedColor) + for (a.fillStyle = this.interlacedColor, + e = 0; e < this._labels.length; e++) + this._labels[e].stripLine || (c ? (c = this.getPixelCoordinatesOnAxis(this._labels[e].position), b = e + 1 >= this._labels.length - 1 ? this.getPixelCoordinatesOnAxis(this.viewportMaximum) : this.getPixelCoordinatesOnAxis(this._labels[e + 1].position), a.fillRect(c.x, d.y1, Math.abs(b.x - c.x), Math.abs(d.y1 - d.y2)), c = !1) : c = !0); + else if (("left" === this._position || "right" === this._position) && this.interlacedColor) + for (a.fillStyle = this.interlacedColor, e = 0; e < this._labels.length; e++) + this._labels[e].stripLine || + (c ? (b = this.getPixelCoordinatesOnAxis(this._labels[e].position), c = e + 1 >= this._labels.length - 1 ? this.getPixelCoordinatesOnAxis(this.viewportMaximum) : this.getPixelCoordinatesOnAxis(this._labels[e + 1].position), a.fillRect(d.x1, c.y, Math.abs(d.x1 - d.x2), Math.abs(c.y - b.y)), c = !1) : c = !0); + a.beginPath() + }; + F.prototype.renderStripLinesOfThicknessType = function (a) { + if (this.stripLines && 0 < this.stripLines.length && a) { + for (var c = this, b, d = 0, d = 0; d < this.stripLines.length; d++) { + var e = this.stripLines[d]; + e._thicknessType === a && ("pixel" === + a && (e.value < this.viewportMinimum || e.value > this.viewportMaximum) || (e.showOnTop ? this.chart.addEventListener("dataAnimationIterationEnd", function () { + this.ctx.save(); + this.ctx.rect(this.chart.plotArea.x1, this.chart.plotArea.y1, this.chart.plotArea.width, this.chart.plotArea.height); + this.ctx.clip(); + e.render(); + this.ctx.restore() + }, e) : e.render())) + } + for (d = 0; d < this._stripLineLabels.length; d++) + if (e = this.stripLines[d], b = this._stripLineLabels[d], !(b.position < this.viewportMinimum || b.position > this.viewportMaximum)) + if (a = + this.getPixelCoordinatesOnAxis(b.position), "outside" === b.stripLine.labelPlacement) { + e && "pixel" === e._thicknessType && (this.ctx.lineWidth = e.thickness, this.ctx.strokeStyle = e.color); + if ("bottom" === this._position) { + var f = 1 === this.ctx.lineWidth % 2 ? (a.x << 0) + 0.5 : a.x << 0; + this.ctx.beginPath(); + this.ctx.moveTo(f, a.y << 0); + this.ctx.lineTo(f, a.y + this.tickLength << 0); + this.ctx.stroke(); + 0 === this.labelAngle ? (a.x -= b.textBlock.width / 2, a.y += this.tickLength + b.textBlock.fontSize / 2) : (a.x -= 0 > this.labelAngle ? b.textBlock.width * Math.cos(Math.PI / + 180 * this.labelAngle) : 0, a.y += this.tickLength + Math.abs(0 > this.labelAngle ? b.textBlock.width * Math.sin(Math.PI / 180 * this.labelAngle) + 5 : 5)) + } else + "top" === this._position ? (f = 1 === this.ctx.lineWidth % 2 ? (a.x << 0) + 0.5 : a.x << 0, this.ctx.beginPath(), this.ctx.moveTo(f, a.y << 0), this.ctx.lineTo(f, a.y - this.tickLength << 0), this.ctx.stroke(), 0 === this.labelAngle ? (a.x -= b.textBlock.width / 2, a.y -= this.tickLength + b.textBlock.height) : (a.x += (b.textBlock.height - this.tickLength - this.labelFontSize / 2) * Math.sin(Math.PI / 180 * this.labelAngle) - + (0 < this.labelAngle ? b.textBlock.width * Math.cos(Math.PI / 180 * this.labelAngle) : 0), a.y -= this.tickLength + (b.textBlock.height * Math.cos(Math.PI / 180 * this.labelAngle) + (0 < this.labelAngle ? b.textBlock.width * Math.sin(Math.PI / 180 * this.labelAngle) : 0)))) : "left" === this._position ? (f = 1 === this.ctx.lineWidth % 2 ? (a.y << 0) + 0.5 : a.y << 0, this.ctx.beginPath(), this.ctx.moveTo(a.x << 0, f), this.ctx.lineTo(a.x - this.tickLength << 0, f), this.ctx.stroke(), 0 === this.labelAngle ? a.x = a.x - b.textBlock.width * Math.cos(Math.PI / 180 * this.labelAngle) - + this.tickLength - 5 : (a.y -= b.textBlock.width * Math.sin(Math.PI / 180 * this.labelAngle), a.x = 0 < this.labelAngle ? a.x - b.textBlock.width * Math.cos(Math.PI / 180 * this.labelAngle) - this.tickLength - 5 : a.x - b.textBlock.width * Math.cos(Math.PI / 180 * this.labelAngle) + (b.textBlock.height - b.textBlock.fontSize / 2 - 5) * Math.sin(Math.PI / 180 * this.labelAngle) - this.tickLength)) : "right" === this._position && (f = 1 === this.ctx.lineWidth % 2 ? (a.y << 0) + 0.5 : a.y << 0, this.ctx.beginPath(), this.ctx.moveTo(a.x << 0, f), this.ctx.lineTo(a.x + this.tickLength << 0, + f), this.ctx.stroke(), 0 === this.labelAngle ? a.x = a.x + this.tickLength + 5 : (a.y = 0 > this.labelAngle ? a.y : a.y - (b.textBlock.height - b.textBlock.fontSize / 2 - 5) * Math.cos(Math.PI / 180 * this.labelAngle), a.x = 0 < this.labelAngle ? a.x + (b.textBlock.height - b.textBlock.fontSize / 2 - 5) * Math.sin(Math.PI / 180 * this.labelAngle) + this.tickLength : a.x + this.tickLength + 5)); + b.textBlock.x = a.x; + b.textBlock.y = a.y; + e.showOnTop ? this.chart.addEventListener("dataAnimationIterationEnd", b.textBlock.render, b.textBlock) : b.textBlock.render(!0) + } else + b.textBlock.angle = + -90, "bottom" === this._position ? (b.textBlock.maxWidth = this._options.stripLines[d].labelMaxWidth ? this._options.stripLines[d].labelMaxWidth : this.chart.plotArea.height - 3, b.textBlock.measureText(), a.x - b.textBlock.height > this.chart.plotArea.x1 ? x(e.startValue) ? a.x -= b.textBlock.height - b.textBlock.fontSize / 2 : a.x -= b.textBlock.height / 2 - b.textBlock.fontSize / 2 + 3 : (b.textBlock.angle = 90, x(e.startValue) ? a.x += b.textBlock.height - b.textBlock.fontSize / 2 : a.x += b.textBlock.height / 2 - b.textBlock.fontSize / 2 + 3), a.y = -90 === b.textBlock.angle ? + "near" === b.stripLine.labelAlign ? this.chart.plotArea.y2 - 3 : "center" === b.stripLine.labelAlign ? (this.chart.plotArea.y2 + this.chart.plotArea.y1 + b.textBlock.width) / 2 : this.chart.plotArea.y1 + b.textBlock.width + 3 : "near" === b.stripLine.labelAlign ? this.chart.plotArea.y2 - b.textBlock.width - 3 : "center" === b.stripLine.labelAlign ? (this.chart.plotArea.y2 + this.chart.plotArea.y1 - b.textBlock.width) / 2 : this.chart.plotArea.y1 + 3) : "top" === this._position ? (b.textBlock.maxWidth = this._options.stripLines[d].labelMaxWidth ? this._options.stripLines[d].labelMaxWidth : + this.chart.plotArea.height - 3, b.textBlock.measureText(), a.x - b.textBlock.height > this.chart.plotArea.x1 ? x(e.startValue) ? a.x -= b.textBlock.height - b.textBlock.fontSize / 2 : a.x -= b.textBlock.height / 2 - b.textBlock.fontSize / 2 + 3 : (b.textBlock.angle = 90, x(e.startValue) ? a.x += b.textBlock.height - b.textBlock.fontSize / 2 : a.x += b.textBlock.height / 2 - b.textBlock.fontSize / 2 + 3), a.y = -90 === b.textBlock.angle ? "near" === b.stripLine.labelAlign ? this.chart.plotArea.y1 + b.textBlock.width + 3 : "center" === b.stripLine.labelAlign ? (this.chart.plotArea.y2 + + this.chart.plotArea.y1 + b.textBlock.width) / 2 : this.chart.plotArea.y2 - 3 : "near" === b.stripLine.labelAlign ? this.chart.plotArea.y1 + 3 : "center" === b.stripLine.labelAlign ? (this.chart.plotArea.y2 + this.chart.plotArea.y1 - b.textBlock.width) / 2 : this.chart.plotArea.y2 - b.textBlock.width - 3) : "left" === this._position ? (b.textBlock.maxWidth = this._options.stripLines[d].labelMaxWidth ? this._options.stripLines[d].labelMaxWidth : this.chart.plotArea.width - 3, b.textBlock.angle = 0, b.textBlock.measureText(), a.y - b.textBlock.height > this.chart.plotArea.y1 ? + x(e.startValue) ? a.y -= b.textBlock.height - b.textBlock.fontSize / 2 : a.y -= b.textBlock.height / 2 - b.textBlock.fontSize + 3 : a.y - b.textBlock.height < this.chart.plotArea.y2 ? a.y += b.textBlock.fontSize / 2 + 3 : x(e.startValue) ? a.y -= b.textBlock.height - b.textBlock.fontSize / 2 : a.y -= b.textBlock.height / 2 - b.textBlock.fontSize + 3, a.x = "near" === b.stripLine.labelAlign ? this.chart.plotArea.x1 + 3 : "center" === b.stripLine.labelAlign ? (this.chart.plotArea.x2 + this.chart.plotArea.x1) / 2 - b.textBlock.width / 2 : this.chart.plotArea.x2 - b.textBlock.width - + 3) : "right" === this._position && (b.textBlock.maxWidth = this._options.stripLines[d].labelMaxWidth ? this._options.stripLines[d].labelMaxWidth : this.chart.plotArea.width - 3, b.textBlock.angle = 0, b.textBlock.measureText(), a.y - +b.textBlock.height > this.chart.plotArea.y1 ? x(e.startValue) ? a.y -= b.textBlock.height - b.textBlock.fontSize / 2 : a.y -= b.textBlock.height / 2 - b.textBlock.fontSize / 2 - 3 : a.y - b.textBlock.height < this.chart.plotArea.y2 ? a.y += b.textBlock.fontSize / 2 + 3 : x(e.startValue) ? a.y -= b.textBlock.height - b.textBlock.fontSize / + 2 : a.y -= b.textBlock.height / 2 - b.textBlock.fontSize / 2 + 3, a.x = "near" === b.stripLine.labelAlign ? this.chart.plotArea.x2 - b.textBlock.width - 3 : "center" === b.stripLine.labelAlign ? (this.chart.plotArea.x2 + this.chart.plotArea.x1) / 2 - b.textBlock.width / 2 : this.chart.plotArea.x1 + 3), b.textBlock.x = a.x, b.textBlock.y = a.y, e.showOnTop ? (this.ctx.save(), this.ctx.rect(this.chart.plotArea.x1, this.chart.plotArea.y1, this.chart.plotArea.width, this.chart.plotArea.height), this.ctx.clip(), this.chart.addEventListener("dataAnimationIterationEnd", + function () { + b.textBlock.render(!0); + c.ctx.restore() + }, b.textBlock)) : (this.ctx.save(), this.ctx.rect(this.chart.plotArea.x1, this.chart.plotArea.y1, this.chart.plotArea.width, this.chart.plotArea.height), this.ctx.clip(), b.textBlock.render(!0), this.ctx.restore()) + } + }; + F.prototype.renderGrid = function () { + if (this.gridThickness && 0 < this.gridThickness) { + var a = this.chart.ctx; + a.save(); + var c, b = this.chart.plotArea; + a.lineWidth = this.gridThickness; + a.strokeStyle = this.gridColor; + a.setLineDash && a.setLineDash(D(this.gridDashType, + this.gridThickness)); + if ("bottom" === this._position || "top" === this._position) + for (d = 0; d < this._labels.length && !this._labels[d].stripLine; d++) + this._labels[d].position < this.viewportMinimum || this._labels[d].position > this.viewportMaximum || (a.beginPath(), c = this.getPixelCoordinatesOnAxis(this._labels[d].position), c = 1 === a.lineWidth % 2 ? (c.x << 0) + 0.5 : c.x << 0, a.moveTo(c, b.y1 << 0), a.lineTo(c, b.y2 << 0), a.stroke()); + else if ("left" === this._position || "right" === this._position) + for (var d = 0; d < this._labels.length && !this._labels[d].stripLine; d++) + this._labels[d].position < + this.viewportMinimum || this._labels[d].position > this.viewportMaximum || (a.beginPath(), c = this.getPixelCoordinatesOnAxis(this._labels[d].position), c = 1 === a.lineWidth % 2 ? (c.y << 0) + 0.5 : c.y << 0, a.moveTo(b.x1 << 0, c), a.lineTo(b.x2 << 0, c), a.stroke()); + a.restore() + } + }; + F.prototype.renderAxisLine = function () { + var a = this.chart.ctx; + a.save(); + if ("bottom" === this._position || "top" === this._position) { + if (this.lineThickness) { + a.lineWidth = this.lineThickness; + a.strokeStyle = this.lineColor ? this.lineColor : "black"; + a.setLineDash && a.setLineDash(D(this.lineDashType, + this.lineThickness)); + var c = 1 === this.lineThickness % 2 ? (this.lineCoordinates.y1 << 0) + 0.5 : this.lineCoordinates.y1 << 0; + a.beginPath(); + a.moveTo(this.lineCoordinates.x1, c); + a.lineTo(this.lineCoordinates.x2, c); + a.stroke() + } + } else + "left" !== this._position && "right" !== this._position || !this.lineThickness || (a.lineWidth = this.lineThickness, a.strokeStyle = this.lineColor, a.setLineDash && a.setLineDash(D(this.lineDashType, this.lineThickness)), c = 1 === this.lineThickness % 2 ? (this.lineCoordinates.x1 << 0) + 0.5 : this.lineCoordinates.x1 << + 0, a.beginPath(), a.moveTo(c, this.lineCoordinates.y1), a.lineTo(c, this.lineCoordinates.y2), a.stroke()); + a.restore() + }; + F.prototype.getPixelCoordinatesOnAxis = function (a) { + var c = {}; + if ("bottom" === this._position || "top" === this._position) { + var b = this.conversionParameters.pixelPerUnit; + c.x = this.conversionParameters.reference + b * (a - this.viewportMinimum); + c.y = this.lineCoordinates.y1 + } + if ("left" === this._position || "right" === this._position) + b = -this.conversionParameters.pixelPerUnit, c.y = this.conversionParameters.reference - + b * (a - this.viewportMinimum), c.x = this.lineCoordinates.x2; + return c + }; + F.prototype.convertPixelToValue = function (a) { + if (!a) + return null; + var c = 0; + return c = this.conversionParameters.minimum + (("left" === this._position || "right" === this._position ? a.y : a.x) - this.conversionParameters.reference) / this.conversionParameters.pixelPerUnit + }; + F.prototype.setViewPortRange = function (a, c) { + this.sessionVariables.newViewportMinimum = this.viewportMinimum = Math.min(a, c); + this.sessionVariables.newViewportMaximum = this.viewportMaximum = Math.max(a, + c) + }; + F.prototype.getXValueAt = function (a) { + if (!a) + return null; + var c = null; + "left" === this._position ? c = (this.chart.axisX.viewportMaximum - this.chart.axisX.viewportMinimum) / this.chart.axisX.lineCoordinates.height * (this.chart.axisX.lineCoordinates.y2 - a.y) + this.chart.axisX.viewportMinimum : "bottom" === this._position && (c = (this.chart.axisX.viewportMaximum - this.chart.axisX.viewportMinimum) / this.chart.axisX.lineCoordinates.width * (a.x - this.chart.axisX.lineCoordinates.x1) + this.chart.axisX.viewportMinimum); + return c + }; + F.prototype.calculateValueToPixelConversionParameters = function (a) { + this.reversed = !1; + a = {pixelPerUnit: null, minimum: null, reference: null}; + var c = this.lineCoordinates.width, b = this.lineCoordinates.height; + a.minimum = this.viewportMinimum; + if ("bottom" === this._position || "top" === this._position) + a.pixelPerUnit = (this.reversed ? -1 : 1) * c / Math.abs(this.viewportMaximum - this.viewportMinimum), a.reference = this.reversed ? this.lineCoordinates.x2 : this.lineCoordinates.x1; + if ("left" === this._position || "right" === this._position) + a.pixelPerUnit = + (this.reversed ? 1 : -1) * b / Math.abs(this.viewportMaximum - this.viewportMinimum), a.reference = this.reversed ? this.lineCoordinates.y1 : this.lineCoordinates.y2; + this.conversionParameters = a + }; + F.prototype.calculateAxisParameters = function () { + var a = this.chart.layoutManager.getFreeSpace(), c = !1; + "bottom" === this._position || "top" === this._position ? (this.maxWidth = a.width, this.maxHeight = a.height) : (this.maxWidth = a.height, this.maxHeight = a.width); + var a = "axisX" === this.type ? 500 > this.maxWidth ? 8 : Math.max(6, Math.floor(this.maxWidth / + 62)) : Math.max(Math.floor(this.maxWidth / 40), 2), b, d, e, f; + f = 0; + if (null === this.viewportMinimum || isNaN(this.viewportMinimum)) + this.viewportMinimum = this.minimum; + if (null === this.viewportMaximum || isNaN(this.viewportMaximum)) + this.viewportMaximum = this.maximum; + "axisX" === this.type ? (b = null !== this.viewportMinimum ? this.viewportMinimum : this.dataInfo.viewPortMin, d = null !== this.viewportMaximum ? this.viewportMaximum : this.dataInfo.viewPortMax, 0 === d - b && (f = "undefined" === typeof this._options.interval ? 0.4 : this._options.interval, + d += f, b -= f), Infinity !== this.dataInfo.minDiff ? e = this.dataInfo.minDiff : 1 < d - b ? e = 0.5 * Math.abs(d - b) : (e = 1, "dateTime" === this.chart.plotInfo.axisXValueType && (c = !0))) : "axisY" === this.type && (b = null !== this.viewportMinimum ? this.viewportMinimum : this.dataInfo.viewPortMin, d = null !== this.viewportMaximum ? this.viewportMaximum : this.dataInfo.viewPortMax, isFinite(b) || isFinite(d) ? isFinite(b) ? isFinite(d) || (d = b) : b = d : (d = "undefined" === typeof this._options.interval ? -Infinity : this._options.interval, b = 0), 0 === b && 0 === d ? (d += 9, b = 0) : + 0 === d - b ? (f = Math.min(Math.abs(0.01 * Math.abs(d)), 5), d += f, b -= f) : b > d ? (f = Math.min(Math.abs(0.01 * Math.abs(d - b)), 5), 0 <= d ? b = d - f : d = b + f) : (f = Math.min(Math.abs(0.01 * Math.abs(d - b)), 0.05), 0 !== d && (d += f), 0 !== b && (b -= f)), e = Infinity !== this.dataInfo.minDiff ? this.dataInfo.minDiff : 1 < d - b ? 0.5 * Math.abs(d - b) : 1, this.includeZero && (null === this.viewportMinimum || isNaN(this.viewportMinimum)) && 0 < b && (b = 0), this.includeZero && (null === this.viewportMaximum || isNaN(this.viewportMaximum)) && 0 > d && (d = 0)); + f = (isNaN(this.viewportMaximum) || null === + this.viewportMaximum ? d : this.viewportMaximum) - (isNaN(this.viewportMinimum) || null === this.viewportMinimum ? b : this.viewportMinimum); + if ("axisX" === this.type && "dateTime" === this.chart.plotInfo.axisXValueType) { + this.intervalType || (f / 1 <= a ? (this.interval = 1, this.intervalType = "millisecond") : f / 2 <= a ? (this.interval = 2, this.intervalType = "millisecond") : f / 5 <= a ? (this.interval = 5, this.intervalType = "millisecond") : f / 10 <= a ? (this.interval = 10, this.intervalType = "millisecond") : f / 20 <= a ? (this.interval = 20, this.intervalType = "millisecond") : + f / 50 <= a ? (this.interval = 50, this.intervalType = "millisecond") : f / 100 <= a ? (this.interval = 100, this.intervalType = "millisecond") : f / 200 <= a ? (this.interval = 200, this.intervalType = "millisecond") : f / 250 <= a ? (this.interval = 250, this.intervalType = "millisecond") : f / 300 <= a ? (this.interval = 300, this.intervalType = "millisecond") : f / 400 <= a ? (this.interval = 400, this.intervalType = "millisecond") : f / 500 <= a ? (this.interval = 500, this.intervalType = "millisecond") : f / (1 * E.secondDuration) <= a ? (this.interval = 1, this.intervalType = "second") : f / (2 * + E.secondDuration) <= a ? (this.interval = 2, this.intervalType = "second") : f / (5 * E.secondDuration) <= a ? (this.interval = 5, this.intervalType = "second") : f / (10 * E.secondDuration) <= a ? (this.interval = 10, this.intervalType = "second") : f / (15 * E.secondDuration) <= a ? (this.interval = 15, this.intervalType = "second") : f / (20 * E.secondDuration) <= a ? (this.interval = 20, this.intervalType = "second") : f / (30 * E.secondDuration) <= a ? (this.interval = 30, this.intervalType = "second") : f / (1 * E.minuteDuration) <= a ? (this.interval = 1, this.intervalType = "minute") : f / + (2 * E.minuteDuration) <= a ? (this.interval = 2, this.intervalType = "minute") : f / (5 * E.minuteDuration) <= a ? (this.interval = 5, this.intervalType = "minute") : f / (10 * E.minuteDuration) <= a ? (this.interval = 10, this.intervalType = "minute") : f / (15 * E.minuteDuration) <= a ? (this.interval = 15, this.intervalType = "minute") : f / (20 * E.minuteDuration) <= a ? (this.interval = 20, this.intervalType = "minute") : f / (30 * E.minuteDuration) <= a ? (this.interval = 30, this.intervalType = "minute") : f / (1 * E.hourDuration) <= a ? (this.interval = 1, this.intervalType = "hour") : f / + (2 * E.hourDuration) <= a ? (this.interval = 2, this.intervalType = "hour") : f / (3 * E.hourDuration) <= a ? (this.interval = 3, this.intervalType = "hour") : f / (6 * E.hourDuration) <= a ? (this.interval = 6, this.intervalType = "hour") : f / (1 * E.dayDuration) <= a ? (this.interval = 1, this.intervalType = "day") : f / (2 * E.dayDuration) <= a ? (this.interval = 2, this.intervalType = "day") : f / (4 * E.dayDuration) <= a ? (this.interval = 4, this.intervalType = "day") : f / (1 * E.weekDuration) <= a ? (this.interval = 1, this.intervalType = "week") : f / (2 * E.weekDuration) <= a ? (this.interval = 2, + this.intervalType = "week") : f / (3 * E.weekDuration) <= a ? (this.interval = 3, this.intervalType = "week") : f / (1 * E.monthDuration) <= a ? (this.interval = 1, this.intervalType = "month") : f / (2 * E.monthDuration) <= a ? (this.interval = 2, this.intervalType = "month") : f / (3 * E.monthDuration) <= a ? (this.interval = 3, this.intervalType = "month") : f / (6 * E.monthDuration) <= a ? (this.interval = 6, this.intervalType = "month") : (this.interval = f / (1 * E.yearDuration) <= a ? 1 : f / (2 * E.yearDuration) <= a ? 2 : f / (4 * E.yearDuration) <= a ? 4 : Math.floor(F.getNiceNumber(f / (a - 1), !0) / + E.yearDuration), this.intervalType = "year")); + if (null === this.viewportMinimum || isNaN(this.viewportMinimum)) + this.viewportMinimum = b - e / 2; + if (null === this.viewportMaximum || isNaN(this.viewportMaximum)) + this.viewportMaximum = d + e / 2; + c ? this.autoValueFormatString = "MMM DD YYYY HH:mm" : "year" === this.intervalType ? this.autoValueFormatString = "YYYY" : "month" === this.intervalType ? this.autoValueFormatString = "MMM YYYY" : "week" === this.intervalType ? this.autoValueFormatString = "MMM DD YYYY" : "day" === this.intervalType ? this.autoValueFormatString = + "MMM DD YYYY" : "hour" === this.intervalType ? this.autoValueFormatString = "hh:mm TT" : "minute" === this.intervalType ? this.autoValueFormatString = "hh:mm TT" : "second" === this.intervalType ? this.autoValueFormatString = "hh:mm:ss TT" : "millisecond" === this.intervalType && (this.autoValueFormatString = "fff'ms'"); + this.valueFormatString || (this.valueFormatString = this.autoValueFormatString) + } else { + this.intervalType = "number"; + f = F.getNiceNumber(f, !1); + this.interval = this._options && 0 < this._options.interval ? this._options.interval : F.getNiceNumber(f / + (a - 1), !0); + if (null === this.viewportMinimum || isNaN(this.viewportMinimum)) + this.viewportMinimum = "axisX" === this.type ? b - e / 2 : Math.floor(b / this.interval) * this.interval; + if (null === this.viewportMaximum || isNaN(this.viewportMaximum)) + this.viewportMaximum = "axisX" === this.type ? d + e / 2 : Math.ceil(d / this.interval) * this.interval; + 0 === this.viewportMaximum && 0 === this.viewportMinimum && (0 === this._options.viewportMinimum ? this.viewportMaximum += 10 : 0 === this._options.viewportMaximum && (this.viewportMinimum -= 10), this._options && "undefined" === + typeof this._options.interval && (this.interval = F.getNiceNumber((this.viewportMaximum - this.viewportMinimum) / (a - 1), !0))) + } + if (null === this.minimum || null === this.maximum) + if ("axisX" === this.type ? (b = null !== this.minimum ? this.minimum : this.dataInfo.min, d = null !== this.maximum ? this.maximum : this.dataInfo.max, 0 === d - b && (f = "undefined" === typeof this._options.interval ? 0.4 : this._options.interval, d += f, b -= f), e = Infinity !== this.dataInfo.minDiff ? this.dataInfo.minDiff : 1 < d - b ? 0.5 * Math.abs(d - b) : 1) : "axisY" === this.type && (b = null !== + this.minimum ? this.minimum : this.dataInfo.min, d = null !== this.maximum ? this.maximum : this.dataInfo.max, isFinite(b) || isFinite(d) ? 0 === b && 0 === d ? (d += 9, b = 0) : 0 === d - b ? (f = Math.min(Math.abs(0.01 * Math.abs(d)), 5), d += f, b -= f) : b > d ? (f = Math.min(Math.abs(0.01 * Math.abs(d - b)), 5), 0 <= d ? b = d - f : d = b + f) : (f = Math.min(Math.abs(0.01 * Math.abs(d - b)), 0.05), 0 !== d && (d += f), 0 !== b && (b -= f)) : (d = "undefined" === typeof this._options.interval ? -Infinity : this._options.interval, b = 0), e = Infinity !== this.dataInfo.minDiff ? this.dataInfo.minDiff : 1 < d - b ? 0.5 * + Math.abs(d - b) : 1, this.includeZero && (null === this.minimum || isNaN(this.minimum)) && 0 < b && (b = 0), this.includeZero && (null === this.maximum || isNaN(this.maximum)) && 0 > d && (d = 0)), "axisX" === this.type && "dateTime" === this.chart.plotInfo.axisXValueType) { + if (null === this.minimum || isNaN(this.minimum)) + this.minimum = b - e / 2; + if (null === this.maximum || isNaN(this.maximum)) + this.maximum = d + e / 2 + } else + this.intervalType = "number", null === this.minimum && (this.minimum = "axisX" === this.type ? b - e / 2 : Math.floor(b / this.interval) * this.interval, this.minimum = + Math.min(this.minimum, null === this.sessionVariables.viewportMinimum || isNaN(this.sessionVariables.viewportMinimum) ? Infinity : this.sessionVariables.viewportMinimum)), null === this.maximum && (this.maximum = "axisX" === this.type ? d + e / 2 : Math.ceil(d / this.interval) * this.interval, this.maximum = Math.max(this.maximum, null === this.sessionVariables.viewportMaximum || isNaN(this.sessionVariables.viewportMaximum) ? -Infinity : this.sessionVariables.viewportMaximum)), 0 === this.maximum && 0 === this.minimum && (0 === this._options.minimum ? + this.maximum += 10 : 0 === this._options.maximum && (this.minimum -= 10)); + this.viewportMinimum = Math.max(this.viewportMinimum, this.minimum); + this.viewportMaximum = Math.min(this.viewportMaximum, this.maximum); + this.intervalStartPosition = "axisX" === this.type && "dateTime" === this.chart.plotInfo.axisXValueType ? this.getLabelStartPoint(new Date(this.viewportMinimum), this.intervalType, this.interval) : Math.floor((this.viewportMinimum + 0.2 * this.interval) / this.interval) * this.interval; + if (!this.valueFormatString && (this.valueFormatString = + "#,##0.##", f = Math.abs(this.viewportMaximum - this.viewportMinimum), 1 > f)) { + c = Math.floor(Math.abs(Math.log(f) / Math.LN10)) + 2; + if (isNaN(c) || !isFinite(c)) + c = 2; + if (2 < c) + for (b = 0; b < c - 2; b++) + this.valueFormatString += "#" + } + }; + F.getNiceNumber = function (a, c) { + var b = Math.floor(Math.log(a) / Math.LN10), d = a / Math.pow(10, b); + return Number(((c ? 1.5 > d ? 1 : 3 > d ? 2 : 7 > d ? 5 : 10 : 1 >= d ? 1 : 2 >= d ? 2 : 5 >= d ? 5 : 10) * Math.pow(10, b)).toFixed(20)) + }; + F.prototype.getLabelStartPoint = function () { + var a = E[this.intervalType + "Duration"] * this.interval, a = new Date(Math.floor(this.viewportMinimum / + a) * a); + if ("millisecond" !== this.intervalType) + if ("second" === this.intervalType) + 0 < a.getMilliseconds() && (a.setSeconds(a.getSeconds() + 1), a.setMilliseconds(0)); + else if ("minute" === this.intervalType) { + if (0 < a.getSeconds() || 0 < a.getMilliseconds()) + a.setMinutes(a.getMinutes() + 1), a.setSeconds(0), a.setMilliseconds(0) + } else if ("hour" === this.intervalType) { + if (0 < a.getMinutes() || 0 < a.getSeconds() || 0 < a.getMilliseconds()) + a.setHours(a.getHours() + 1), a.setMinutes(0), a.setSeconds(0), a.setMilliseconds(0) + } else if ("day" === this.intervalType) { + if (0 < + a.getHours() || 0 < a.getMinutes() || 0 < a.getSeconds() || 0 < a.getMilliseconds()) + a.setDate(a.getDate() + 1), a.setHours(0), a.setMinutes(0), a.setSeconds(0), a.setMilliseconds(0) + } else if ("week" === this.intervalType) { + if (0 < a.getDay() || 0 < a.getHours() || 0 < a.getMinutes() || 0 < a.getSeconds() || 0 < a.getMilliseconds()) + a.setDate(a.getDate() + (7 - a.getDay())), a.setHours(0), a.setMinutes(0), a.setSeconds(0), a.setMilliseconds(0) + } else if ("month" === this.intervalType) { + if (1 < a.getDate() || 0 < a.getHours() || 0 < a.getMinutes() || 0 < a.getSeconds() || + 0 < a.getMilliseconds()) + a.setMonth(a.getMonth() + 1), a.setDate(1), a.setHours(0), a.setMinutes(0), a.setSeconds(0), a.setMilliseconds(0) + } else + "year" === this.intervalType && (0 < a.getMonth() || 1 < a.getDate() || 0 < a.getHours() || 0 < a.getMinutes() || 0 < a.getSeconds() || 0 < a.getMilliseconds()) && (a.setFullYear(a.getFullYear() + 1), a.setMonth(0), a.setDate(1), a.setHours(0), a.setMinutes(0), a.setSeconds(0), a.setMilliseconds(0)); + return a + }; + T(pa, L); + pa.prototype.render = function () { + this.ctx.save(); + var a = this.parent.getPixelCoordinatesOnAxis(this.value), + c = Math.abs("pixel" === this._thicknessType ? this.thickness : this.parent.conversionParameters.pixelPerUnit * this.thickness); + if (0 < c) { + var b = null === this.opacity ? 1 : this.opacity; + this.ctx.strokeStyle = this.color; + this.ctx.beginPath(); + var d = this.ctx.globalAlpha; + this.ctx.globalAlpha = b; + C(this.id); + var e, f, g, h; + this.ctx.lineWidth = c; + this.ctx.setLineDash && this.ctx.setLineDash(D(this.lineDashType, c)); + if ("bottom" === this.parent._position || "top" === this.parent._position) + e = f = 1 === this.ctx.lineWidth % 2 ? (a.x << 0) + 0.5 : a.x << 0, g = this.chart.plotArea.y1, + h = this.chart.plotArea.y2; + else if ("left" === this.parent._position || "right" === this.parent._position) + g = h = 1 === this.ctx.lineWidth % 2 ? (a.y << 0) + 0.5 : a.y << 0, e = this.chart.plotArea.x1, f = this.chart.plotArea.x2; + this.ctx.moveTo(e, g); + this.ctx.lineTo(f, h); + this.ctx.stroke(); + this.ctx.globalAlpha = d + } + this.ctx.restore() + }; + T(V, L); + V.prototype._initialize = function () { + if (this.enabled) { + this.container = document.createElement("div"); + this.container.setAttribute("class", "canvasjs-chart-tooltip"); + this.container.style.position = "absolute"; + this.container.style.height = "auto"; + this.container.style.boxShadow = "1px 1px 2px 2px rgba(0,0,0,0.1)"; + this.container.style.zIndex = "1000"; + this.container.style.display = "none"; + var a; + a = '<div style=" width: auto;height: auto;min-width: 50px;'; + a += "line-height: auto;"; + a += "margin: 0px 0px 0px 0px;"; + a += "padding: 5px;"; + a += "font-family: Calibri, Arial, Georgia, serif;"; + a += "font-weight: normal;"; + a += "font-style: " + (u ? "italic;" : "normal;"); + a += "font-size: 14px;"; + a += "color: #000000;"; + a += "text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1);"; + a += "text-align: left;"; + a += "border: 2px solid gray;"; + a += u ? "background: rgba(255,255,255,.9);" : "background: rgb(255,255,255);"; + a += "text-indent: 0px;"; + a += "white-space: nowrap;"; + a += "border-radius: 5px;"; + a += "-moz-user-select:none;"; + a += "-khtml-user-select: none;"; + a += "-webkit-user-select: none;"; + a += "-ms-user-select: none;"; + a += "user-select: none;"; + u || (a += "filter: alpha(opacity = 90);", a += "filter: progid:DXImageTransform.Microsoft.Shadow(Strength=3, Direction=135, Color='#666666');"); + a += '} "> Sample Tooltip</div>'; + this.container.innerHTML = a; + this.contentDiv = this.container.firstChild; + this.container.style.borderRadius = this.contentDiv.style.borderRadius; + this.chart._canvasJSContainer.appendChild(this.container) + } + }; + V.prototype.mouseMoveHandler = function (a, c) { + this._lastUpdated && 40 > (new Date).getTime() - this._lastUpdated || (this._lastUpdated = (new Date).getTime(), this._updateToolTip(a, c)) + }; + V.prototype._updateToolTip = function (a, c) { + if (!this.chart.disableToolTip) { + if ("undefined" === typeof a || "undefined" === typeof c) { + if (isNaN(this._prevX) || + isNaN(this._prevY)) + return; + a = this._prevX; + c = this._prevY + } else + this._prevX = a, this._prevY = c; + var b = null, d = null, e = [], f = 0; + if (this.shared && this.enabled && "none" !== this.chart.plotInfo.axisPlacement) { + f = "xySwapped" === this.chart.plotInfo.axisPlacement ? (this.chart.axisX.viewportMaximum - this.chart.axisX.viewportMinimum) / this.chart.axisX.lineCoordinates.height * (this.chart.axisX.lineCoordinates.y2 - c) + this.chart.axisX.viewportMinimum : (this.chart.axisX.viewportMaximum - this.chart.axisX.viewportMinimum) / this.chart.axisX.lineCoordinates.width * + (a - this.chart.axisX.lineCoordinates.x1) + this.chart.axisX.viewportMinimum; + d = []; + for (b = 0; b < this.chart.data.length; b++) { + var g = this.chart.data[b].getDataPointAtX(f, !0); + g && 0 <= g.index && (g.dataSeries = this.chart.data[b], null !== g.dataPoint.y && d.push(g)) + } + if (0 === d.length) + return; + d.sort(function (a, b) { + return a.distance - b.distance + }); + f = d[0]; + for (b = 0; b < d.length; b++) + d[b].dataPoint.x.valueOf() === f.dataPoint.x.valueOf() && e.push(d[b]); + d = null + } else { + if (g = this.chart.getDataPointAtXY(a, c, !0)) + this.currentDataPointIndex = g.dataPointIndex, + this.currentSeriesIndex = g.dataSeries.index; + else if (u) + if (g = Ea(a, c, this.chart._eventManager.ghostCtx), 0 < g && "undefined" !== typeof this.chart._eventManager.objectMap[g]) { + g = this.chart._eventManager.objectMap[g]; + if ("legendItem" === g.objectType) + return; + this.currentSeriesIndex = g.dataSeriesIndex; + this.currentDataPointIndex = 0 <= g.dataPointIndex ? g.dataPointIndex : -1 + } else + this.currentDataPointIndex = -1; + else + this.currentDataPointIndex = -1; + if (0 <= this.currentSeriesIndex) { + d = this.chart.data[this.currentSeriesIndex]; + g = {}; + if (0 <= this.currentDataPointIndex) + b = d.dataPoints[this.currentDataPointIndex], g.dataSeries = d, g.dataPoint = b, g.index = this.currentDataPointIndex, g.distance = Math.abs(b.x - f); + else { + if (!this.enabled || "line" !== d.type && "stepLine" !== d.type && "spline" !== d.type && "area" !== d.type && "stepArea" !== d.type && "splineArea" !== d.type && "stackedArea" !== d.type && "stackedArea100" !== d.type && "rangeArea" !== d.type && "rangeSplineArea" !== d.type && "candlestick" !== d.type && "ohlc" !== d.type) + return; + f = d.axisX.conversionParameters.minimum + (a - d.axisX.conversionParameters.reference) / + d.axisX.conversionParameters.pixelPerUnit; + g = d.getDataPointAtX(f, !0); + g.dataSeries = d; + this.currentDataPointIndex = g.index; + b = g.dataPoint + } + if (!x(g.dataPoint.y)) + if (g.dataSeries.axisY) + if (0 < g.dataPoint.y.length) { + for (b = f = 0; b < g.dataPoint.y.length; b++) + g.dataPoint.y[b] < g.dataSeries.axisY.viewportMinimum ? f-- : g.dataPoint.y[b] > g.dataSeries.axisY.viewportMaximum && f++; + f < g.dataPoint.y.length && f > -g.dataPoint.y.length && e.push(g) + } else + "column" === d.type || "bar" === d.type ? 0 > g.dataPoint.y ? 0 > g.dataSeries.axisY.viewportMinimum && + g.dataSeries.axisY.viewportMaximum >= g.dataPoint.y && e.push(g) : g.dataSeries.axisY.viewportMinimum <= g.dataPoint.y && 0 <= g.dataSeries.axisY.viewportMaximum && e.push(g) : "bubble" === d.type ? (f = this.chart._eventManager.objectMap[d.dataPointIds[g.index]].size / 2, g.dataPoint.y >= g.dataSeries.axisY.viewportMinimum - f && g.dataPoint.y <= g.dataSeries.axisY.viewportMaximum + f && e.push(g)) : (0 <= g.dataSeries.type.indexOf("100") || "stackedColumn" === d.type || "stackedBar" === d.type || g.dataPoint.y >= g.dataSeries.axisY.viewportMinimum && + g.dataPoint.y <= g.dataSeries.axisY.viewportMaximum) && e.push(g); + else + e.push(g) + } + } + if (0 < e.length && (this.highlightObjects(e), this.enabled)) + if (f = "", f = this.getToolTipInnerHTML({entries: e}), null !== f) { + this.contentDiv.innerHTML = f; + this.contentDiv.innerHTML = f; + f = !1; + "none" === this.container.style.display && (f = !0, this.container.style.display = "block"); + try { + this.contentDiv.style.background = this.backgroundColor ? this.backgroundColor : u ? "rgba(255,255,255,.9)" : "rgb(255,255,255)", this.contentDiv.style.borderRightColor = this.contentDiv.style.borderLeftColor = + this.contentDiv.style.borderColor = this.borderColor ? this.borderColor : e[0].dataPoint.color ? e[0].dataPoint.color : e[0].dataSeries.color ? e[0].dataSeries.color : e[0].dataSeries._colorSet[e[0].index % e[0].dataSeries._colorSet.length], this.contentDiv.style.borderWidth = this.borderThickness || 0 === this.borderThickness ? this.borderThickness + "px" : "2px", this.contentDiv.style.borderRadius = this.cornerRadius || 0 === this.cornerRadius ? this.cornerRadius + "px" : "5px", this.container.style.borderRadius = this.contentDiv.style.borderRadius, + this.contentDiv.style.fontSize = this.fontSize || 0 === this.fontSize ? this.fontSize + "px" : "14px", this.contentDiv.style.color = this.fontColor ? this.fontColor : "#000000", this.contentDiv.style.fontFamily = this.fontFamily ? this.fontFamily : "Calibri, Arial, Georgia, serif;", this.contentDiv.style.fontWeight = this.fontWeight ? this.fontWeight : "normal", this.contentDiv.style.fontStyle = this.fontStyle ? this.fontStyle : u ? "italic" : "normal" + } catch (h) { + } + "pie" === e[0].dataSeries.type || "doughnut" === e[0].dataSeries.type || "funnel" === e[0].dataSeries.type || + "bar" === e[0].dataSeries.type || "rangeBar" === e[0].dataSeries.type || "stackedBar" === e[0].dataSeries.type || "stackedBar100" === e[0].dataSeries.type ? g = a - 10 - this.container.clientWidth : (g = e[0].dataSeries.axisX.conversionParameters.reference + e[0].dataSeries.axisX.conversionParameters.pixelPerUnit * (e[0].dataPoint.x - e[0].dataSeries.axisX.conversionParameters.minimum) - this.container.clientWidth << 0, g -= 10); + 0 > g && (g += this.container.clientWidth + 20); + g + this.container.clientWidth > Math.max(this.chart._container.clientWidth, + this.chart.width) && (g = Math.max(0, Math.max(this.chart._container.clientWidth, this.chart.width) - this.container.clientWidth)); + e = 1 !== e.length || this.shared || "line" !== e[0].dataSeries.type && "stepLine" !== e[0].dataSeries.type && "spline" !== e[0].dataSeries.type && "area" !== e[0].dataSeries.type && "stepArea" !== e[0].dataSeries.type && "splineArea" !== e[0].dataSeries.type && "stackedArea" !== e[0].dataSeries.type && "stackedArea100" !== e[0].dataSeries.type ? "bar" === e[0].dataSeries.type || "rangeBar" === e[0].dataSeries.type || "stackedBar" === + e[0].dataSeries.type || "stackedBar100" === e[0].dataSeries.type ? e[0].dataSeries.axisX.conversionParameters.reference + e[0].dataSeries.axisX.conversionParameters.pixelPerUnit * (e[0].dataPoint.x - e[0].dataSeries.axisX.viewportMinimum) + 0.5 << 0 : c : e[0].dataSeries.axisY.conversionParameters.reference + e[0].dataSeries.axisY.conversionParameters.pixelPerUnit * (e[0].dataPoint.y - e[0].dataSeries.axisY.viewportMinimum) + 0.5 << 0; + e = -e + 10; + 0 < e + this.container.clientHeight + 5 && (e -= e + this.container.clientHeight + 5 - 0); + this.container.style.left = + g + "px"; + this.container.style.bottom = e + "px"; + !this.animationEnabled || f ? this.disableAnimation() : this.enableAnimation() + } else + this.hide(!1) + } + }; + V.prototype.highlightObjects = function (a) { + var c = this.chart.overlaidCanvasCtx; + this.chart.resetOverlayedCanvas(); + c.clearRect(0, 0, this.chart.width, this.chart.height); + c.save(); + var b = this.chart.plotArea, d = 0; + c.rect(b.x1, b.y1, b.x2 - b.x1, b.y2 - b.y1); + c.clip(); + for (b = 0; b < a.length; b++) { + var e = a[b]; + if ((e = this.chart._eventManager.objectMap[e.dataSeries.dataPointIds[e.index]]) && e.objectType && + "dataPoint" === e.objectType) { + var d = this.chart.data[e.dataSeriesIndex], f = d.dataPoints[e.dataPointIndex], g = e.dataPointIndex; + !1 === f.highlightEnabled || !0 !== d.highlightEnabled && !0 !== f.highlightEnabled || ("line" === d.type || "stepLine" === d.type || "spline" === d.type || "scatter" === d.type || "area" === d.type || "stepArea" === d.type || "splineArea" === d.type || "stackedArea" === d.type || "stackedArea100" === d.type || "rangeArea" === d.type || "rangeSplineArea" === d.type ? (f = d.getMarkerProperties(g, e.x1, e.y1, this.chart.overlaidCanvasCtx), + f.size = Math.max(1.5 * f.size << 0, 10), f.borderColor = f.borderColor || "#FFFFFF", f.borderThickness = f.borderThickness || Math.ceil(0.1 * f.size), P.drawMarkers([f]), "undefined" !== typeof e.y2 && (f = d.getMarkerProperties(g, e.x1, e.y2, this.chart.overlaidCanvasCtx), f.size = Math.max(1.5 * f.size << 0, 10), f.borderColor = f.borderColor || "#FFFFFF", f.borderThickness = f.borderThickness || Math.ceil(0.1 * f.size), P.drawMarkers([f]))) : "bubble" === d.type ? (f = d.getMarkerProperties(g, e.x1, e.y1, this.chart.overlaidCanvasCtx), f.size = e.size, f.color = + "white", f.borderColor = "white", c.globalAlpha = 0.3, P.drawMarkers([f]), c.globalAlpha = 1) : "column" === d.type || "stackedColumn" === d.type || "stackedColumn100" === d.type || "bar" === d.type || "rangeBar" === d.type || "stackedBar" === d.type || "stackedBar100" === d.type || "rangeColumn" === d.type ? M(c, e.x1, e.y1, e.x2, e.y2, "white", 0, null, !1, !1, !1, !1, 0.3) : "pie" === d.type || "doughnut" === d.type ? ya(c, e.center, e.radius, "white", d.type, e.startAngle, e.endAngle, 0.3, e.percentInnerRadius) : "candlestick" === d.type ? (c.globalAlpha = 1, c.strokeStyle = + e.color, c.lineWidth = 2 * e.borderThickness, d = 0 === c.lineWidth % 2 ? 0 : 0.5, c.beginPath(), c.moveTo(e.x3 - d, e.y2), c.lineTo(e.x3 - d, Math.min(e.y1, e.y4)), c.stroke(), c.beginPath(), c.moveTo(e.x3 - d, Math.max(e.y1, e.y4)), c.lineTo(e.x3 - d, e.y3), c.stroke(), M(c, e.x1, Math.min(e.y1, e.y4), e.x2, Math.max(e.y1, e.y4), "transparent", 2 * e.borderThickness, e.color, !1, !1, !1, !1), c.globalAlpha = 1) : "ohlc" === d.type && (c.globalAlpha = 1, c.strokeStyle = e.color, c.lineWidth = 2 * e.borderThickness, d = 0 === c.lineWidth % 2 ? 0 : 0.5, c.beginPath(), c.moveTo(e.x3 - + d, e.y2), c.lineTo(e.x3 - d, e.y3), c.stroke(), c.beginPath(), c.moveTo(e.x3, e.y1), c.lineTo(e.x1, e.y1), c.stroke(), c.beginPath(), c.moveTo(e.x3, e.y4), c.lineTo(e.x2, e.y4), c.stroke(), c.globalAlpha = 1)) + } + } + c.restore(); + c.globalAlpha = 1; + c.beginPath() + }; + V.prototype.getToolTipInnerHTML = function (a) { + a = a.entries; + for (var c = null, b = null, d = null, e = 0, f = "", g = !0, h = 0; h < a.length; h++) + if (a[h].dataSeries.toolTipContent || a[h].dataPoint.toolTipContent) { + g = !1; + break + } + if (g && (this.content && "function" === typeof this.content || this.contentFormatter)) + a = + {chart: this.chart._publicChartReference, toolTip: this._options, entries: a}, c = this.contentFormatter ? this.contentFormatter(a) : this.content(a); + else if (this.shared && "none" !== this.chart.plotInfo.axisPlacement) { + for (var q = "", h = 0; h < a.length; h++) + if (b = a[h].dataSeries, d = a[h].dataPoint, e = a[h].index, f = "", 0 === h && (g && !this.content) && (q += "undefined" !== typeof this.chart.axisX.labels[d.x] ? this.chart.axisX.labels[d.x] : "{x}", q += "</br>", q = this.chart.replaceKeywordsWithValue(q, d, b, e)), null !== d.toolTipContent && ("undefined" !== + typeof d.toolTipContent || null !== b._options.toolTipContent)) { + if ("line" === b.type || "stepLine" === b.type || "spline" === b.type || "area" === b.type || "stepArea" === b.type || "splineArea" === b.type || "column" === b.type || "bar" === b.type || "scatter" === b.type || "stackedColumn" === b.type || "stackedColumn100" === b.type || "stackedBar" === b.type || "stackedBar100" === b.type || "stackedArea" === b.type || "stackedArea100" === b.type) + f += d.toolTipContent ? d.toolTipContent : b.toolTipContent ? b.toolTipContent : this.content && "function" !== typeof this.content ? + this.content : "<span style='\"" + (this.fontColor ? "" : "'color:{color};'") + "\"'>{name}:</span> {y}"; + else if ("bubble" === b.type) + f += d.toolTipContent ? d.toolTipContent : b.toolTipContent ? b.toolTipContent : this.content && "function" !== typeof this.content ? this.content : "<span style='\"" + (this.fontColor ? "" : "'color:{color};'") + "\"'>{name}:</span> {y}, {z}"; + else if ("rangeColumn" === b.type || "rangeBar" === b.type || "rangeArea" === b.type || "rangeSplineArea" === b.type) + f += d.toolTipContent ? d.toolTipContent : + b.toolTipContent ? b.toolTipContent : this.content && "function" !== typeof this.content ? this.content : "<span style='\"" + (this.fontColor ? "" : "'color:{color};'") + "\"'>{name}:</span> {y[0]}, {y[1]}"; + else if ("candlestick" === b.type || "ohlc" === b.type) + f += d.toolTipContent ? d.toolTipContent : b.toolTipContent ? b.toolTipContent : this.content && "function" !== typeof this.content ? this.content : "<span style='\"" + (this.fontColor ? "" : "'color:{color};'") + "\"'>{name}:</span><br/>Open: {y[0]}<br/>High: {y[1]}<br/>Low: {y[2]}<br/>Close: {y[3]}"; + null === c && (c = ""); + !0 === this.reversed ? (c = this.chart.replaceKeywordsWithValue(f, d, b, e) + c, h < a.length - 1 && (c = "</br>" + c)) : (c += this.chart.replaceKeywordsWithValue(f, d, b, e), h < a.length - 1 && (c += "</br>")) + } + null !== c && (c = q + c) + } else { + b = a[0].dataSeries; + d = a[0].dataPoint; + e = a[0].index; + if (null === d.toolTipContent || "undefined" === typeof d.toolTipContent && null === b._options.toolTipContent) + return null; + if ("line" === b.type || "stepLine" === b.type || "spline" === b.type || "area" === b.type || "stepArea" === b.type || "splineArea" === b.type || "column" === + b.type || "bar" === b.type || "scatter" === b.type || "stackedColumn" === b.type || "stackedColumn100" === b.type || "stackedBar" === b.type || "stackedBar100" === b.type || "stackedArea" === b.type || "stackedArea100" === b.type) + f = d.toolTipContent ? d.toolTipContent : b.toolTipContent ? b.toolTipContent : this.content && "function" !== typeof this.content ? this.content : "<span style='\"" + (this.fontColor ? "" : "'color:{color};'") + "\"'>" + (d.label ? "{label}" : "{x}") + ":</span> {y}"; + else if ("bubble" === b.type) + f = d.toolTipContent ? d.toolTipContent : + b.toolTipContent ? b.toolTipContent : this.content && "function" !== typeof this.content ? this.content : "<span style='\"" + (this.fontColor ? "" : "'color:{color};'") + "\"'>" + (d.label ? "{label}" : "{x}") + ":</span> {y}, {z}"; + else if ("pie" === b.type || "doughnut" === b.type || "funnel" === b.type) + f = d.toolTipContent ? d.toolTipContent : b.toolTipContent ? b.toolTipContent : this.content && "function" !== typeof this.content ? this.content : "<span style='\"" + (this.fontColor ? "" : "'color:{color};'") + "\"'>" + (d.name ? "{name}:</span> " : + d.label ? "{label}:</span> " : "</span>") + "{y}"; + else if ("rangeColumn" === b.type || "rangeBar" === b.type || "rangeArea" === b.type || "rangeSplineArea" === b.type) + f = d.toolTipContent ? d.toolTipContent : b.toolTipContent ? b.toolTipContent : this.content && "function" !== typeof this.content ? this.content : "<span style='\"" + (this.fontColor ? "" : "'color:{color};'") + "\"'>" + (d.label ? "{label}" : "{x}") + " :</span> {y[0]}, {y[1]}"; + else if ("candlestick" === b.type || "ohlc" === b.type) + f = d.toolTipContent ? d.toolTipContent : + b.toolTipContent ? b.toolTipContent : this.content && "function" !== typeof this.content ? this.content : "<span style='\"" + (this.fontColor ? "" : "'color:{color};'") + "\"'>" + (d.label ? "{label}" : "{x}") + "</span><br/>Open: {y[0]}<br/>High: {y[1]}<br/>Low: {y[2]}<br/>Close: {y[3]}"; + null === c && (c = ""); + c += this.chart.replaceKeywordsWithValue(f, d, b, e) + } + return c + }; + V.prototype.enableAnimation = function () { + this.container.style.WebkitTransition || (this.container.style.WebkitTransition = + "left .2s ease-out, bottom .2s ease-out", this.container.style.MozTransition = "left .2s ease-out, bottom .2s ease-out", this.container.style.MsTransition = "left .2s ease-out, bottom .2s ease-out", this.container.style.transition = "left .2s ease-out, bottom .2s ease-out") + }; + V.prototype.disableAnimation = function () { + this.container.style.WebkitTransition && (this.container.style.WebkitTransition = "", this.container.style.MozTransition = "", this.container.style.MsTransition = "", this.container.style.transition = "") + }; + V.prototype.hide = + function (a) { + this.enabled && (this.container.style.display = "none", this.currentSeriesIndex = -1, this._prevY = this._prevX = NaN, ("undefined" === typeof a || a) && this.chart.resetOverlayedCanvas()) + }; + v.prototype.getPercentAndTotal = function (a, c) { + var b = null, d = null, e = null; + if (0 <= a.type.indexOf("stacked")) + d = 0, b = c.x.getTime ? c.x.getTime() : c.x, b in a.plotUnit.yTotals && (d = a.plotUnit.yTotals[b], e = isNaN(c.y) ? 0 : 0 === d ? 0 : 100 * (c.y / d)); + else if ("pie" === a.type || "doughnut" === a.type) { + for (i = d = 0; i < a.dataPoints.length; i++) + isNaN(a.dataPoints[i].y) || + (d += a.dataPoints[i].y); + e = isNaN(c.y) ? 0 : 100 * (c.y / d) + } + return{percent: e, total: d} + }; + v.prototype.replaceKeywordsWithValue = function (a, c, b, d, e) { + var f = this; + e = "undefined" === typeof e ? 0 : e; + if ((0 <= b.type.indexOf("stacked") || "pie" === b.type || "doughnut" === b.type) && (0 <= a.indexOf("#percent") || 0 <= a.indexOf("#total"))) { + var g = "#percent", h = "#total", q = this.getPercentAndTotal(b, c), h = isNaN(q.total) ? h : q.total, g = isNaN(q.percent) ? g : q.percent; + do { + q = ""; + if (b.percentFormatString) + q = b.percentFormatString; + else { + var q = "#,##0.", k = Math.max(Math.ceil(Math.log(1 / + Math.abs(g)) / Math.LN10), 2); + if (isNaN(k) || !isFinite(k)) + k = 2; + for (var n = 0; n < k; n++) + q += "#" + } + a = a.replace("#percent", ba(g, q, f._cultureInfo)); + a = a.replace("#total", ba(h, b.yValueFormatString ? b.yValueFormatString : "#,##0.########")) + } while (0 <= a.indexOf("#percent") || 0 <= a.indexOf("#total")) + } + return a.replace(/\{.*?\}|"[^"]*"|'[^']*'/g, function (a) { + if ('"' === a[0] && '"' === a[a.length - 1] || "'" === a[0] && "'" === a[a.length - 1]) + return a.slice(1, a.length - 1); + a = ea(a.slice(1, a.length - 1)); + a = a.replace("#index", e); + var g = null; + try { + var h = a.match(/(.*?)\s*\[\s*(.*?)\s*\]/); + h && 0 < h.length && (g = ea(h[2]), a = ea(h[1])) + } catch (k) { + } + h = null; + if ("color" === a) + return c.color ? c.color : b.color ? b.color : b._colorSet[d % b._colorSet.length]; + if (c.hasOwnProperty(a)) + h = c; + else if (b.hasOwnProperty(a)) + h = b; + else + return""; + h = h[a]; + null !== g && (h = h[g]); + return"x" === a ? "dateTime" === f.plotInfo.axisXValueType || "dateTime" === b.xValueType || c.x && c.x.getTime ? wa(h, c.xValueFormatString ? c.xValueFormatString : b.xValueFormatString ? b.xValueFormatString : f.axisX && f.axisX.autoValueFormatString ? f.axisX.autoValueFormatString : "DD MMM YY", + f._cultureInfo) : ba(h, c.xValueFormatString ? c.xValueFormatString : b.xValueFormatString ? b.xValueFormatString : "#,##0.########", f._cultureInfo) : "y" === a ? ba(h, c.yValueFormatString ? c.yValueFormatString : b.yValueFormatString ? b.yValueFormatString : "#,##0.########", f._cultureInfo) : "z" === a ? ba(h, c.zValueFormatString ? c.zValueFormatString : b.zValueFormatString ? b.zValueFormatString : "#,##0.########", f._cultureInfo) : h + }) + }; + fa.prototype.reset = function () { + this.lastObjectId = 0; + this.objectMap = []; + this.rectangularRegionEventSubscriptions = + []; + this.previousDataPointEventObject = null; + this.eventObjects = []; + u && (this.ghostCtx.clearRect(0, 0, this.chart.width, this.chart.height), this.ghostCtx.beginPath()) + }; + fa.prototype.getNewObjectTrackingId = function () { + return++this.lastObjectId + }; + fa.prototype.mouseEventHandler = function (a) { + if ("mousemove" === a.type || "click" === a.type) { + var c = [], b = ra(a), d = null; + if ((d = this.chart.getObjectAtXY(b.x, b.y, !1)) && "undefined" !== typeof this.objectMap[d]) + if (d = this.objectMap[d], "dataPoint" === d.objectType) { + var e = this.chart.data[d.dataSeriesIndex], + f = e.dataPoints[d.dataPointIndex], g = d.dataPointIndex; + d.eventParameter = {x: b.x, y: b.y, dataPoint: f, dataSeries: e._options, dataPointIndex: g, dataSeriesIndex: e.index, chart: this.chart._publicChartReference}; + d.eventContext = {context: f, userContext: f, mouseover: "mouseover", mousemove: "mousemove", mouseout: "mouseout", click: "click"}; + c.push(d); + d = this.objectMap[e.id]; + d.eventParameter = {x: b.x, y: b.y, dataPoint: f, dataSeries: e._options, dataPointIndex: g, dataSeriesIndex: e.index, chart: this.chart._publicChartReference}; + d.eventContext = + {context: e, userContext: e._options, mouseover: "mouseover", mousemove: "mousemove", mouseout: "mouseout", click: "click"}; + c.push(this.objectMap[e.id]) + } else + "legendItem" === d.objectType && (e = this.chart.data[d.dataSeriesIndex], f = null !== d.dataPointIndex ? e.dataPoints[d.dataPointIndex] : null, d.eventParameter = {x: b.x, y: b.y, dataSeries: e._options, dataPoint: f, dataPointIndex: d.dataPointIndex, dataSeriesIndex: d.dataSeriesIndex, chart: this.chart._publicChartReference}, d.eventContext = {context: this.chart.legend, userContext: this.chart.legend._options, + mouseover: "itemmouseover", mousemove: "itemmousemove", mouseout: "itemmouseout", click: "itemclick"}, c.push(d)); + e = []; + for (b = 0; b < this.mouseoveredObjectMaps.length; b++) { + f = !0; + for (d = 0; d < c.length; d++) + if (c[d].id === this.mouseoveredObjectMaps[b].id) { + f = !1; + break + } + f ? this.fireEvent(this.mouseoveredObjectMaps[b], "mouseout", a) : e.push(this.mouseoveredObjectMaps[b]) + } + this.mouseoveredObjectMaps = e; + for (b = 0; b < c.length; b++) { + e = !1; + for (d = 0; d < this.mouseoveredObjectMaps.length; d++) + if (c[b].id === this.mouseoveredObjectMaps[d].id) { + e = !0; + break + } + e || (this.fireEvent(c[b], "mouseover", a), this.mouseoveredObjectMaps.push(c[b])); + "click" === a.type ? this.fireEvent(c[b], "click", a) : "mousemove" === a.type && this.fireEvent(c[b], "mousemove", a) + } + } + }; + fa.prototype.fireEvent = function (a, c, b) { + if (a && c) { + var d = a.eventParameter, e = a.eventContext, f = a.eventContext.userContext; + f && (e && f[e[c]]) && f[e[c]].call(f, d); + "mouseout" !== c ? f.cursor && f.cursor !== b.target.style.cursor && (b.target.style.cursor = f.cursor) : (b.target.style.cursor = this.chart._defaultCursor, delete a.eventParameter, + delete a.eventContext); + "click" === c && ("dataPoint" === a.objectType && this.chart.pieDoughnutClickHandler) && this.chart.pieDoughnutClickHandler.call(this.chart.data[a.dataSeriesIndex], d) + } + }; + T(ha, L); + va.prototype.animate = function (a, c, b, d, e) { + var f = this; + this.chart.isAnimating = !0; + e = e || B.easing.linear; + b && this.animations.push({startTime: (new Date).getTime() + (a ? a : 0), duration: c, animationCallback: b, onComplete: d}); + for (a = []; 0 < this.animations.length; ) + if (c = this.animations.shift(), b = (new Date).getTime(), d = 0, c.startTime <= + b && (d = e(Math.min(b - c.startTime, c.duration), 0, 1, c.duration), d = Math.min(d, 1), isNaN(d) || !isFinite(d)) && (d = 1), 1 > d && a.push(c), c.animationCallback(d), 1 <= d && c.onComplete) + c.onComplete(); + this.animations = a; + 0 < this.animations.length ? this.animationRequestId = this.chart.requestAnimFrame.call(window, function () { + f.animate.call(f) + }) : this.chart.isAnimating = !1 + }; + va.prototype.cancelAllAnimations = function () { + this.animations = []; + this.animationRequestId && this.chart.cancelRequestAnimFrame.call(window, this.animationRequestId); + this.animationRequestId = null; + this.chart.isAnimating = !1 + }; + var B = {yScaleAnimation: function (a, c) { + if (0 !== a) { + var b = c.dest, d = c.source.canvas, e = c.animationBase; + b.drawImage(d, 0, 0, d.width, d.height, 0, e - e * a, b.canvas.width / N, a * b.canvas.height / N) + } + }, xScaleAnimation: function (a, c) { + if (0 !== a) { + var b = c.dest, d = c.source.canvas, e = c.animationBase; + b.drawImage(d, 0, 0, d.width, d.height, e - e * a, 0, a * b.canvas.width / N, b.canvas.height / N) + } + }, xClipAnimation: function (a, c) { + if (0 !== a) { + var b = c.dest, d = c.source.canvas; + b.save(); + 0 < a && b.drawImage(d, + 0, 0, d.width * a, d.height, 0, 0, d.width * a / N, d.height / N); + b.restore() + } + }, fadeInAnimation: function (a, c) { + if (0 !== a) { + var b = c.dest, d = c.source.canvas; + b.save(); + b.globalAlpha = a; + b.drawImage(d, 0, 0, d.width, d.height, 0, 0, b.canvas.width / N, b.canvas.height / N); + b.restore() + } + }, easing: {linear: function (a, c, b, d) { + return b * a / d + c + }, easeOutQuad: function (a, c, b, d) { + return-b * (a /= d) * (a - 2) + c + }, easeOutQuart: function (a, c, b, d) { + return-b * ((a = a / d - 1) * a * a * a - 1) + c + }, easeInQuad: function (a, c, b, d) { + return b * (a /= d) * a + c + }, easeInQuart: function (a, c, b, d) { + return b * + (a /= d) * a * a * a + c + }}}, P = {drawMarker: function (a, c, b, d, e, f, g, h) { + if (b) { + var q = 1; + b.fillStyle = f ? f : "#000000"; + b.strokeStyle = g ? g : "#000000"; + b.lineWidth = h ? h : 0; + "circle" === d ? (b.moveTo(a, c), b.beginPath(), b.arc(a, c, e / 2, 0, 2 * Math.PI, !1), f && b.fill(), h && (g ? b.stroke() : (q = b.globalAlpha, b.globalAlpha = 0.15, b.strokeStyle = "black", b.stroke(), b.globalAlpha = q))) : "square" === d ? (b.beginPath(), b.rect(a - e / 2, c - e / 2, e, e), f && b.fill(), h && (g ? b.stroke() : (q = b.globalAlpha, b.globalAlpha = 0.15, b.strokeStyle = "black", b.stroke(), b.globalAlpha = q))) : + "triangle" === d ? (b.beginPath(), b.moveTo(a - e / 2, c + e / 2), b.lineTo(a + e / 2, c + e / 2), b.lineTo(a, c - e / 2), b.closePath(), f && b.fill(), h && (g ? b.stroke() : (q = b.globalAlpha, b.globalAlpha = 0.15, b.strokeStyle = "black", b.stroke(), b.globalAlpha = q)), b.beginPath()) : "cross" === d && (b.strokeStyle = f, b.lineWidth = e / 4, b.beginPath(), b.moveTo(a - e / 2, c - e / 2), b.lineTo(a + e / 2, c + e / 2), b.stroke(), b.moveTo(a + e / 2, c - e / 2), b.lineTo(a - e / 2, c + e / 2), b.stroke()) + } + }, drawMarkers: function (a) { + for (var c = 0; c < a.length; c++) { + var b = a[c]; + P.drawMarker(b.x, b.y, b.ctx, b.type, + b.size, b.color, b.borderColor, b.borderThickness) + } + }}, Ia = {Chart: function (a, c) { + var b = new v(a, c, this); + this.render = function () { + b.render(this.options) + }; + this.options = b._options + }, addColorSet: function (a, c) { + aa[a] = c + }, addCultureInfo: function (a, c) { + ia[a] = c + }, formatNumber: function (a, c, b) { + b = b || "en"; + if (ia[b]) + return ba(a, c || "#,##0.##", new ha(b)); + throw"Unknown Culture Name"; + }, formatDate: function (a, c, b) { + b = b || "en"; + if (ia[b]) + return wa(a, c || "DD MMM YYYY", new ha(b)); + throw"Unknown Culture Name"; + }}; + Ia.Chart.version = "v1.8.1 Beta 2"; + window.CanvasJS = Ia +})(); +/* + excanvas is used to support IE678 which do not implement HTML5 Canvas Element. You can safely remove the following excanvas code if you don't need to support older browsers. + + Copyright 2006 Google Inc. https://code.google.com/p/explorercanvas/ + Licensed under the Apache License, Version 2.0 + */ +document.createElement("canvas").getContext || function () { + function V() { + return this.context_ || (this.context_ = new C(this)) + } + function W(a, b, c) { + var g = M.call(arguments, 2); + return function () { + return a.apply(b, g.concat(M.call(arguments))) + } + } + function N(a) { + return String(a).replace(/&/g, "&").replace(/"/g, """) + } + function O(a) { + a.namespaces.g_vml_ || a.namespaces.add("g_vml_", "urn:schemas-microsoft-com:vml", "#default#VML"); + a.namespaces.g_o_ || a.namespaces.add("g_o_", "urn:schemas-microsoft-com:office:office", "#default#VML"); + a.styleSheets.ex_canvas_ || (a = a.createStyleSheet(), a.owningElement.id = "ex_canvas_", a.cssText = "canvas{display:inline-block;overflow:hidden;text-align:left;width:300px;height:150px}") + } + function X(a) { + var b = a.srcElement; + switch (a.propertyName) { + case "width": + b.getContext().clearRect(); + b.style.width = b.attributes.width.nodeValue + "px"; + b.firstChild.style.width = b.clientWidth + "px"; + break; + case "height": + b.getContext().clearRect(), b.style.height = b.attributes.height.nodeValue + "px", b.firstChild.style.height = b.clientHeight + + "px" + } + } + function Y(a) { + a = a.srcElement; + a.firstChild && (a.firstChild.style.width = a.clientWidth + "px", a.firstChild.style.height = a.clientHeight + "px") + } + function D() { + return[[1, 0, 0], [0, 1, 0], [0, 0, 1]] + } + function t(a, b) { + for (var c = D(), g = 0; 3 > g; g++) + for (var e = 0; 3 > e; e++) { + for (var f = 0, d = 0; 3 > d; d++) + f += a[g][d] * b[d][e]; + c[g][e] = f + } + return c + } + function P(a, b) { + b.fillStyle = a.fillStyle; + b.lineCap = a.lineCap; + b.lineJoin = a.lineJoin; + b.lineWidth = a.lineWidth; + b.miterLimit = a.miterLimit; + b.shadowBlur = a.shadowBlur; + b.shadowColor = a.shadowColor; + b.shadowOffsetX = + a.shadowOffsetX; + b.shadowOffsetY = a.shadowOffsetY; + b.strokeStyle = a.strokeStyle; + b.globalAlpha = a.globalAlpha; + b.font = a.font; + b.textAlign = a.textAlign; + b.textBaseline = a.textBaseline; + b.arcScaleX_ = a.arcScaleX_; + b.arcScaleY_ = a.arcScaleY_; + b.lineScale_ = a.lineScale_ + } + function Q(a) { + var b = a.indexOf("(", 3), c = a.indexOf(")", b + 1), b = a.substring(b + 1, c).split(","); + if (4 != b.length || "a" != a.charAt(3)) + b[3] = 1; + return b + } + function E(a, b, c) { + return Math.min(c, Math.max(b, a)) + } + function F(a, b, c) { + 0 > c && c++; + 1 < c && c--; + return 1 > 6 * c ? a + 6 * (b - a) * c : + 1 > 2 * c ? b : 2 > 3 * c ? a + 6 * (b - a) * (2 / 3 - c) : a + } + function G(a) { + if (a in H) + return H[a]; + var b, c = 1; + a = String(a); + if ("#" == a.charAt(0)) + b = a; + else if (/^rgb/.test(a)) { + c = Q(a); + b = "#"; + for (var g, e = 0; 3 > e; e++) + g = -1 != c[e].indexOf("%") ? Math.floor(255 * (parseFloat(c[e]) / 100)) : +c[e], b += v[E(g, 0, 255)]; + c = +c[3] + } else if (/^hsl/.test(a)) { + e = c = Q(a); + b = parseFloat(e[0]) / 360 % 360; + 0 > b && b++; + g = E(parseFloat(e[1]) / 100, 0, 1); + e = E(parseFloat(e[2]) / 100, 0, 1); + if (0 == g) + g = e = b = e; + else { + var f = 0.5 > e ? e * (1 + g) : e + g - e * g, d = 2 * e - f; + g = F(d, f, b + 1 / 3); + e = F(d, f, b); + b = F(d, f, b - 1 / 3) + } + b = "#" + + v[Math.floor(255 * g)] + v[Math.floor(255 * e)] + v[Math.floor(255 * b)]; + c = c[3] + } else + b = Z[a] || a; + return H[a] = {color: b, alpha: c} + } + function C(a) { + this.m_ = D(); + this.mStack_ = []; + this.aStack_ = []; + this.currentPath_ = []; + this.fillStyle = this.strokeStyle = "#000"; + this.lineWidth = 1; + this.lineJoin = "miter"; + this.lineCap = "butt"; + this.miterLimit = 1 * q; + this.globalAlpha = 1; + this.font = "10px sans-serif"; + this.textAlign = "left"; + this.textBaseline = "alphabetic"; + this.canvas = a; + var b = "width:" + a.clientWidth + "px;height:" + a.clientHeight + "px;overflow:hidden;position:absolute", + c = a.ownerDocument.createElement("div"); + c.style.cssText = b; + a.appendChild(c); + b = c.cloneNode(!1); + b.style.backgroundColor = "red"; + b.style.filter = "alpha(opacity=0)"; + a.appendChild(b); + this.element_ = c; + this.lineScale_ = this.arcScaleY_ = this.arcScaleX_ = 1 + } + function R(a, b, c, g) { + a.currentPath_.push({type: "bezierCurveTo", cp1x: b.x, cp1y: b.y, cp2x: c.x, cp2y: c.y, x: g.x, y: g.y}); + a.currentX_ = g.x; + a.currentY_ = g.y + } + function S(a, b) { + var c = G(a.strokeStyle), g = c.color, c = c.alpha * a.globalAlpha, e = a.lineScale_ * a.lineWidth; + 1 > e && (c *= e); + b.push("<g_vml_:stroke", + ' opacity="', c, '"', ' joinstyle="', a.lineJoin, '"', ' miterlimit="', a.miterLimit, '"', ' endcap="', $[a.lineCap] || "square", '"', ' weight="', e, 'px"', ' color="', g, '" />') + } + function T(a, b, c, g) { + var e = a.fillStyle, f = a.arcScaleX_, d = a.arcScaleY_, k = g.x - c.x, n = g.y - c.y; + if (e instanceof w) { + var h = 0, l = g = 0, u = 0, m = 1; + if ("gradient" == e.type_) { + h = e.x1_ / f; + c = e.y1_ / d; + var p = s(a, e.x0_ / f, e.y0_ / d), h = s(a, h, c), h = 180 * Math.atan2(h.x - p.x, h.y - p.y) / Math.PI; + 0 > h && (h += 360); + 1E-6 > h && (h = 0) + } else + p = s(a, e.x0_, e.y0_), g = (p.x - c.x) / k, l = (p.y - c.y) / n, k /= f * q, + n /= d * q, m = x.max(k, n), u = 2 * e.r0_ / m, m = 2 * e.r1_ / m - u; + f = e.colors_; + f.sort(function (a, b) { + return a.offset - b.offset + }); + d = f.length; + p = f[0].color; + c = f[d - 1].color; + k = f[0].alpha * a.globalAlpha; + a = f[d - 1].alpha * a.globalAlpha; + for (var n = [], r = 0; r < d; r++) { + var t = f[r]; + n.push(t.offset * m + u + " " + t.color) + } + b.push('<g_vml_:fill type="', e.type_, '"', ' method="none" focus="100%"', ' color="', p, '"', ' color2="', c, '"', ' colors="', n.join(","), '"', ' opacity="', a, '"', ' g_o_:opacity2="', k, '"', ' angle="', h, '"', ' focusposition="', g, ",", l, '" />') + } else + e instanceof + I ? k && n && b.push("<g_vml_:fill", ' position="', -c.x / k * f * f, ",", -c.y / n * d * d, '"', ' type="tile"', ' src="', e.src_, '" />') : (e = G(a.fillStyle), b.push('<g_vml_:fill color="', e.color, '" opacity="', e.alpha * a.globalAlpha, '" />')) + } + function s(a, b, c) { + a = a.m_; + return{x: q * (b * a[0][0] + c * a[1][0] + a[2][0]) - r, y: q * (b * a[0][1] + c * a[1][1] + a[2][1]) - r} + } + function z(a, b, c) { + isFinite(b[0][0]) && (isFinite(b[0][1]) && isFinite(b[1][0]) && isFinite(b[1][1]) && isFinite(b[2][0]) && isFinite(b[2][1])) && (a.m_ = b, c && (a.lineScale_ = aa(ba(b[0][0] * b[1][1] - b[0][1] * + b[1][0])))) + } + function w(a) { + this.type_ = a; + this.r1_ = this.y1_ = this.x1_ = this.r0_ = this.y0_ = this.x0_ = 0; + this.colors_ = [] + } + function I(a, b) { + if (!a || 1 != a.nodeType || "IMG" != a.tagName) + throw new A("TYPE_MISMATCH_ERR"); + if ("complete" != a.readyState) + throw new A("INVALID_STATE_ERR"); + switch (b) { + case "repeat": + case null: + case "": + this.repetition_ = "repeat"; + break; + case "repeat-x": + case "repeat-y": + case "no-repeat": + this.repetition_ = b; + break; + default: + throw new A("SYNTAX_ERR"); + } + this.src_ = a.src; + this.width_ = a.width; + this.height_ = a.height + } + function A(a) { + this.code = this[a]; + this.message = a + ": DOM Exception " + this.code + } + var x = Math, k = x.round, J = x.sin, K = x.cos, ba = x.abs, aa = x.sqrt, q = 10, r = q / 2; + navigator.userAgent.match(/MSIE ([\d.]+)?/); + var M = Array.prototype.slice; + O(document); + var U = {init: function (a) { + a = a || document; + a.createElement("canvas"); + a.attachEvent("onreadystatechange", W(this.init_, this, a)) + }, init_: function (a) { + a = a.getElementsByTagName("canvas"); + for (var b = 0; b < a.length; b++) + this.initElement(a[b]) + }, initElement: function (a) { + if (!a.getContext) { + a.getContext = + V; + O(a.ownerDocument); + a.innerHTML = ""; + a.attachEvent("onpropertychange", X); + a.attachEvent("onresize", Y); + var b = a.attributes; + b.width && b.width.specified ? a.style.width = b.width.nodeValue + "px" : a.width = a.clientWidth; + b.height && b.height.specified ? a.style.height = b.height.nodeValue + "px" : a.height = a.clientHeight + } + return a + }}; + U.init(); + for (var v = [], d = 0; 16 > d; d++) + for (var B = 0; 16 > B; B++) + v[16 * d + B] = d.toString(16) + B.toString(16); + var Z = {aliceblue: "#F0F8FF", antiquewhite: "#FAEBD7", aquamarine: "#7FFFD4", azure: "#F0FFFF", beige: "#F5F5DC", + bisque: "#FFE4C4", black: "#000000", blanchedalmond: "#FFEBCD", blueviolet: "#8A2BE2", brown: "#A52A2A", burlywood: "#DEB887", cadetblue: "#5F9EA0", chartreuse: "#7FFF00", chocolate: "#D2691E", coral: "#FF7F50", cornflowerblue: "#6495ED", cornsilk: "#FFF8DC", crimson: "#DC143C", cyan: "#00FFFF", darkblue: "#00008B", darkcyan: "#008B8B", darkgoldenrod: "#B8860B", darkgray: "#A9A9A9", darkgreen: "#006400", darkgrey: "#A9A9A9", darkkhaki: "#BDB76B", darkmagenta: "#8B008B", darkolivegreen: "#556B2F", darkorange: "#FF8C00", darkorchid: "#9932CC", darkred: "#8B0000", + darksalmon: "#E9967A", darkseagreen: "#8FBC8F", darkslateblue: "#483D8B", darkslategray: "#2F4F4F", darkslategrey: "#2F4F4F", darkturquoise: "#00CED1", darkviolet: "#9400D3", deeppink: "#FF1493", deepskyblue: "#00BFFF", dimgray: "#696969", dimgrey: "#696969", dodgerblue: "#1E90FF", firebrick: "#B22222", floralwhite: "#FFFAF0", forestgreen: "#228B22", gainsboro: "#DCDCDC", ghostwhite: "#F8F8FF", gold: "#FFD700", goldenrod: "#DAA520", grey: "#808080", greenyellow: "#ADFF2F", honeydew: "#F0FFF0", hotpink: "#FF69B4", indianred: "#CD5C5C", indigo: "#4B0082", + ivory: "#FFFFF0", khaki: "#F0E68C", lavender: "#E6E6FA", lavenderblush: "#FFF0F5", lawngreen: "#7CFC00", lemonchiffon: "#FFFACD", lightblue: "#ADD8E6", lightcoral: "#F08080", lightcyan: "#E0FFFF", lightgoldenrodyellow: "#FAFAD2", lightgreen: "#90EE90", lightgrey: "#D3D3D3", lightpink: "#FFB6C1", lightsalmon: "#FFA07A", lightseagreen: "#20B2AA", lightskyblue: "#87CEFA", lightslategray: "#778899", lightslategrey: "#778899", lightsteelblue: "#B0C4DE", lightyellow: "#FFFFE0", limegreen: "#32CD32", linen: "#FAF0E6", magenta: "#FF00FF", mediumaquamarine: "#66CDAA", + mediumblue: "#0000CD", mediumorchid: "#BA55D3", mediumpurple: "#9370DB", mediumseagreen: "#3CB371", mediumslateblue: "#7B68EE", mediumspringgreen: "#00FA9A", mediumturquoise: "#48D1CC", mediumvioletred: "#C71585", midnightblue: "#191970", mintcream: "#F5FFFA", mistyrose: "#FFE4E1", moccasin: "#FFE4B5", navajowhite: "#FFDEAD", oldlace: "#FDF5E6", olivedrab: "#6B8E23", orange: "#FFA500", orangered: "#FF4500", orchid: "#DA70D6", palegoldenrod: "#EEE8AA", palegreen: "#98FB98", paleturquoise: "#AFEEEE", palevioletred: "#DB7093", papayawhip: "#FFEFD5", + peachpuff: "#FFDAB9", peru: "#CD853F", pink: "#FFC0CB", plum: "#DDA0DD", powderblue: "#B0E0E6", rosybrown: "#BC8F8F", royalblue: "#4169E1", saddlebrown: "#8B4513", salmon: "#FA8072", sandybrown: "#F4A460", seagreen: "#2E8B57", seashell: "#FFF5EE", sienna: "#A0522D", skyblue: "#87CEEB", slateblue: "#6A5ACD", slategray: "#708090", slategrey: "#708090", snow: "#FFFAFA", springgreen: "#00FF7F", steelblue: "#4682B4", tan: "#D2B48C", thistle: "#D8BFD8", tomato: "#FF6347", turquoise: "#40E0D0", violet: "#EE82EE", wheat: "#F5DEB3", whitesmoke: "#F5F5F5", yellowgreen: "#9ACD32"}, + H = {}, L = {}, $ = {butt: "flat", round: "round"}, d = C.prototype; + d.clearRect = function () { + this.textMeasureEl_ && (this.textMeasureEl_.removeNode(!0), this.textMeasureEl_ = null); + this.element_.innerHTML = "" + }; + d.beginPath = function () { + this.currentPath_ = [] + }; + d.moveTo = function (a, b) { + var c = s(this, a, b); + this.currentPath_.push({type: "moveTo", x: c.x, y: c.y}); + this.currentX_ = c.x; + this.currentY_ = c.y + }; + d.lineTo = function (a, b) { + var c = s(this, a, b); + this.currentPath_.push({type: "lineTo", x: c.x, y: c.y}); + this.currentX_ = c.x; + this.currentY_ = c.y + }; + d.bezierCurveTo = + function (a, b, c, g, e, f) { + e = s(this, e, f); + a = s(this, a, b); + c = s(this, c, g); + R(this, a, c, e) + }; + d.quadraticCurveTo = function (a, b, c, g) { + a = s(this, a, b); + c = s(this, c, g); + g = {x: this.currentX_ + 2 / 3 * (a.x - this.currentX_), y: this.currentY_ + 2 / 3 * (a.y - this.currentY_)}; + R(this, g, {x: g.x + (c.x - this.currentX_) / 3, y: g.y + (c.y - this.currentY_) / 3}, c) + }; + d.arc = function (a, b, c, g, e, f) { + c *= q; + var d = f ? "at" : "wa", k = a + K(g) * c - r, n = b + J(g) * c - r; + g = a + K(e) * c - r; + e = b + J(e) * c - r; + k != g || f || (k += 0.125); + a = s(this, a, b); + k = s(this, k, n); + g = s(this, g, e); + this.currentPath_.push({type: d, + x: a.x, y: a.y, radius: c, xStart: k.x, yStart: k.y, xEnd: g.x, yEnd: g.y}) + }; + d.rect = function (a, b, c, g) { + this.moveTo(a, b); + this.lineTo(a + c, b); + this.lineTo(a + c, b + g); + this.lineTo(a, b + g); + this.closePath() + }; + d.strokeRect = function (a, b, c, g) { + var e = this.currentPath_; + this.beginPath(); + this.moveTo(a, b); + this.lineTo(a + c, b); + this.lineTo(a + c, b + g); + this.lineTo(a, b + g); + this.closePath(); + this.stroke(); + this.currentPath_ = e + }; + d.fillRect = function (a, b, c, g) { + var e = this.currentPath_; + this.beginPath(); + this.moveTo(a, b); + this.lineTo(a + c, b); + this.lineTo(a + + c, b + g); + this.lineTo(a, b + g); + this.closePath(); + this.fill(); + this.currentPath_ = e + }; + d.createLinearGradient = function (a, b, c, g) { + var e = new w("gradient"); + e.x0_ = a; + e.y0_ = b; + e.x1_ = c; + e.y1_ = g; + return e + }; + d.createRadialGradient = function (a, b, c, g, e, f) { + var d = new w("gradientradial"); + d.x0_ = a; + d.y0_ = b; + d.r0_ = c; + d.x1_ = g; + d.y1_ = e; + d.r1_ = f; + return d + }; + d.drawImage = function (a, b) { + var c, g, e, d, r, y, n, h; + e = a.runtimeStyle.width; + d = a.runtimeStyle.height; + a.runtimeStyle.width = "auto"; + a.runtimeStyle.height = "auto"; + var l = a.width, u = a.height; + a.runtimeStyle.width = + e; + a.runtimeStyle.height = d; + if (3 == arguments.length) + c = arguments[1], g = arguments[2], r = y = 0, n = e = l, h = d = u; + else if (5 == arguments.length) + c = arguments[1], g = arguments[2], e = arguments[3], d = arguments[4], r = y = 0, n = l, h = u; + else if (9 == arguments.length) + r = arguments[1], y = arguments[2], n = arguments[3], h = arguments[4], c = arguments[5], g = arguments[6], e = arguments[7], d = arguments[8]; + else + throw Error("Invalid number of arguments"); + var m = s(this, c, g), p = []; + p.push(" <g_vml_:group", ' coordsize="', 10 * q, ",", 10 * q, '"', ' coordorigin="0,0"', ' style="width:', + 10, "px;height:", 10, "px;position:absolute;"); + if (1 != this.m_[0][0] || this.m_[0][1] || 1 != this.m_[1][1] || this.m_[1][0]) { + var t = []; + t.push("M11=", this.m_[0][0], ",", "M12=", this.m_[1][0], ",", "M21=", this.m_[0][1], ",", "M22=", this.m_[1][1], ",", "Dx=", k(m.x / q), ",", "Dy=", k(m.y / q), ""); + var v = s(this, c + e, g), w = s(this, c, g + d); + c = s(this, c + e, g + d); + m.x = x.max(m.x, v.x, w.x, c.x); + m.y = x.max(m.y, v.y, w.y, c.y); + p.push("padding:0 ", k(m.x / q), "px ", k(m.y / q), "px 0;filter:progid:DXImageTransform.Microsoft.Matrix(", t.join(""), ", sizingmethod='clip');") + } else + p.push("top:", + k(m.y / q), "px;left:", k(m.x / q), "px;"); + p.push(' ">', '<g_vml_:image src="', a.src, '"', ' style="width:', q * e, "px;", " height:", q * d, 'px"', ' cropleft="', r / l, '"', ' croptop="', y / u, '"', ' cropright="', (l - r - n) / l, '"', ' cropbottom="', (u - y - h) / u, '"', " />", "</g_vml_:group>"); + this.element_.insertAdjacentHTML("BeforeEnd", p.join("")) + }; + d.stroke = function (a) { + var b = []; + b.push("<g_vml_:shape", ' filled="', !!a, '"', ' style="position:absolute;width:', 10, "px;height:", 10, 'px;"', ' coordorigin="0,0"', ' coordsize="', 10 * q, ",", 10 * q, '"', + ' stroked="', !a, '"', ' path="'); + for (var c = {x: null, y: null}, d = {x: null, y: null}, e = 0; e < this.currentPath_.length; e++) { + var f = this.currentPath_[e]; + switch (f.type) { + case "moveTo": + b.push(" m ", k(f.x), ",", k(f.y)); + break; + case "lineTo": + b.push(" l ", k(f.x), ",", k(f.y)); + break; + case "close": + b.push(" x "); + f = null; + break; + case "bezierCurveTo": + b.push(" c ", k(f.cp1x), ",", k(f.cp1y), ",", k(f.cp2x), ",", k(f.cp2y), ",", k(f.x), ",", k(f.y)); + break; + case "at": + case "wa": + b.push(" ", f.type, " ", k(f.x - this.arcScaleX_ * f.radius), ",", k(f.y - this.arcScaleY_ * + f.radius), " ", k(f.x + this.arcScaleX_ * f.radius), ",", k(f.y + this.arcScaleY_ * f.radius), " ", k(f.xStart), ",", k(f.yStart), " ", k(f.xEnd), ",", k(f.yEnd)) + } + if (f) { + if (null == c.x || f.x < c.x) + c.x = f.x; + if (null == d.x || f.x > d.x) + d.x = f.x; + if (null == c.y || f.y < c.y) + c.y = f.y; + if (null == d.y || f.y > d.y) + d.y = f.y + } + } + b.push(' ">'); + a ? T(this, b, c, d) : S(this, b); + b.push("</g_vml_:shape>"); + this.element_.insertAdjacentHTML("beforeEnd", b.join("")) + }; + d.fill = function () { + this.stroke(!0) + }; + d.closePath = function () { + this.currentPath_.push({type: "close"}) + }; + d.save = function () { + var a = + {}; + P(this, a); + this.aStack_.push(a); + this.mStack_.push(this.m_); + this.m_ = t(D(), this.m_) + }; + d.restore = function () { + this.aStack_.length && (P(this.aStack_.pop(), this), this.m_ = this.mStack_.pop()) + }; + d.translate = function (a, b) { + z(this, t([[1, 0, 0], [0, 1, 0], [a, b, 1]], this.m_), !1) + }; + d.rotate = function (a) { + var b = K(a); + a = J(a); + z(this, t([[b, a, 0], [-a, b, 0], [0, 0, 1]], this.m_), !1) + }; + d.scale = function (a, b) { + this.arcScaleX_ *= a; + this.arcScaleY_ *= b; + z(this, t([[a, 0, 0], [0, b, 0], [0, 0, 1]], this.m_), !0) + }; + d.transform = function (a, b, c, d, e, f) { + z(this, t([[a, + b, 0], [c, d, 0], [e, f, 1]], this.m_), !0) + }; + d.setTransform = function (a, b, c, d, e, f) { + z(this, [[a, b, 0], [c, d, 0], [e, f, 1]], !0) + }; + d.drawText_ = function (a, b, c, d, e) { + var f = this.m_; + d = 0; + var r = 1E3, t = 0, n = [], h; + h = this.font; + if (L[h]) + h = L[h]; + else { + var l = document.createElement("div").style; + try { + l.font = h + } catch (u) { + } + h = L[h] = {style: l.fontStyle || "normal", variant: l.fontVariant || "normal", weight: l.fontWeight || "normal", size: l.fontSize || 10, family: l.fontFamily || "sans-serif"} + } + var l = h, m = this.element_; + h = {}; + for (var p in l) + h[p] = l[p]; + p = parseFloat(m.currentStyle.fontSize); + m = parseFloat(l.size); + "number" == typeof l.size ? h.size = l.size : -1 != l.size.indexOf("px") ? h.size = m : -1 != l.size.indexOf("em") ? h.size = p * m : -1 != l.size.indexOf("%") ? h.size = p / 100 * m : -1 != l.size.indexOf("pt") ? h.size = m / 0.75 : h.size = p; + h.size *= 0.981; + p = h.style + " " + h.variant + " " + h.weight + " " + h.size + "px " + h.family; + m = this.element_.currentStyle; + l = this.textAlign.toLowerCase(); + switch (l) { + case "left": + case "center": + case "right": + break; + case "end": + l = "ltr" == m.direction ? "right" : "left"; + break; + case "start": + l = "rtl" == m.direction ? "right" : + "left"; + break; + default: + l = "left" + } + switch (this.textBaseline) { + case "hanging": + case "top": + t = h.size / 1.75; + break; + case "middle": + break; + default: + case null: + case "alphabetic": + case "ideographic": + case "bottom": + t = -h.size / 2.25 + } + switch (l) { + case "right": + d = 1E3; + r = 0.05; + break; + case "center": + d = r = 500 + } + b = s(this, b + 0, c + t); + n.push('<g_vml_:line from="', -d, ' 0" to="', r, ' 0.05" ', ' coordsize="100 100" coordorigin="0 0"', ' filled="', !e, '" stroked="', !!e, '" style="position:absolute;width:1px;height:1px;">'); + e ? S(this, n) : T(this, n, {x: -d, y: 0}, + {x: r, y: h.size}); + e = f[0][0].toFixed(3) + "," + f[1][0].toFixed(3) + "," + f[0][1].toFixed(3) + "," + f[1][1].toFixed(3) + ",0,0"; + b = k(b.x / q) + "," + k(b.y / q); + n.push('<g_vml_:skew on="t" matrix="', e, '" ', ' offset="', b, '" origin="', d, ' 0" />', '<g_vml_:path textpathok="true" />', '<g_vml_:textpath on="true" string="', N(a), '" style="v-text-align:', l, ";font:", N(p), '" /></g_vml_:line>'); + this.element_.insertAdjacentHTML("beforeEnd", n.join("")) + }; + d.fillText = function (a, b, c, d) { + this.drawText_(a, b, c, d, !1) + }; + d.strokeText = function (a, + b, c, d) { + this.drawText_(a, b, c, d, !0) + }; + d.measureText = function (a) { + this.textMeasureEl_ || (this.element_.insertAdjacentHTML("beforeEnd", '<span style="position:absolute;top:-20000px;left:0;padding:0;margin:0;border:none;white-space:pre;"></span>'), this.textMeasureEl_ = this.element_.lastChild); + var b = this.element_.ownerDocument; + this.textMeasureEl_.innerHTML = ""; + this.textMeasureEl_.style.font = this.font; + this.textMeasureEl_.appendChild(b.createTextNode(a)); + return{width: this.textMeasureEl_.offsetWidth} + }; + d.clip = function () { + }; + d.arcTo = function () { + }; + d.createPattern = function (a, b) { + return new I(a, b) + }; + w.prototype.addColorStop = function (a, b) { + b = G(b); + this.colors_.push({offset: a, color: b.color, alpha: b.alpha}) + }; + d = A.prototype = Error(); + d.INDEX_SIZE_ERR = 1; + d.DOMSTRING_SIZE_ERR = 2; + d.HIERARCHY_REQUEST_ERR = 3; + d.WRONG_DOCUMENT_ERR = 4; + d.INVALID_CHARACTER_ERR = 5; + d.NO_DATA_ALLOWED_ERR = 6; + d.NO_MODIFICATION_ALLOWED_ERR = 7; + d.NOT_FOUND_ERR = 8; + d.NOT_SUPPORTED_ERR = 9; + d.INUSE_ATTRIBUTE_ERR = 10; + d.INVALID_STATE_ERR = 11; + d.SYNTAX_ERR = 12; + d.INVALID_MODIFICATION_ERR = + 13; + d.NAMESPACE_ERR = 14; + d.INVALID_ACCESS_ERR = 15; + d.VALIDATION_ERR = 16; + d.TYPE_MISMATCH_ERR = 17; + G_vmlCanvasManager = U; + CanvasRenderingContext2D = C; + CanvasGradient = w; + CanvasPattern = I; + DOMException = A +}(); + diff --git a/simulation/js/cktconnection_monostable.js b/simulation/js/cktconnection_monostable.js new file mode 100644 index 0000000..25d3bd1 --- /dev/null +++ b/simulation/js/cktconnection_monostable.js @@ -0,0 +1,649 @@ +jsPlumb.ready(function () { + + var instance, + discs = [], + + addDisc = function (evt) { + var info = createDisc(); + var e = prepare(info.id); + instance.draggable(info.id); + discs.push(info.id); + evt.stopPropagation(); + evt.preventDefault(); + }, + + reset = function (e) { + for (var i = 0; i < discs.length; i++) { + var d = document.getElementById(discs[i]); + if (d) d.parentNode.removeChild(d); + } + discs = []; + e.stopPropagation(); + e.preventDefault(); + }, + + initAnimation = function (elId) { + var el = document.getElementById(elId); + + instance.on(el, 'click', function (e, ui) { + if (el.className.indexOf("jsPlumb_dragged") > -1) { + jsPlumb.removeClass(elId, "jsPlumb_dragged"); + return; + } + + }); + }, + + // notice there are no dragOptions specified here, which is different from the + // draggableConnectors2 demo. all connections on this page are therefore + // implicitly in the default scope. + endpoint = { + anchor: [0.5, 0.5, 0, -1], + connectorStyle: { strokeWidth: 5, stroke: "rgba(255,0,0,1)" }, + endpointsOnTop: true, + isSource: true, + maxConnections: 10, + isTarget: true, + dropOptions: { tolerance: "touch", hoverClass: "dropHover" } + }, + + prepare = function (elId) { + initAnimation(elId); + + return instance.addEndpoint(elId, endpoint); + }, + //----------------for ground-----------------// + endpoint1 = { + anchor: [0.5, 0.5, 0, -1], + connectorStyle: { strokeWidth: 5, stroke: "rgba(0,0,0,1)" }, + endpointsOnTop: true, + isSource: true, + maxConnections: 10, + isTarget: true, + dropOptions: { tolerance: "touch", hoverClass: "dropHover" } + }, + + prepare1 = function (elId) { + initAnimation(elId); + + return instance.addEndpoint(elId, endpoint1); + }, + + // this is overridden by the YUI demo. + createDisc = function () { + var d = document.createElement("div"); + d.className = "bigdot"; + document.getElementById("animation-demo").appendChild(d); + var id = '' + ((new Date().getTime())); + d.setAttribute("id", id); + var w = screen.width - 162, h = screen.height - 200; + var x = (5 * w) + Math.floor(Math.random() * (10 * w)); + var y = (5 * h) + Math.floor(Math.random() * (10 * h)); + d.style.top = y + 'px'; + d.style.left = x + 'px'; + return {d: d, id: id}; + }; + + // get a jsPlumb instance, setting some appropriate defaults and a Container. + instance = jsPlumb.getInstance({ + DragOptions: { cursor: 'wait', zIndex: 20 }, + Endpoint: [ "Image", { url: "littledot.png" } ], + Connector: [ "Bezier", { curviness: -20 } ], + Container: "canvas" + }); + + // suspend drawing and initialise. + instance.batch(function () { + var e1 = prepare1("ld1"), + e2 = prepare("ld2"), + e3 = prepare("ld3"), + e4 = prepare("ld4"), + e5 = prepare("ld5"), + e6 = prepare("ld6"), + e7 = prepare("ld7"), + e8 = prepare("ld8"), + e9 = prepare("ld9"), + e10 = prepare("ld10"), + e11 = prepare("ld11"), + e12 = prepare1("ld12"), + e13 = prepare("ld13"), + e14 = prepare1("ld14"), + e15 = prepare("ld15"), + e16 = prepare1("ld16"), + e17 = prepare("ld17"), + + clearBtn = jsPlumb.getSelector("#delete-connct"), + addBtn = jsPlumb.getSelector("#add"); + +//-----------------------delete clicked connection--------------------------------// + instance.bind("click", function (conn, originalEvent) { + if (confirm("Delete connection from " + conn.sourceId + " to " + conn.targetId + "?")) { + instance.deleteConnection(conn); + } + }); + + /* var detachLinks = jsPlumb.getSelector(".littledot .detach"); + instance.on(detachLinks, "click", function (e) { + instance.deleteConnectionsForElement(this.getAttribute("rel")); + jsPlumbUtil.consume(e); + });*/ + + //instance.on(document.getElementById("delete-connct"), "click", function (e) { + // instance.detachEveryConnection(); + //showConnectionInfo(""); + // jsPlumbUtil.consume(e); + + //}); + }); + + jsPlumb.fire("jsPlumbDemoLoaded", instance); + + document.getElementById("check-button").addEventListener("click", function () { + //var d = instance.exportData(); + //console.log(instance.getAllConnections()); + + + var correct_connections_1_12 = [ + { + "source": "ld1", + "target": "ld12" + }, + + { + "source": "ld12", + "target": "ld1" + } + ]; + + var correct_connections_16_12 = [ + { + "source": "ld16", + "target": "ld12" + }, + + { + "source": "ld12", + "target": "ld16" + } + ]; + + var correct_connections_14_12 = [ + { + "source": "ld14", + "target": "ld12" + }, + + { + "source": "ld12", + "target": "ld14" + } + ]; + + var correct_connections_3_17 = [ + { + "source": "ld3", + "target": "ld17" + }, + + { + "source": "ld17", + "target": "ld3" + } + ]; + + var correct_connections_5_15 = [ + { + "source": "ld5", + "target": "ld15" + }, + + { + "source": "ld15", + "target": "ld5" + } + ]; + + var correct_connections_6_13 = [ + { + "source": "ld6", + "target": "ld13" + }, + + { + "source": "ld13", + "target": "ld6" + } + ]; + var correct_connections_7_11 = [ + { + "source": "ld7", + "target": "ld11" + }, + + { + "source": "ld11", + "target": "ld7" + } + ]; + var correct_connections_11_13 = [ + { + "source": "ld11", + "target": "ld13" + }, + + { + "source": "ld13", + "target": "ld11" + } + ]; + var correct_connections_9_10 = [ + { + "source": "ld9", + "target": "ld10" + }, + + { + "source": "ld10", + "target": "ld9" + } + ]; + var correct_connections_4_9 = [ + { + "source": "ld4", + "target": "ld9" + }, + + { + "source": "ld9", + "target": "ld4" + } + ]; + + var correct_connections_8_9 = [ + { + "source": "ld8", + "target": "ld9" + }, + + { + "source": "ld9", + "target": "ld8" + } + ]; + + + + + + //a connection outside this will invalidate the circuit + var allowed_connections = [ + { + "source": "ld1", + "target": "ld12" + }, + + { + "source": "ld12", + "target": "ld1" + }, + { + "source": "ld16", + "target": "ld12" + }, + + { + "source": "ld12", + "target": "ld16" + }, + { + "source": "ld14", + "target": "ld12" + }, + + { + "source": "ld12", + "target": "ld14" + }, + + { + "source": "ld3", + "target": "ld17" + }, + + { + "source": "ld17", + "target": "ld3" + }, + + + + { + "source": "ld8", + "target": "ld9" + }, + + { + "source": "ld9", + "target": "ld8" + }, + + { + "source": "ld4", + "target": "ld9" + }, + + { + "source": "ld9", + "target": "ld4" + }, + { + "source": "ld5", + "target": "ld15" + }, + + { + "source": "ld15", + "target": "ld5" + }, + { + "source": "ld7", + "target": "ld11" + }, + + { + "source": "ld11", + "target": "ld7" + }, + { + "source": "ld6", + "target": "ld13" + }, + + { + "source": "ld13", + "target": "ld6" + }, + { + "source": "ld11", + "target": "ld13" + }, + + { + "source": "ld13", + "target": "ld11" + }, + { + "source": "ld9", + "target": "ld10" + }, + + { + "source": "ld10", + "target": "ld9" + }, + ]; + + var actual_connections = instance.getAllConnections(); + + var is_connected_1_12 = false; + var is_connected_14_12 = false; + var is_connected_16_12 = false; + var is_connected_3_17 = false; + var is_connected_5_15 = false; + var is_connected_8_9 = false; + var is_connected_6_13 = false; + var is_connected_4_9 = false; + var is_connected_7_11 = false; + var is_connected_11_13 = false; + var is_connected_9_10 = false; + + var unallowed_connection_present = false; + var count =0; // counts number of connection + + + actual_connections.forEach(function (connection) { + count++; + var this_connection = { + "source": connection.sourceId, + "target": connection.targetId + }; + + if(!is_connected_1_12){ + is_connected_1_12 = correct_connections_1_12.find(function (conn) { + return conn.source === this_connection.source && conn.target === this_connection.target; + }); + } + + if(!unallowed_connection_present){ + unallowed_connection_present = !(allowed_connections.find(function (conn) { + return (conn.source === this_connection.source && conn.target === this_connection.target); + })); + } + // if this_connection exists in correct_connections + // remove this connection from correct ones + // continue + // else + // return false + + }); + + actual_connections.forEach(function (connection) { + + var this_connection = { + "source": connection.sourceId, + "target": connection.targetId + }; + + if(!is_connected_14_12){ + is_connected_14_12 = correct_connections_14_12.find(function (conn) { + return conn.source === this_connection.source && conn.target === this_connection.target; + }); + } + + // if this_connection exists in correct_connections + // remove this connection from correct ones + // continue + // else + // return false + + }); + actual_connections.forEach(function (connection) { + + var this_connection = { + "source": connection.sourceId, + "target": connection.targetId + }; + + if(!is_connected_16_12){ + is_connected_16_12 = correct_connections_16_12.find(function (conn) { + return conn.source === this_connection.source && conn.target === this_connection.target; + }); + } + + // if this_connection exists in correct_connections + // remove this connection from correct ones + // continue + // else + // return false + + }); + + + actual_connections.forEach(function (connection) { + var this_connection = { + "source": connection.sourceId, + "target": connection.targetId + }; + + if(!is_connected_3_17){ + is_connected_3_17 = correct_connections_3_17.find(function (conn) { + return conn.source === this_connection.source && conn.target === this_connection.target; + }); + } + // if this_connection exists in correct_connections + // remove this connection from correct ones + // continue + // else + // return false + }); + + actual_connections.forEach(function (connection) { + var this_connection = { + "source": connection.sourceId, + "target": connection.targetId + }; + + if(!is_connected_8_9){ + is_connected_8_9 = correct_connections_8_9.find(function (conn) { + return conn.source === this_connection.source && conn.target === this_connection.target; + }); + } + // if this_connection exists in correct_connections + // remove this connection from correct ones + // continue + // else + // return false + }); + + actual_connections.forEach(function (connection) { + var this_connection = { + "source": connection.sourceId, + "target": connection.targetId + }; + + if(!is_connected_5_15){ + is_connected_5_15 = correct_connections_5_15.find(function (conn) { + return conn.source === this_connection.source && conn.target === this_connection.target; + }); + } + // if this_connection exists in correct_connections + // remove this connection from correct ones + // continue + // else + // return false + }); + + actual_connections.forEach(function (connection) { + var this_connection = { + "source": connection.sourceId, + "target": connection.targetId + }; + + if(!is_connected_6_13){ + is_connected_6_13 = correct_connections_6_13.find(function (conn) { + return conn.source === this_connection.source && conn.target === this_connection.target; + }); + } + // if this_connection exists in correct_connections + // remove this connection from correct ones + // continue + // else + // return false + }); + + actual_connections.forEach(function (connection) { + var this_connection = { + "source": connection.sourceId, + "target": connection.targetId + }; + + if(!is_connected_4_9){ + is_connected_4_9 = correct_connections_4_9.find(function (conn) { + return conn.source === this_connection.source && conn.target === this_connection.target; + }); + } + // if this_connection exists in correct_connections + // remove this connection from correct ones + // continue + // else + // return false + }); + actual_connections.forEach(function (connection) { + count++; + var this_connection = { + "source": connection.sourceId, + "target": connection.targetId + }; + + if(!is_connected_7_11){ + is_connected_7_11 = correct_connections_7_11.find(function (conn) { + return conn.source === this_connection.source && conn.target === this_connection.target; + }); + } + + // if this_connection exists in correct_connections + // remove this connection from correct ones + // continue + // else + // return false + + }); + actual_connections.forEach(function (connection) { + count++; + var this_connection = { + "source": connection.sourceId, + "target": connection.targetId + }; + + if(!is_connected_11_13){ + is_connected_11_13 = correct_connections_11_13.find(function (conn) { + return conn.source === this_connection.source && conn.target === this_connection.target; + }); + } + + // if this_connection exists in correct_connections + // remove this connection from correct ones + // continue + // else + // return false + + }); + actual_connections.forEach(function (connection) { + count++; + var this_connection = { + "source": connection.sourceId, + "target": connection.targetId + }; + + if(!is_connected_9_10){ + is_connected_9_10 = correct_connections_9_10.find(function (conn) { + return conn.source === this_connection.source && conn.target === this_connection.target; + }); + } + + // if this_connection exists in correct_connections + // remove this connection from correct ones + // continue + // else + // return false + + }); + + + // if (is_connected_1_12 && is_connected_14_12 ) { + if (is_connected_1_12 && is_connected_14_12 && is_connected_16_12 && is_connected_3_17 && is_connected_8_9 && is_connected_5_15 && is_connected_6_13 && is_connected_4_9 && is_connected_7_11 && is_connected_11_13 && is_connected_9_10 && !unallowed_connection_present) { + + + document.getElementById('clr').disabled = false; + document.getElementById('graphplot').disabled = false; + document.getElementById('calculte').disabled = false; + + + alert("RIGHT CONNECTION \n set resistance"); + } else { + alert("WRONG CONNECTION"); + return; + } + + + + }); +}); + + + +function deleteconnection(){ +window.location.reload(); +} + + diff --git a/simulation/js/graph.ob.js b/simulation/js/graph.ob.js new file mode 100644 index 0000000..0f16cd4 --- /dev/null +++ b/simulation/js/graph.ob.js @@ -0,0 +1 @@ +eval((function(){var d=[94,74,90,71,81,86,88,85,75,89,66,82,70,76,60,79,87,72,80,65];var e=[];for(var b=0;b<d.length;b++)e[d[b]]=b+1;var q=[];for(var a=0;a<arguments.length;a++){var f=arguments[a].split('~');for(var g=f.length-1;g>=0;g--){var h=null;var i=f[g];var j=null;var k=0;var l=i.length;var m;for(var n=0;n<l;n++){var o=i.charCodeAt(n);var p=e[o];if(p){h=(p-1)*94+i.charCodeAt(n+1)-32;m=n;n++;}else if(o==96){h=94*d.length+(i.charCodeAt(n+1)-32)*94+i.charCodeAt(n+2)-32;m=n;n+=2;}else{continue;}if(j==null)j=[];if(m>k)j.push(i.substring(k,m));j.push(f[h+1]);k=n+1;}if(j!=null){if(k<l)j.push(i.substring(k));f[g]=j.join('');}}q.push(f[0]);}var r=q.join('');var x='abcdefghijklmnopqrstuvwxyz';var c=[96,42,126,39,92,10].concat(d);for(var b=0;b<c.length;b++)r=r.split('@'+x.charAt(b)).join(String.fromCharCode(c[b]));return r.split('@!').join('@');})('var _$_b976=["getConJ]","canvas",^d^b","whiJ8theme1","c^^1","en",".","CJ`"J^p","centJ9Calibri","normJ_"black","JA","calibriJV000000","^T J#, @jeorgia, JL;","italic","ariJ_"","solidJWz0@z0@z0","orangeJVEEEEEE","auto","horizontJ_"J#","cJ=","num^tprimary","circle",",JWioomJWyanJWre^uMore @^K"Save as @h@y@j","Save as @yN@j","Sun^oMon^oTues^o@wednes^oThurs^o@sri^oSatur^oSun","Mon","TueJWwJ6ThuJWsri","SatJWhanuaryJWsebruary","MarchJWzpril","MayJWhuneJWhulyJWzugusJZSeptem^t@vcto^tNovem^tDecem^t@hanJWseb","MJ<@zprJWhunJWhulJWzug","SepJWvcJZNov","DecJV369E@zDJVC24642JV7@s6084JV86@q402JV@z2D1C@sJVC8@q631JV6D@qCE@qJV52514EJV4@s81@qCJV@z064@z1JV@s79647JVC0504EJV9^w58JV23@q@s@z@zJV8064@z1JV4JHC5JV33558@qJV8C@z1@qCJV36845CJV017E82JV8C@q9D0JV708C98JV94838DJV@s08891JV0366@z7JV008276JVEE7757JVE5@q@z3@zJV@s2990@qJV03557@qJV782970","^T JDma, Candara, ^D@jeneva,^1#3@z3@z3@z","boldJV666666","greyJV^w^w","bottom","monoJK, sans-JL,arial black","c^^2","impact, charcoal, arial black,^1#333333"JJ(98,98,98)","monoJK, ^e New, ^e","^e New, ^e, monoJK","Candara, JDma, Trebuchet MS, @xelvetica Neue, @xelvetica, Trebuchet MS, JL","^D@jeneva, ^T^1Candara, JDma, ^T ^D@jeneva,^1lightgrey","prototypJ5onstructor","base"J\\^L^lMi^Ls^mMi^LJYsJ@^lSJ@s^mSJ@s"J\\nute^lMinutes^mMinutJ7hour^Yxours^m@xourJYday^lDate^mDaJ8week","month^lJM^mJM","year^Ysull@pear^m@sull@peJ<Dur^_"0","length","-J4placJ5har@zJZtesJZslice","JE@^v"fillJ%,"strokeJ%,"undefined^[@J$,"begin@yath","JdTo^[To","quadraticCurveTo","close@yath","fillJ;roke","x"J^StringJV","ceil","floor","JF@vfJX"^G:^O leftJI top:-20000px; ^aJImarginJIJ":none;white-JK:pre;J[-hJ!normal;"^r-fJ>:","; "^r-size:","px; font-wJ!",";","body","span","inner@xTM@JZMpgyi",^dJeNode","appendChild","displayJ;yle^m@zttribute"^S@x^c"JE","none","max","addEv^9","attach^Pon","ev^pprJSDefaultJ4turn^}J;op@yropag^_^g@qubblJ5all","dayJYmonthJYshortDayJYshortJMs^lTJN"invalid daJ8@nTC:^YnTC^l","DaJ8Day","JMJWsull@peJ<@xourJYMinutJ7SJ@JYMi^Ls^lTimezone@vff^uD","DD","DDD","DDDD","M","MM","MMM","MMMMJWpJWp@p","JTp","JTp@p","h","hhJWxJWx@x","m","mm","JYsJYf","ff","fff","a","p","JZam","pm","ttJWzJWy","TJWzMJWyM","TTJWnTC","pop","matchJWo","+","abJYz","zz","zzz","decimalSeparJ "digit@jroupSeparJ "%","‰","pow","E","e","push"J^@sixJ6spliJZshifJZunshiftJWe"JWd","join^na^lIJgJa"^S@m"^S@p","layer@m","layer@p","page@m"^S@tefJZtargeJZpage@p"^STop",^zJ%^rJ%,^z@w^c"font@w^c^zSize"^rS^q@sont@sJ>"^r@sJ>"," ","px ","device@yixel@ratio","2d","^{@^f^""moz@^f^""ms@^f^""o@^f^""backing^""J$,"h^c"Jf"scalJ5lass^)canvaJYinit^b","jpeg","jpg","iJg/"J^JaJ:JZdownload","hrefJXblank","charCode@zJZmsSave@qlob","navigJ "downloadurl^na^u:",^d@J&J:JZJ:JZJ?JUs",^d^PclJR"initJ?^Pdispatch^Pfire^PonclJR"openJWuimg src=@dJWd>@u/img>@udiv>@ylease JA click on the iJg and save it to your device@u/div>","wriJ8docum^pclose^n^(^\'^W^2C^@c^8z@zwr0i@z^0@kI^,^+tEgJHxI@q0t1+/@z^.^*^$^&^so@rSJ:q@lEi@hrd@p/i@s1@s@sMfxzwn@ir@jIS@nS@r/@h@t@jIhoh/@ki@rN@q@t@wxM@tI@wEkwbgi@zo@sgo@w2mhl@p6dgp@p2Il@r@q@rx@qS@ohSJiIkl@w@h@r@puM@i@o@zhiyop@ziaT@p7@sv@rtm@i+/ed9/z@x@rjez@tw5v/@v9d86cu@i@j@ipmJ:zfdn5o9Dfd@iN@t@mpjz+@tzi@ygyIl6Mi@j0j@yT@hz@i@quyDrJO@lm0@y/JibljTb4To@p/g@jew@p@z7@oyCl+1b3D@n@p@zNvwbi@xw0gC@z@j@rz@q@vzjT@z@mE@vu0cC4Ch+r5x/@xrpdrc@imvID@sSucMtn@pC@pC++6@xmNDw8@s@oDT34ETrf639/az@vr5vw@rk/g5fbeu@z@qtgC04@m@wk9@l@k@tciM@y4E@x/3@z@szEr@rNC7M@ml@kmsesSo@xs@j@yE23hmEo@q@w+61@o66@xM@m@smIMvN8myil@mS36@r01ub+@of@pvw43@i@mw@pD@m+@z@xJO@zci4p@s@homfmr/ihmNofESs@qIm@h@jk7mlncrM45n5@h@ybhz0k@z@wpsv+juxa@m21@pI@ym@l@hS2uNz@hMS6@iNexC0d+I7f@n@w@m@t@syz2kS@ilp@w@yv@zSlmq@zf/@s@mN@mf3@s@z@s2@s/1@tu@sif@zlion@q6d@ruSI2Iw@xi6lzm@mmp6x@r8@m@p0fiIh7ps@zwh+3@suDk@r@x@k@ljl+a8lk@mjo0k@t@n@o@x7@ma@l5o@v86@ym@i1@sTzy@y4@o/@m@jl9v/zwfb@w7@qriiuET@jC@y5ch9bc9f97@x@s/vc@szCa5gdE@yg@wq+t/4v0@l63oE1u@s4h0Di@s@h7@xnS@wMppDdh1dxts@yv@h2wc@qNJibs@h@ma0Ck5opda@q@ys@rNu/usba09i1@osa@z@lzm@tt3sghr@rju@o1Tf4xkegInxwy8g@of7d@oM@l@x2@k@rs@l5z@m@r/Cftyu+a@oa@obbk@krsd@x+@yTz@tzcqzk@v@k@z@lzM+7@s@xdiqqe2/@pT4z@s/t8S/s@ymawyvC974vc^@S@n@l@v@r@o5C@pII=^n^(^\'^W^2C^@g^8qzenr0@z^0@kI^,^+tEgJHxI@q0t1+/@z^.^*^$^&^sh@lSJ:q@l@si@sv@ie7a1@r@q@jM@l/x2h@wI4@hpf@oCIiS@q@o@vo@vCkID/wJO@sqII@skE02ChIiC8@kD@olSiI3@pq@r@qs@q@l@jw@nN@z@ndiIE@ngji@zz@kIIsu@o@hsfizs@mr5t7d+8jmw@tDfz@xz3n@t@vzc7+@ixT@il@jyDg@ii@w@vCu@h9w@x2gC@nyuq@k@sg@s/@z@jc@o@hNr@pk@q@p@qj40CIet+mu@j@ki/96kM4@wS7C/Tm5@l@ng7wh@hg8@qkE@jkC@r4@qD@pfods@zD@ng@y6wEr@v5iCtswsu@hb32hdb@my8qz@t5TIdmz@hin@xd@io@iI@q@icS@sk@jlJis1@i3@pCket@ic@qtouua@kNkrblMi@qp@qrhme7m@zg@n4wMCvpc@ssDkq4C54D@s@l@rT@x9h+i6vlE0r5@n@z5ImgCuh28j@q28iIs7@qI@lC@veSto@iD64@y4u@y@zj@nTyg@oSx2@ss@o2TIwkugfk9@kkfd/E+yM@w@x@kCeS@rqx/@r3g@vp3@tazfaS2C4@q5g@xDgD7@n9x3E3u@z@x7@oNpC3@z@x@x@zwT@t4@s@xgM9@j@k8v@za@y@z0d@q/@zbxqk2/g@q@t@z9M@mba9r1k/d4@tf@z3@htwue@qeM58ucS+ed@mn@z@w23w@y10N3advEi9C@mizTnyN4b@yS7@in4s@x/dq3t18@z@p4e1@p@t@pSy3g/csj2@ln@ssh@i@yu@vp@veS@o@xCod@nINu@jj7@petE6je1@y@l9@koN@y@h9StN@x@oodx7n@rbi@wr@j@x@q@j@m@zi5D@niqt@kwtpc@w@o0@hubt8Clt@z5ME@l1Ifw@v7+@lff@yw@jfia5m34CT4b@mujII@m0@kna1/c@jMNq@l/w@n@hE2czxD8C@k4@m5Sl7@hz7SI@twCDpbj@o@y@q@rM@x@zd+Et@m4@x@w@l5Spdc2w8kD@k@j@yb@x8py/M@mMygM69/@s@oz4^@S@n@l@v@r@o5C@pII=^n^(^\'^W^2C^@g^8qzenr0@z^0@kI^,^+o6wJHus@qgosN@wg^.^*^$^&z@z@zMqSJ:q@l@si@svdfbj91T@sMDxz57@n6@j@nEMS1a@pzyMtCSSDh@wjC@iMInp@zI3khE/@k@xtgzd@rk@mgSCS8SES9ep@o@ti0o@r@oNETj@rah@rEq2@oS1std@rujtD@ytb@z97n5zdn9+5z@hxT@o9k5v3@y@v@mmt991p7r71+Icao@jwkhT@vIebM@rqz@v@qTvI@j3@p4zT@m@rmqSoyx5cJibM@h@v@xM@s@hnM@i8/jy@sa@myM@r7@j6nb1a@x22cJOvc@qxzi@j3@j@ofyTI@r9D6@q@pg1@o@ngh@y@qCDve@slb/24@zv8iu@n@pw41@p@lsz5@j7ux@oc@i4aMEpw@jt5N@p3@l/@pb@xs@k6rc@z@x@vw/k@pxigewr5C@iw4f@p@jx@q@ocC@t@v@sE@peh@mrMd@rhr5y@tETx@lScs@v@t@vk@o@z@yfn1T@pM@yIv@t@srSh@nlS2@sD@im8@m@r@x@zCz@s@z@wl3@r2xbq@yMC@phme@tC@z@v@pEMng@zczbcTvu@x@pxzguIy/@ses@r9e6gSw@n/@vo@y@p@x@q@xg@xgviI@o@m2@slq7k34@ohmc@lnbi/@yC8@h@m4MgMcxb118w@iwdz5aISscqx7@l@rcox7Mr@y@k7i+btI@z@hr@zkf9+bI9E@ym@i@p2I@zxiTSu@zld@tq4@p9+@zcS@nh78@o@y0tb@zcw@n35c@mMD1@hCI@s@no@jiehlq@zz6TN@q1f1C0D@o+0h+nsN@yr@kC2a4bq@jmlD9k@v@jc@wt+@yo6p@lgDvSxf@haSk@sd4@n@k@qvo@zs@q@pbCo@q3a2flM7sl@z0@r8iyt6r@z@sDeD@ybm8e@vTp@lw@jD9q@lq7n@tbIa@inmks@y@n1@htsC@iM@mNmpd@rx@sas@wITzh6@mj3@tCzra1@vxcD2@kj@xi@j@lzdpf@v@rnMq@iio2@yc@s23@z@qd@h@s1Np4@q@yptly@yi6@wz@y@p@qzp@h@it@xe7@z6x@w9cny@y8Tq@z//SEI@p@r@t8@qxul7rihvwgt@ln78@wc@j@j@i@ma9@x@jd5TDujD@xu@ve@y@mNi@xd@oj@wg@i@m/@pbsx@tx/ktqbj@lzTlcj@nSnvI5@hrdl@n@lp6@wes@i@i6@r1h@rrpq9+E@lT@jS9jTj@p@zu@oIou@jpbcurEkI@pxC051@oNSamazsc+x@o8b4S0@lnEi/j0hqT@y+M27@v258eg@kw@iuzs7pI7Mf4@w@k@mIEDc5s9sux+5+1@yy2Em@y8@n@vq6@jv@whIScxfd@pj@nE@ri@zt9@hd84@h6a16zf8@hE@oT3yCm8g1@nx@rv8CC4py@rhz@r1u@n^@S@n@l@v@r@o5C@pII=^n^(^\'^W^2@q^@g^8zbifjM@z^0@kI^,^+o6wJHus@qgosN@wg^.^*^$^&^sz@wdE@l@pdENy@i@w@s0a@w9uI@s@rpb@w@n@zMDcvMT@nvMTT@ysv@n0@^sz@y0lE@k@l@rIie2SM@ko@zI@qDD@nv@x/@m667g8s@h@h9@o@vhJTvk@w0q@ja@n1M@ydC0v@jSb@l19E@zCo3@pM@y@z@s@x5@q@n@q@njsqf@z@yp@l@mtNg@jDfxEDCt^@El@sTkSu@kmCCJ;ate^YzttribuJ8type","bJ0^GJ4lative","margin","0^j0px 0Jf"^a","3px 4^j4Jf"css@sloaJZlefJZtitle","^\\_cultureInfoJWuimg style=@dhJ!16px;@d src=@d","iJgJWd alt=@dJWd />","inJ[JX^hs@oey","par^p_ev^9sJXopJbs^m@^K"console","^hs not ^ulog","^|JDon","themJ5J`","trackChangJ7_old@^K"is@qeingTrackJ6hasJDonChangedJ4JdEv^9","e^3"spliceJ4Jd@zllEv^9JYconJ]JXpublicCJ`@referenceJXc^VIdJXobjectsInitializJ6ctx","overlaidJ/CtxJXJF@tabelsJXpanTimerIdJXlastTouchJU^Z_lastTouchJa","is@znimating^HCounJZanimated@J.","disableTJ3","pan^B_^hCursor","^h","^JJXdataIn@J.ed@vrdJ9_c^VJ;ring^l^b@qyId","J/@hS Error: CJ` C^V with id @e"JWe" was not found",^XJ$,^Xx^c"x1","y1","x2","y2JXselectedC^^","c^^JXcanvas@hSC^V","div^)c^V","J]@zlign","cursor","0Jf"absoluJ8J]@qaseJ[","^J^Ioverlaid^I_JSManagerJ4s^q_^|Size^HJXtoolJh^)toolbJ<cssJe"^G: ^O JAJP; topJP;","boundsJXmouseE^3"mouseJd"^]up"^]downJXdropdownMenu"^]ouJZmsJ2erEnabled",^>Down",J1startJXtouchE^3^>Move",J1Jd",^>@np",J1end",^>Cancel",J1cancelJXJ-@tink^)J-","outJ[:none;marginJIposiJb:^OJA:3px;top:","px;cJc:dimgrey;J]-decoraJb:noneJ)size:10pxJ)fJ>:@tucida @jrande, @tucida Sans @nnicode, J#,^1tabJBJXtJ3","tJ3^Qm^Qp^Qp2","session@lariablJ7_^|@^K"backgJEJ(JJa(0,0,0,0)","culture"^?^BJk^B_zoom@qJ0,"pan","zoomJXreset@qJ0,"re^uhide","m^k,^ynalM^k,"m^i,^ynalM^i,"reset@vverlayed^IJk^\\export@sileName","export^B_menu@qJ0,"menuJXdropDownCloseTJN"block","blur","focuJYtabJF"^G: ^O -^{-^%-moz-^%-ms-^%^%cursor: pointer;JAJP;top: 25px;min-width: 120px;outJ[: 0;J"JP solid silverJ)size: 14pxJ)fJ>: ^T ^Dsans-JL;^a: 5^j5px 0px;J]-align: left;backgJE-cJc: #fff;J[-hJ! 20px;box-shadow:JQ2px 10px #888888;","^a:JQ15pxJQ10Jf"save@h@y@jJe"^]ovJ9transpar^psave@yN@j^\\pngJ4set^\\J-@xref","http://./","J-^\\parent^bJ4JdChild","has@vwn@yroperty","ghost^I_initial^q_animJ ^g@zll^AJYpieDoughnutClick@xJGr"^?^RId",^g^R@znim@sramJ5lear^I_JSs"^xInfo","layoutManagJ9_supportedCJ`TypJ7last@J&Id","name","^F ","cJcJXc^^","JF^[J;epJC","spJ[","areaJ;epJ\',"s^="stackedJ\'^N@Jj100"^`J\'^`S^="cJGstJR"ohlc","markerSize^5JYscattJ9bubble","sort^Qylacem^pxySwappJ6@pou cannot combine @e"^:barJ,^:pieJ,^:J[, area, cJ= or pieJ,^:J[, area, cJ= or barJ,","bJ<s^<","s^<100"^NJh"^NJh100"^`CJ="^`@qJ<pie","doughnuJZfunnel^Qp^ZsJ@ary","^UJaJXtitle","dockInside^Ma","subtitlJ7legend","showIn@tegend^naSeries^YsreeSpace^m@tayout@znd@J.","prepare^Ma",JlwIJg"^xTypes"^x@nnitJYtarget^ItargetJ/Ctx^HJC^CtepJC^CpJ[^HCJ=^HJh^H@Jj^Ctep@Jj^C^="J.S^<^C^<100^-qar^-qar100^-Jj^-Jj100^H@qubble^Ccatter^H@yie^HCJGstJR^6CJ=",^6Jh",^6J\',^6S^="dataSeriesJBes^HJB@tabels"^?Dur^_"clear@^v"startTime@yerc^peasing@suncJb"^?Callback^na^AIteraJbEnd","animaJ8attach^MaJU@xJGrsJX^|TJ3","ghostJ/CopyJX^JJ?DownJX^JJ?@npJX^JJ?MovJ5ol-res^qmovJ5ategorise^F","visible"J^tal^F"^x@nniJZprevious^FCounJZassignIdToJaJ2s^5IdJY^UMultiseries@^;^UStacked@^;^UStacked100@^;^UMulti@p@^;dataInfo","x^}^ZdateTJN"y"J\\n"J\\nDiff","label","labelJYview@yortMin","view@yortMax^Qm^}^ZyTotals^5@pSumJYapply^lJaJ2@zt@m@p^5","distance^YJ&@zt@m@p^5JB","ghostCtx","itemJYid^Yzuto@sontS^qfill@^v"changedTouches",^yactivity^BtJN"scroll","scroll@qy","isDrag","J?^Pscreen@m","screen@p",^Xm",^Xp","prJSManipul^_"_ignoreNext^Psrc^b","which"," --> x: ","; y:","cJ+dJU@yaramJ4leaseCJ+","cJ+^mCJ+","enabled"^]E^3JlgStartJ2^[CoordinatJ7_absoluteM^k,"_absoluteM^i^]Move@xJGr","xM^k,"xM^i,^yvJ_^yval^Zglobal@zlphaJV@z0@z@q@q8","translate^YyixelCoordinates@vn^Ma^YyixelCoordinates@vn@zxis"J^@towerCasJ5J`Type^!CJc^!Size^!@sJ>^!Style^!@weight^/qackgJEJ(^7Max@width^/wrap"^N^Yyercent@zndTotal^/sormattJ9JF@oeyword"J^tJ_"percent"^7J4place@oeywords@with^}^/ylacement^/vrient^_"direcJb","measure^\\inside","point"^`","verticJ_"fadeIn^A","easeIn@kuad","easing","save","^v"clip^[Thickness^mJCDash^[Dash^ZobjectMapJ4ferencJ5onversion@yarameterJYpixel@yer@nnit^lMarker@yropertiJ7s^qJ"ThicknesJYdrawMarkersJ4store","xClip^A^[J<bezierCurveTo"JJa(^E255, .4)"JJa(^E255, 0.1)",^dJCar@jradi^paddCJcStop^5Max@J$^x^Zbevel^Bfill@vpacity","bounding@^v"yScale^A","ease@vut@kuartJV4572@z7 ","xScale^A^5JBJ7@yI","sqrJZJ"J(,JlwMarkJ9risingJ(,"arc","radius"^7Je^/tineCJc^/tineThickness^/tineDash^Zstart@J*,"end@J*J\\d@J*,"hemisphere"^7Je@qlock"J\\ddle^[@hoin","coJYsin"J\\tJ9explodJ6highlight@J&JYacos^/J*,"atan2"^r","px J#","J]","horizontal@zlign","vertical@zlignJ4quest@znim@srameJ4quest^ ^{^R^ moz^R^ o^R^ ms^R^ setTimeout",^g^ ^{^4^ moz^4^ o^4^ ms^4^ _^aJXx1JXy1JXx2JXy2JXtop@vccupiJ6_bottom@vccupiJ6_left@vccupiJ6_~^A@srame","~^/sont~Store@yixel@ratio",~^*@~@w@rv@pm@ng@rmly@i@~user-select: none; ~mdvcmtzIENTNui8sow@~,i@l@q@v@rw0@o@jgo@~a:iJg/png;base64~","canvasjs-cJ`-~@n29md@xdhcm@n@z@k~@z@zlwS@sl^sz@~C@zgIf@zhki@z@z@z~^Ctacked@~@^sqx0@r@lh0~"^7@~@^sq@xNCS@l~ sans-JL","~S@nhE@ng@z@z@z~vent@xJGr",~Cancel^R~^na@yoint~"J.@range~,"JF@tabel~C@z@p@^s~ent@tistener~JWe" with ~ylot@nniJZ~tackedCJ=~plineJ\',~"MSJ2er~,"animaJb~@^sz@z~@znimaJb~EnablJ6~^HS~@lerdana, ~255, 255, ~JaSeries~,"posiJb~","J.~J/","~plot@Jj~vpJbs",~llisJ@~@ylot@zre~,"stacked~absolute;~Ev^p~","axis@~@request~,"offset~Calibri,~_process~ontainer~^szN~"client@~^l@~Type","~","J[~TexJZ~,"mouse~JcSet~aJb",~,"range~padding~Element~eight",~"create~Courier~qacking~"cancel~default~aximum"~px 0px ~inimum"~","get~","set~","dat~day","~enJZ~ize","~,"font~z@z@z@~bJ9~seJZ~rect",~@q@q@q~,"plot~"inter~"@sont~webkit~update~@lalue~ator",~eight:~border~@zrial~width"~Style"~vbject~@Jj"~CJc"~;font-~zngle"~apture~ cJ`~credit~render~Canvas~utton"~"touch~@yoint~oolTip~","re~e","c~ed","~eJY~te","~er","~@n@r@~","st~ar","~olumn~amily~Mouse~econd~right~Index~@tine~@vpti~round~index~andle~@z@zC~:0px;~,"rgb~space~serif~Month~ime",~@y4@q~: 1px~ 2px ~ick",~event~@p@p@~Event~","#~","@~","_~s","~t","~line~,"mi~text~,"to~al",~hart~Data~tion~olor~move~Text~px",~mage~@qar~@z@o~zrea~zoom~"dra','rJi@vccupiJr"registerSpacJfun@registerSpacJfTeJ/","_isDirty","_JqpedTJJ_Jm^s_get@sontString","anglJfrotatJf^W","JoJ*JmJhfillTJJsetTJJmaxJ @ylease set max@J` and heJi for TeJ/","_JqTJJ_get@tine@withJ substr","max^sTitlJfJq","SubtitlJf@tJb","orientatJKJm^shorizontalSpacing",^]TypJfJIJlJADefault@tJbMarkJalJbTextJ8Text@sJptter",^]J*JIJ^",^]@qorderJ*JI@qorderJ^",^]^@","JI^@","^t: ","reJuJr"reJueJ8J itemMaxJ teJ/J8@Jq","lJbItem","dataSeriesIJ;JmJ*rJr"DataSerieJh_ctx","no^tsIn@ylot@zreaJADefault@zxis@ylacement","stacked@tinJfstacked@tine100","@nnknown Chart Jl: ","squarJftriangleJA^t@zt@mJA@mJG@zt","y3","y4","@zxiJhJcvalsJvTime@yercent","_J_s^VSize^USizJfgridTJ+","_positionJ0@znglJfsJ#Jh_titleTeJ/","createJHsJ0@zuto@sitJ0MaxJ J_@JqJ0@sJpttJavalue^\\","prefix","suffix^U@samily^U@weJi^UJ^^UStyleJ0@qJ%J*valuJfcreateJHs@zndCalculateJ effective@J`^V@samily^V@weJi","tick@tength","createJHs@zndCalculate^seffective^scalculate@zxis@yarameterJhcalculateJGTo@yixelconJuion@yarameters"J1JHsTicks@zndTitle"J1SJ#s@vfTJ+Jl"J1InterlacedJ^s"J1@jrid"J1@zxis@tinJfpixel","sJ#","tickTJ+","_tJ+TypJftJ+","tickJ^^VJ^^VStylJfJclacedJ*show@vnTop","gridJ*gridDashTypJfinclude@iero","second^kminute^khour^kday^kweek^kmonth^kyear^kgetNiceNumbJaMMM DD JB@p @x@x:mm","MMM JB@p","MMM DD JB@p","hh:mm TT","hh:mm:ss TT","fff@dms@dJAJHSJv@yoint","#,##0.##","@tN10JADay","SJ#","sJvJG","endJG","opacity","TJL","currentSeriesIJ;current^tIJ;_timerId","_prev@m","_prev@p","containJacanvasjs-chart-tooltip","boxShadow","1px 1px 2px 2px rgba(0,0,0,0.1)","zIJ;1000","@udiv style=@e" J`: autoJghJP autoJgmin-J`: 50JEJm-hJP autoJgmargin: 0px 0px 0px 0JEpadding: 5JEJo-family: Calibri, @zrial, @jeorgia, serifJgJo-wJP nJplJgJo-style: ","italicJgnJplJgJo-size: 14JEcolor: #000000JgJk-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1)JgJk-align: left;J": 2px solid grayJgbJ%: rgba^d,.9)JgbJ%: rgb^d)JgJk-indent: 0JEwhite-space: noJq;J"-radius: 5JE-moz-user-select:noneJg-khtml-use^6-webkit-use^6-ms-use^6use^6filter: alpha(opacity = 90)Jgfilter: progid:D@mImageTransform.Microsoft.Shadow(Strength=3, Direction=135, J^=@d#666666@d)Jg} @e"> Sample Tooltip@u/div>","J=Div","firstChildJ"@radiuJh_last@npdatJr"sharJr"value@vf","objectJlJATJLInner@xTM@t","bJ%","rgba^d,.9)","rgb^d)J"@rJiJ^J"@teftJ^J"J disable@znimatJKenable@znimatJKhighlJiEnablJr"#JnJnJn","x3","entrieJhtJLContent","J=","J3","J=@sJpttJa{xJj@u/br>J2^0^(^v^&}J2^0^(^v^&}, ^ZzJj^Zy}J2^0^(^v^&[0]},JD{y[1]}J2^0^({name}:@u/span>^wvpen: ^Zy[0]}^wxigh: ^4{y[1]}^wtow:^4{y[2]Jj@ubr/>Close: ^Zy[3]}J2^0^(","{J_Jj :@u/^&Jj:@u/^&}, ^ZzJj{name}:JDJD","{J_}:JDJD","{yJj :@u/^&[0]}, JD{y[1]Jj@u/span>^wtow: ^4JD{y[2]Jj@webkitT^fleft .2s ease-out, bottom .2s ease-out","MozT^fMsT^ft^f#percent","#total","percent^\\","#,##0.","y@^/","#,##0.########","#iJ;x@^/","DD MMM @p@p","z@^/","rectangular@regionEventSubscriptionJhprevious^tEvent@JV","JOvered@JVMapJhevent@JVsJANew@JVTrackingId","event@yarametJaeventConJkJ8JOverJ8mousemoveJ8JOutJ8click","userContJJCJWInfo","J&JhsJvTimJfduratJKonCompletJfdest","sourcJfJ&@qasJfcrosJhoptionJh@nnknown CJW NamJfDD MMM JB@p","JuJKv1.7.0 @j@z","Canvas@hS"];(J3(JF@n=false;var T=!!document[_$JS2]](J!])[_$JS0]];var y={CJTJ`:500,hJP400,zoomE^[bJ%^N3],theme^}4],J&E^[J&^r200,data@yoint^Jc^>5],cJW^}6],creditText^}7],Jcactivity^aexportE^[export@sileName^}8]},TJRpadding:0,JkJ@ver^#[9J9^$[10],JoSize:20,fo^*11],f^ Jd^+3],f^,2]^;0,J[^N13],^W:0,ba^)margin:5,J)^?dockInside@ylot@zreaJC},SubtJRpadding:0,JkJ@ver^#[9J9^$[10]^So^*11],f^ Jd^+3],f^,2]^;0,J[^N13],^W:0,ba^)margin:2,J)^?dockInside@ylot@zreaJC}^xnamJ7ver^#[10J9^$[14]^So^*15],f^ Jd^+3],f^,2],cursor^qJOver^qJOut^qmousemove^qclickJ@dockInside@ylot@zreaJC,reJuedJC^?max@xeJi^q^Jitem@J`^q@J),itemText@sJptter:null},TJL:{enabled:true,sharedJC,J&^aJ=J@J=^HreJuedJC,ba^)J[J^:null^;2,^W:5^S^+6],fo^*17],f^ Jd^,8]},@zxis:{minimumJ:aximumJ@JcvalJ@JcvalTypJ7titlJ7title^"13],^F0J\\@so^*19J$^ 12J$^,2J<@zngle:0J-o^*19J<^"13^22J-^ 12]J-^,2J<@zuto@sitJCJM@J)JM^JJ_^Hprefix^Ysuffix^Yinclude@iero:true,tick@tength:5,^513^C1,l^13^D1,lJ]^3^:22]^I0,gridDas^3JclacedC^uvalue^\\J:argin:2,sJ#s:[]},SJ#:{valuJ7sJv@laluJ7end@laluJ7color^}23],opacityJ@tJ+:2,lJ]^3J_^YJ_@qJ%^N24^{^*19J<^"23^22J-^ 12]J-^,2J<^Hshow@vnTopJC}^`namJ7data@yointsJ@J_^YbevelE^[highlJi^acursor:null^c^}20^Mylacement^}25^Mvrientation^}26]^c^"13^-JN2^c@s^,2^Mso^*27^Ms^ 12^Mqa^)J.bel@tineC^uJ.^71^c@tJ]^3^m^JJ.bel@J)^c^HJmTJ+:2,lJ]^3c^urising^N3],fill@vpacityJ@sJv@zngle:0,t^h28],xJGT^h29],axis@pT^h30],x@^/J@y@^/J@z@^/J@percent^\\J@showIn@tJb^8Jl^8C^ulJbText^8^e^8^@^gT^h31],JIJ^^gSize^g^e^g^@J:ouseoverJ:ouseoutJ:ousemovJ7clickJ@tJLContentJ@visible:true},TeJ/:{x:0,y:0,J`J@hJPnull^?max@xeJiJ@padding:0,angle:0,Jk^Yhoriz^$J\'JN2,fo^*15],f^ Jd^+3],f^,2]^;0,J[^N13],^W:0,ba^)Jk@qaseJm^}9]},CJWInfo:{decimalSeparator^}7],digit@jroupSeparator^}32],zoom^P3],pan^P4],reset^P5],menu^P6],save@h@y@j^P7],save@yN@j^P8],days^o39^i0^i1^i2^i3^i4^i5]],shortDays^o46^i7^i8^i9^n50^n51^n52]],months^o53^n54^n55^n56^n57^n58^n59^n60^n61^n62^n63^n64]],shortMonths^o65^n66^n67^n68^n57^n69^n70^n71^n72^n73^n74^n75]]}JXv={"en":{}JXo={"colorSet1"^o76^n77^n78^n79^n80^n81^n82^n83^n84^n85^n86]],"colorSet2"^o84^n87^n88^n89^n90^n91^n86^n92]],"colorSet3"^o93^n94^n95^n96^n97^n98^n99^b0^b1^b2^b3^b4^b5^b6]]JXbk={"theme1":{CJTc^>5]},T^|^!07JY^<33,f^+08],f^ J4^#^OSubt^|^!07JY^<16,f^+08],f^ J4^#^OJ>^F6J\\^"110J$ont^!^R^{nt^!^R^28JM^"111],^5112^C2^I2,^:112^D2,l^112]}^xver^#[113J9^$J\'^!^^5]}^`^m^"111^-^!^R^-JN8,J.^71}},"theme2":{CJTc^>115]},TJRfo^*116],JoSize:32,f^+17],ver^#^OSubtJRfo^*116]^S^+17],ver^#^OJ>^F2J\\^"118J$ont^!^^9J$^ 109^{nt^!19]^}19^26JM^"111]J-^ 109],^5111^C2^I2,^:111],l^111^D0}^xver^#[113J9^$J\'^!^^9]}^`^m^"111^-^!20]^}19^Ms^ 109^-JN8,J.^71}},"theme3":{CJTc^>5]},T^|^!21JY^<32,f^+08],f^ J4^#^OSubt^|^!21JY^<16,f^+08],f^ J4^#^OJ>^F2J\\^"118J$ont^!22]:^p^{nt^!^R^28JM^"111],^5111^C2^I2,^:111^D2,l^111]}^xver^#[113J9^$J\'^!^^5]}^`bevel^a^m^"111^-^!23]:^p^-JN8^c@t^124],J.^72}}JXr={number^r,yearJ?^9@b364,monthJ?^9@b30,weekJ?^9@b7,dayJ?^9,hour^r000@b60@b60,minute^r000@b60,second^r000,millisecond^r,day@vf@week@sromInt^o39^i0^i1^i2^i3^i4^i5]]};J3 @s(mM,mb){mM^Q=@k(mb^Q);mM^Q[J!26]]=mM;mM[J!27]]=mb^Q^j@k(nr){J3 nq(){}nq^Q=nrJ, new nq()^jc(lc,mp,ek){if(ek===J!28^A0^L29^T^%6[131^A3^L32^T^%6[134^A6^L35^T^%6[137^A9^L38^T^%6[140]^K2^B1^T^%6[143]^K2^B1Js+7@bmp)}e^%6[144]^K6^B5^T^%6[147]^K9^B8Js+1@bmp)}}}}}}}}J,lc^js(mp,ekJ(r[ek+^p0]]@bmp^y@i(kN,dwJFce=falseJtkN@u0){ce=true;kN@b= -1;};kN=_$JS20]+kN;dw=!dw?1:dw;while(kN^Gdw){kN=^_kN}J,ce?^p3]+kN:kN^jbn(l@h){if(!l@hJ(l@h};l@h=l^X4]](/@g@es@es@b/,_$JS20]JQnz=/@es/;var cc=l^X2]];while(nz[^p6]](l^X5]](--cc))){}J,l^X7]](0,cc+1)^j@j(c@h){c^X8]]=J3(cz,c@z,cT,cS,gz,f@o,eI,f@h){if(eI^E59]]=eI}Jtf@h^E60]]=f@h}Jt typeof gz===J!61]){gz=5}^=2]]=f@o^=3Js^=4Je+gz,c@^.5Je+cT-gz,c@^.6]](cJ5,cJ5+g^.5]](cJ5+cS-g^.6]](cJ5+cS,cz+cT-gJ6)^=5Je+gJ6)^=6]](cJ6,cJ6-g^.5Je,c@z+g^.6Je,c@z,cz+gz,c@^.7JsJteI^E68Js}Jtf@h&&f@o>0^E69Js};}^yq(my,mdJ(my-md^yp(mw,mxJ(mw^l0]]-mx^l0]]^y@r(mpJFnt=((mp&0xJZ00)>>16)^l1]](16JQns^zJZ)>>8)^l1]](16JQmd^z00Jn)>>0)^l1]](16);nt=nt^G2?^_nt:nt;ns=ns^G2?^_ns:ns;md=md^G2?^_md:mdJ,J!72]+nt+ns+md^jbc(nt,ns,mdJFmp=(nt@u@u16)|(ns@u@u8)|(md)J,mp^jS(mpJFnu=[];var nt=((mp&0xJZ00)>>16JQns^zJZ)>>8JQmd^z00Jn)>>0);nu[0]=nt;nu[1]=ns;nu[2]=mdJ,nu^jg(mqJFms=this[^p2]]>>>0;var mr=Number(arguments[1])||0;mr=(mr@u0)?Math^l3]](mr):Math^l4]](mr)Jtmr@u0){mr+=ms};for(;mr@ums;mr++){if(mr in this&&this[mr]===mqJ(mr}};re~ont@weight^}~@samily:T?J!~@sont^N~tical@zlign:_$_b976~ontal@zlign:_$_b976~lse {if(ek===_$_b97~span>^Zy~^0o~or:{color};@d@e"@d>~ckgroundC^u~nt@samily^}~ont^N1~ontStyle^}1~^Msont~z)^=~lalue^\\~n style=@d@e"@dcol~ine^N1~^{ntSize:1~hT^h21],~JDJDJD~tick^N~r-select: noneJg~bel@tineTJ+:~J@legendMarker~n:1000@b60@b60@b24~grid^N~,borderTJ+:~976[15],JoSize:~;this[J!6~olorSet^}~,max@widthJ@~@qorderTJ+~]){lc[J!3~^L4~],tickTJ+:~],lineTJ+:~){this[J!~title@sontSize:2~[^p2]]@u~@sormatterJ@~,gridTJ+:~Max@widthJ@~){lc[J!4~]](lc[J!~]^c@~Color^}~[9],margin:5},~Text^}3~[J!25]]~07]:^p~,fontJN4,f~Js+1@bmp)}e~J0@sont~","title@sont~corner@radius~@h[^p~^}20],~JDJD{~nabledJC,~@sJptString~"lJbMarker~14]^}1~^p1]+~,DataSeries:{~Enabled:true,~^n10~,^m~(255,255,255~@qorderJ^~ransitJK~J:arker~ype^}~^n4~;^y~J?n","~[J!7~J.bel~],_$JS~:[_$JS~J!5~J@item~J?n:1~@xeJi","~Data@yoint~olorJ@~{name}:@u/~","@ubr/>@~,@tJb:{~}J3 ~=((mp&0x00~]J-o~JRfont~:_$JS~@J`","~_$JS1~","J[~trip@tine~]J\\@s~ackground~animation~[10],Jo~){return ~Jq:true~J^","~hickness~;return ~JM@s~index@ta~xt@qlock~","J_~,"render~","@uspa~function~109],ver~z+cT,c@z~z,c@z+cS~eJ@~","item~],horiz~J@m~ndex","~]JM~content~@zxis:{~Duratio~:null,~","get~@p@p@p~:false~ ~pxJg~){var ~@lalue~@tabel~marker~ext","~ion","~oolTip~,J_~Size:1~mouseo~eJi:~);var ~itle:{~_b976[~hart:{~Jn@s~vbject~ulture~};var ~]:_$_b~Jn00~border~,title~ineDas~Color~label~width~er","~egend~inter~12],f~]](cz~e","~;","~s","~ight~}","~text~Type~line~@s@s~font~orma~wrap~ed",~]]()~;if(~vers~tart~}}}}','turn -1^Oa(l@oJ*l^J75JDl^J75]]=g^kl@o;}JE@x={}J-jJ?^a@h(eN,e@v,e@k){e@k=e@k||^q12J,ht=eN^i176]+e@v^i176]+e@kJ(S=@x[ht]JCisNaN(cS)){try{JEm@p=^q177]^i178]+eN^i179]^i180]+e@v^i181]+e@k^i182]JC!bjJ)m@m=^,183]];bj=^,2^M184]);bj^\\85]]=_^6m@i=^,187^M186]);bj^\\88]](m@i);m@m^\\88]](bj);};bjJG^!189^N20];bjJ+76^C6[190],m@p);cS=^?193]](bj^\\92]]);bjJG^!189^N194];}catch(e){cS=^?173]](e@v@b1.1)};cS=^?195JJS,e@v);@x[ht]=cS;^kcS^O@t(nl,nmJ$k=[];nl=nl||^j1];lineJSTypeMap={"solid":[^pash":[3,1^pot":[1,1^pashJ13JP,1^pashDotJ13JPJP,1],"dot":[1,JTdash":[4,JTdashJ14,2,1,JTlongJS":[8,JTlongJSJ18,2,1,JTlongJSDotJ18,2,1,2,1,2]};nk=lineJSTypeMap[nlJ7k){for(JEcc=0;cc@unkJ+^7nk[cc]@b=nm}J!nk=[]^knk^Ob(l@o,l@r,mn,moJ>l^J96JDl^J96]](l@r,mn,mo||JRe)^`l^J97JDl^J97^M198]+l@r,^men){en=en||window^\\99]];en^W00]]=en^W00]]||f^den^W01]]=J2;en^W02]]=en^W02]]||f^den^W03]]=JH};mn^W04]](l@o,en);})J!return J2}}JEx=f^dJEbt=/D{1,4}|M{1,4}|@p{1,4}|hJ/@xJ/mJ/sJ/f{1,3}|tJ/TJ/@o|z{1,3}|"[@g"]@b"|@d[@g@d]@b@d/gJ-p=^X9^V40^V41^V42^V43^V44^V45^zr=[^q46^V47^V48^V49^V50^V51^V52^zq=[^q53^V54^V55^V56^V57^V58^V59^V60^V61^V62^V63^V64^zs=[^q65^V66^V67^V68^V57^V69^V70^V71^V72^V73^V74^V75^zu=/@eb(?:[@yMCE@z][SD@y]T|(?:@yacific|Mountain|Central|Eastern|@ztlantic) (?:Standard|Daylight|@yrevailing) Time|(?:@jMT|@nTC)(?:[-+]@ed{4})?)@eb/gJ-v=/[@g-+@ed@z-@i]/g^u^mb@z,b@q,bwJ)bz=^B[205]]:bpJ"j=^B[206]]:bqJ"t=^B[207]]:brJ-M=^B[208]]:bsJ"h=_^6bNJ&b@z=b@z&&b@z^W09]]?b@z:b@z? new Date(b@z): new DateJCisNaN(b@z)){throw SyntaxError(^j10])}JCb@q[^:0,4)^c[211]){b@q=b@q[^:4);bNJ\'J-I=bN?^j12^Y213J,bx^.214^^y^.215^^@s^.216^^@v^.217^^C^.218^^E^.219^^@o^.220^^D^.221^^@x=bN?0:b@z^W22JF;b@h=b@q^5bt,^mb@y){switch(b@y){case ^j23^_x^-24^Ax^"25^Qt[by]^-26^_z[by]^-27^Qs+1^-28^A@s+1^"29^_M[b@s]^-30^Qj[b@s]^-31]^vparseInt(^y@v)[^:-2))^-32]^%@v)[^:-2)^"33]^%@v)[^:-3),3)^-34^A@v,4)^-35^_C%12||12^-36^AC%12||12^"37^_C^-38^AC^"39^_E^-40^AE^"41^Qo^-42^A@o^"43]^v^yD)[^:0,1)^-44]^%D)[^:0,2)^"45]^%D)[^:0,3),3)^-48]:r^&6[246^Y247]^-51]:r^&6[249^Y250]^-54]:r^&6[252^Y253]^-57]:r^&6[255^Y256]^-61^_N?^j58]:(^y@z)^W60]](bu)||^W0]])^W59JF^5bv,^H^-64]^v(b@x>0?^[3^Y262])+^?J5^?^h/60)^-65]^v(b@x>0?^[3^Y262])+@i(^?J5^?^h/60)^"66]^v(b@x>0?^[3^Y262])+@i(^?J5^?^h/60),2)+@i(^?^h%60,2);;default^vb@y[^:1,b@y^9-1);;}})^ub@h;};}()JA@m^Rt,b@i,bwJ6t==J?^l_^b};ct=Number(ct)J(e=ct@u0?JH:JReJ@e){ct@b= -1}J"n=^B[267]^Y7]J"l=^B[268]^Y32J#u=_^b;b@i=^y@i)J(i=1J(rJ"h=_^6ch=_^6bT=-1J(b=[J#a=[J#n^sm^sj^sf=JReJ"p=0;ch=b@i^W60]](/"[@g"]@b"|@d[@g@d]@b@d|[eE][+-]@bJQ|[,]+[.]|‰|./g)J(gJ?;for(JEcc=0;ch&&cc@uchJ+^7cg=ch[cc]^3[7]&&bT@u0){bT=cc;continue ;}el^$[269JKi@b=100}el^$[270JKi@b=1000;continue ;^Pg[0]^c[32]^/^#7JKi/=^?271]](1000,cg^9-1);bT=cc+cg^9-1;continue ;^`(^*72]||^*73])^/^#JN){cf=JH}}}J0bT@u0){cb^W74J3^3[1^46^wn++}el^$[32JKj++}};^ta^W74J3^3[1^46^wm++};};}J@fJ)cd=^?174JJt);b@p=(cd===0?_^b:String(cd))^9-cn;ci/=^?271]](10,b@p);};ct@b=ciJCbT@u0){bT=cc};cu=ct^W75JJm)J(q=cuJG^K$_b976[7])J(w=(cqJQ^H^W76]](^HJ(v=(cq[1]+^H^W76]](^HJ@w&&cw[0]^c^ww^W77JF}J(o^sl^sk=0J-S=0J"m=0;J4cb^0J;b^W59JF^3[1^46^wo++J@o===cnJ)b@w=cw;cw=[]^3[JNJ)cs=cn-cl-(b@w?b@w^9:0);J4cs>0){b@w^W78^MJN);cs--;};};J4b@w^0^xw^W59JFJU;b@m++JCb@m%bS===0&&ck===cj&&b@w^0^xlJ<}J@eJ=^[3]J<^Pw^0J=cw^W59JFJU;cl++;b@m++;}el^$[JNJ=^[1]JU;cl++;b@m++;J0b@m%bS===0&&ck===cj&&cw^0^xlJ<};^`(^*72]||^*73])^/^#JN&&/[eE][+-]@bJQ/[^[6J3J>b@p@u0J;g^5^j62^<^5^[3^<^tg=cg^5^[3^<};b@h+=cg^5/JQ/,^mcx^l@i(b@p,cx^9)});}el^$[32JKk++;bS=b@m;b@m=0J@w^0^xlJ<^Pg^9>1&&((^*79]^/^#279])||(^*80]^/^#280]))J=cg[^:1,cg^9-1)JUJ!b@h=cgJU}}JXJ"r^sp=_^6b@kJ&J4ca^0J;a^W77JF^3[1^46[JNJ6v^0&&Number(cv^W81]](^H)!==0){cp+=cv^W77JF;b@kJ\'el^$^wp+=^[1];b@kJ\'}^Pg^9>1&&((^*79]^/^#279])||(^*80]^/^#280]))){cp+=cg[^:1,cg^9-1)^`(^*72]||^*73])^/^#JN&&/[eE][+-]@bJQ/[^[6J3J>b@p@u0J;g^5^j62^<^5^[3^<^tg=cg^5^[3^<};cp+=cg^5/JQ/,^mcx^l@i(b@p,cx^9)});^tp+=cg}JX;b@h+=(b@k?b@n:^H+cp^ub@h;}^aN(cz,c@z,e@o){cz@b=z;c@z@b=zJAf@q=e@o^W83JJz,c@z,2,2)^W82]J,nn=JH^(4;cc++J>J.]!==J.+4]|J.]!==J.+8]|J.]!==J.+12]){nnJ&break ;J0nn^lbc(f@q[0],f@q[1],f@q[2])J!return 0};}JEM^RyJ)cz^s@z=0;cy=cy||window^\\99]]JC^E84]]||^E84]]===0){cz=^E84]];c@z=^E85]];^`^E86]]||^E86]]==0){cz=^E86]];c@z=^E87]];^tz=^E88]]-^E90^][289]];c@z=^E91]]-^E90^][292]];}^k{x:cz,y:c@z};}^a@o(nj,ni,naJ$e=_^6ng^=[293^Y294J,nh^=[295^Y296J,nd^=[297^Y298J,nc^=[299^Y300]J8i[ngJ9g]^Z01^Ug^{g]^Z01]):_^bJ8i[nhJ9h]^Z01^Uh^{h]^Z01]):_^bJ8i[ndJ9d]^Z02^Ud^{d]^Z02]):_^6eN=ni[ncJ9c]^i20^Uc^{c]+^H:_^bJC!T&&eNJ$b=eNJG^K$_b9JM2])[0J7b[0]!^e280]&&nb[0]!^e279]){nb=^j80]+nb^i280]}J8b;J!ne+=eN^kne^O@v(no,ni,naJ)kN=no in ni?ni[no]:na[no]^ukN;}JE@p=JHJA@z=^203]]||1JAj=1JAz=@p?@z/j:1^abe(mz,cT,cSJ>T&& !!@pJ)e@o=mz[^q0^M304]);j=e@o^X05^DJM06^DJM07^DJM08^DJM09]]||1;z=@z/j^T[310JIT@bz^T[311JIS@bzJC@z!==j){mzJG^!310JIT^Z12];mzJG^!311JIS^Z12];e@o^X13]](z,z);};J!mz^X10JIT^T[311JIS;}}function t(cT,cSJ)mz=^,2^M1])^T^C6[314^V315]);be(mz,cT,cS)JC!T&& typeof (@j_vmlCanvasManager)!^e161]){@j_vmlCanvasManager^X16]](mz)^kmz^OE(mz,m@s,mEJ*mz||!m@s|| !mE^SJEm@j=mE^i7]+(m@s^c[317]?_^n8]:m@sJ o=_^n9]+m@sJAm@x=mz^X20]](m@oJ tJ&JEmD=^,2^M246]);^F21]]=m@j;^F22]]=m@x;mD^W90^N323J,enJC typeof (@qlob)!^e161]&&!!J:qlob()J)mI=m@x^5/@gdata:[a-z/]@b;base64,/,^HJAmC=atob(mIJ q=J:zrray@quffer(mC^9J h=J:nint8@zrray(m@q)^(mCJ+^7m@h[cc]=mC^X24JJc)}JAm@z=J:qlob([m@q],{type:_^n9]+m@s});try{^226^G25]](m@z,m@j);m@tJ\'catch(en){^F28^G27]]=[m@o,^F21]],^F22]^][281^M329]);^F22]]=^231^G30]](m@z);};}JC!m@t){try{event=^,333^M332]);event^X35^M334],tru^|window,0,0,0,0,0,JR^|JR^|0,null)JC^F36JD^F36]](event)^`^F37JD^F37^M338])JXcatch(enJ)el=^239JF;el^X43^G42^M340]+m@x^Z41]);el^X43^G44JF;JXJEk={reset:{^>345]},pan:{^>346]},zoom:{^>347]},menu:{^>348]}}^abd(kr,nw,nxJ>nw^X50^M349])!==nx){nwJ+76^C6[349],nx);nwJ+76^C6[351^V352]);nwJG^!353^N354^}^!355^N356^}^!357^N358^}^!359^N360^}b976^C6[361],kr^X63]][nx^Z62]]);nw^\\85^N364]+k[nx]^X65]]^Z66]+kr^X63]][nx^Z62]]^Z67];}}function bf(J$pJ?^(^g_$_b9^7np=^gccJ7p^\\90JDnpJG^!189^N368]};}^O@y(J$pJ?^(^g_$_b9^7np=^gccJ7p&&np^\\90JDnpJG^!189^N194]};}^Om(mt,cD,c@j,mu){^8JO=mt;^870]]=mu;t^+=[J#@q={}J@@j^o^o[mtJK@q=bk[c@j][mt]};^872JID?cD:{};^873]](^872]],c@q);}mJGb^\'373]]^RD,c@qJ*y[^8JO]J>@n&&^274JDconsole^X76^M375])}J!JEcC=y[^8JO];for(JEJ%CJ6D&&J%D){^fDJL^P@q&&J%@q){^f@qJLJ!^fCJL}JX^r^\'377]]^REJ*y[^8JO]&&@n&&^274JDconsole^X76^M375])}J(C=y[^8JOJ#@j=^ ^q378]]?^ ^q378]]:(^879]]&&^879^G72^G78]])?^879^G72^G78]^Y4J#@q={}J(@s=JYJLJ@@j^o^o[^869]JDc@q=bk[c@j][^8JO]}JCJ%CJ6E in ^872JDc@s=^ cE]^P@q&&J%@q){c@s=c@qJL^t@s=cCJL}J0c@s===JYJL^lJ2;^f@s^uJH;^r^\'380^;xJ*^ ^@){^ ^@={}};^ ^@[JV=^ JV;^r^\'382^;xJ*^ ^@){^ ^@={J0^ ^@[JV^lJHJ!return J2;^r^\'383^;xJ*^ ^@){^ ^@={}}J(I=!(^ ^@[JV===^ JV)^ucI;^r^\'196^;t,c@o,c@hJ*c@t|| !c@o^Sc@h=c@h||JY;t^+[c@t]=t^+[c@t]||[];t^+JB^W74]]({context:c@h,event@xandler:c@o});^r^\'384^;t,c@oJ*c@t||!c@o||!t^+JB^SJEcM=t^+JB^(cMJ+^7if(cM[^L385]]===c@o){cM[^L386JJc,1);break ;}};^r^\'387]]=f^dt^+=[]^r^\'336^;t,cNJ*c@t||!t^+JB^ScN=cN||{}J(M=t^+JB^(cMJ+^7cM[^L385^][204JJM[^L388]],cN)};}^an(mj,cD,mv){^889]]=mv;cD=cD||{};n^\\27^][126^][204]](JY,^q8],cD,cD^X78]]?cD^X78]^Y4])J(@v=JY^10]]=mj^11]^)JM92]]J?^13]]J?^14]]=[]^15]]=0^16^N20]^17]]J?^18]^)JM99]]=0JW^I0]^)76[401]^)76[402]^)76[403^N404]JW^I5]]={canvas:null,ctx:null,x1:0,y1:0,x2:0,y2:0,width:0,height:0}JW^I6]]=[]JW^I7]]= typeof (^890]])^c[408]?^,409]](^890]]):^890]]JC!thi^I7]]J>^274JD^274^G76^M410]+^890]]^i411])^k;}JW^I7^][185]]=_^6cT^sS=0JC^ _^n0JDcT=^810]]^tT=thi^I7^][412]]>0?thi^I7^][412]]:^810]]}JC^ _^n1JD~^872]][~b976[190^][~,2)^-~152]]-1]^c[~se {if(cg^c~^v@i(String(b~eturn bC@u12?_$_b97~976[125^][~;for(JEcc=0;cc@u~]J&this[_$_b9~cg[0]^c[2~his^X71]]~document[^q~;;case ^j~=b@z[bI^i~&&cg[cg[^q~^9>0~;^89~window^X~;if(cg^c~72]||cg===_$_b97~[^[4]](~^b;var ~76[152]];cc++){~this^X~[^[2]]~^[7]](~]]^R@~],^H~=nj?nj+_$_b976~image:^q~Math[^q~^q381]]~]^v@i(b~bw?bwJ+76~[191]](_$_b97~]]||e@oJ+~cy^W~mD^X~]]^X~_^b)~s[^q40~@o^\\~b976[276]](_~cc][^q~]](^q~]]=^q~;}function ~^`c~^_@~=^mc~^l};~;mzJ+76~]:(na&&na[n~],^q~[^j~[^q3~]:^q~^i3~^q15~[^q1~]]J+76~]]()J-~]^vb~J!if(~;function ~$_b976[20]~===_$_b976~unction(){~==^q~thisJL=c~arguments[~263]](b@x)~+^q~^q2~}^u~){return ~function(~$_b9JM1~&&bk[c@j]~],"shortD~_$_b976[~};mJGb~=0J(~J!c~;return ~:return ~[151JK~J=b@~String(b~]J,b~])?(na[n~e,JRe,~];nwJG~)JAm@~}else {~J-@~]J(~J)n~cE in c~=JRe;~=JH;}~JAc~){JE~J>!~JGb9~]JA~JAb~f@q[cc~{1,2}|~}}JC~Dot":[~JRe}~JJg)~while(~174]](~J>c~]JCn~;ne+=n~]?ni[n~ new @~){cg=c~JU};~){b@h=~){if(~=null~JCc~;JE~[c@t]~;if(~]]){~var ~]]()~[_$_~true~]]=c~]](c~]){c~[cE]~76[3~151]~69]]~,1,1~[0]+~fals~Dash~2],"~+b@h~c@x]~;thi~}};}~this~0,0,','cS=t^1^rcS=^J07^S13]]>0?^J07^S13]]:t^1^D^|=cT;t^1=cS^C14^6415]]=0^C16^6310]^717]]=t^1^C18]]=^jo[^J19]]]^`6[161]?o[^J19]]]:o^c5]^720]]=d^+]^a421^.20^e^:^\\6[422^.20^y^!353^_[354^720^y^!423^_[360^720^y^!424^_[25]J,!T){^J20^y^!311^_[425]}^C07^/^J20]^81]]=t(^x^O1^y^!353^_[426]^01^Z0]^-20^/^O1]^8392^61^Z0]]^a304^8392^S27^_[9];@j(^O392]]);^r^uJ !T){^J0^T1]]=t(cT,cS)^C0^T1^y^!353^_[426^70^T1^e^:^\\6[428^.20^/^J0^T1]^.0^T392^640^T1^Z0]]^a304J)^?76[40^T392^6392]]}^C29]]=t(cT,cS)^C29^y^!353^_[426^720^/^J29]^8393^6429^Z0]]^a304^8393^S27^_[9^730^oDJ!);b(window,^d31],^[^G432J$){^N33J$}})^C34]]=d^+]^a421^.34^e^:^\\6[435^.34^y^!436^_[437^720^/^J34]^.38]]={x1:0,y1:0,x2:^O^|,y2:t^1};b(^J29]^^334],f^#b^{^\'$_b^p^^440],f^#b^{^\'$_b^p^^441],f^#b^{^\'$_b^p^^442],f^#b^{39]](en)^I[443]J)^;[429]^^444],f^#b^{^\'$_b^p^A^Q6^w^d46]:^d47],f^#b^{^k^;[429]^A^Q6^w^d49]:^d50],f^#b^{^k^;[429]^A^Q6^w^d51]:^d52],f^#b^{^k^;[429]^A^Q6^w^d53]:^d54],f^#b^{^k);^*55]^-55]]=d^+]^a246^.55^e^:^\\6[456^.55^e^:190^^457]+(t^1-14)+^d58^.55^e^:459],-1)^C55^e^:290^^323J)^C60^obmJ!,^n^ 461]],^E8]^8J*]^3J(2]]^3J(3]]^3J(4]]^3J(5]]={aJ/m:{^iin^h,^iax^h},aJ/p:{^iin^h,^iax^h},aJ/p2:{^iin^h,^iax^h}};}@s(n,m);n[^s^M[466]]=^[J"@v=this;^E7]]^a310^8J2]^a311^8J2]^a378])^0J2]^a419])){^J18]]=^jo[^J19]]]^`6[161]?o[^J19]]]:o^c5]]};^E7]]^a467]);^*67]^-67^_[468]};^E7]]^a469^8363^ou(^n^ 469]^8J2]^a470^.70^6470J\'T^W^ 471J%^*72J%@y(^J7J&d^+]^a352]));bdJ!,^J72]^^473^.34^/^J72]]^;[^P[^@^G471J%^N71^f^N0J&J+;b^=6[^P[474]);^BJ0^l;^N02^fb^=6[^P[473J);^N33J$;});};^*75J%@y(^J75]]=d^+]^a352]));bdJ!,^J75]^^476^.34^/^J75]]^;[475]^^^@^N60^S77J$;^G471]]||^N02J%^N^l;^N02^fb^=6[^P[473]);^N03^_[404];^N29^y^!424]]=^N03]];^B76[471^f^N^YJ,^t^ 462J\'^t^ ^L478J%^N6^T^L479]]=^t^ ^L478]]^B7J(^T^L479]]^}J ^t^ 462J\'^t^ ^L480J%^N6^T^L481]]=^t^ ^L480]]^B7J(^T^L481]]^}};^N82J$^I[472]],^N75]]);^N33J$;})^C29^y^!424]]=^N03]];};^*71J\'!^J02J%^*72]^-^l^C^Yelse {^G472^Z350]]^a349])===^][363^S83]^-0J&J+^C71^f}^?J0^l^C^Y;bf(^N72]],^N75]J)};}^?76[471]]=false^C^YJ,^j^n^ 484]]^`6[161^-84]]=^n^ 484]]J ^j^n^ 485]]^`6[161^-85]]=^n^ 485]]}^0486]]^2[485J%bf(^J86]])^r@y(^J86]])}^"^{85J\'T){^J86]]=d^+]^a352]);bdJ!,^J86]^^487^.34^/^J86]]^;[486]^^^@^G4^v_^!189]]=^bJ-]){^G488J\'(( new Date())^c209J$-^N88^Z209J$@u=500)){^u};^N^v_^!189^_[489];^N86^S90J$;^N43^S91J$;}},J+);}};^*43]^H[485J\'T){^J43]]=d^+]^a421^.43^e^:492],-1)^C^v_^!436^_[493];^N^v_^!189^_J-^734^/^J43]]^;[443]^^490],^[@y(^N43]]);^N88^oDate();},J+^qr=d^+]^a421]);c@r[_$_^!436^_[494];c@r^c185^6363^S95]^743^/c@r);b(c@r,^d96],^%^!467^_[24^&^{44],^%^!467^_[497^&976[^@E(^][1]^^318],^N84]])^I[443]J),J+^qr=d^+]^a421]);c@r[_$_^!436^_[494];c@r^c185^6363^S98]^743^/c@r);b(c@r,^d96],^%^!467^_[24^&^{44],^%^!467^_[497^&976[^@E(^][1]^^499],^N84]])^I[443]J),J+);}^0434^y^!189]]!^bJ-^H[472]^-02]]?b^=6[^P[474]):b^=6[^P[473]);^G47^T350]]^a349])!==^][363^Z500J%b^=6[475]^^476])};J ^jy^c8^Z501]])=^b[161]^901^_[502];^O503^_[7];^rJ"@k=^E7]]^a503]^qy=^E7]]^a501J)^0399]]===0||(c@k||c@y)){^J55^e^:322],^O501]^.5^T185^6503]];}^0501]^H[503J%^*5^T504]^-20^/^J55]])}^"^{5^T504]^-20^Z505]](^J55]])}}^W^ 461]^H[460^Z372]]!==^n^ 461]^-60^Z37J&^n^ 461]]};^mE in ^J60^Z372]]^2[460^y^ 506]](cE)){^J60^ZJ2](cE)}};};n[^s^M[43J&^[J"T=0;J"S=0^W^ ^|){cT=^O^|}^?76[^|=cT=^J07^S12]]>0?^J07^S12]]:^O^|}^W^ 311J%cS=t^1^rt^1=cS=^J07^S13]]>0?^J07^S13]]:t^1}^01^Z^|!==cT@bz||^O1^Z311]]!==cS@bz){be(^O1]],^xbe(^J29]],^xbe(^J30^Z507]],^x^uJ+;};^ufalse;};n[^s^M[508]]=^[if(!^O509]]^909^ofJ!)}^?76[509^Z510J$^D387^>6[401^f^O511]]^}^0512]]^913^Z204]](window,^O512]])}^C66^>6[400]]=T&&^J70J\'(^O399]]===0)^C32^>6[514^>6[392^Z163^>J(2]]^3J(3]]^3J(4]]^36[394]]=[^706]]=[];^O515]]=[]^0430]^-30^S76J$^D516]]={aJ/ylacement:null,aJ/m@lalueType:null,plotTypes:[]^D517^o@l(0,0,^O^|,t^1,2)^040^T517]^-0^T517^S76J$^DJ*]=[];J"@l=0;^m@m=0;c@m@u^n^ J*^F;c@m++){c@l++J,!(!^n^ J*][c@m]^cJ1]||n^c518^Z175]](^n^ J*][c@m]^cJ1])>=0)){continue };J"@n= new wJ!,^n^ J*][c@m],^E8]],c@l-1,++^J30^Z519]])J,^K0]]==^}){^K0^_[521]+(c@l)J ^KJ&=^}){if(^n^ J*^F>1){^K3]]=[^J18]][^K4]]%^J18]^F]];^K2^6418]][^K4]]%^J18]^F];^rif(^UJ1]^R25]|^)^R26]|^)^R27]|^)^R28]|^)^R29]|^)^R30]|^)^R31]|^)^R32]|^)^R33]|^)^R34]|^)^R35]|^)^R36]){^K3]]=[^J18]][0]]^r^K3^6418]]}}^r^K3]]=[^K2]]]J ^U537]]==^}){if(((^UJ1]^R25]|^)^R26]|^)^R27])&&^U538J\'^U538]^F@u^O^|/16)|^)^R39]){^U537]]=8}J (^UJ1]^R40]|^)^R39])&&^U538J%^U538^Z541]](p)^D282^Z274]](c@n^qp=^U542]];J"@wJ,c@p=^b[12]^2[51^(^bJ.])^VJ#^5^g[545]^"^z^(^bJ-])^VJ#^5^g[546]^"^z^(=^}^91^(^s[12]}}}^rif(c@p^R43]^2[51^(^b[12])^VJ#^5^g[547]^"^z^(^bJ-])^VJ#^5^g[546]^"^z^(=^}^91^(^sJ.]}}}^rif(c@p^bJ-]^2[51^(^b[12])^VJ#^5^g[548]^"^z^(^bJ.])^VJ#^5^g[545]^"^z^(=^}^91^(^sJ-]}}}}}J c@w&&window^c374J%window^c374^Z376]](c@w);^u;};^D391]]=J+;};n^c518]]=a(^c525^^526^^527^^28^^528^^529^^530^^549^^540^^539^^550^^551^^552^^553^^531^^532^^535^^536^^554^^555^^533^^534^^556^^557^^558]]);n[^s^M[433]]=function(cD){if(cD){^EJ&cD^D508J$;var di=[];^mc=0;cc@u^OJ*^F;cc++^2[51^(^b[12]||^O51^(^bJ.]){if(!^O2^<[559]]||^O2^<[559]]=^b[30]){^*63]]^2[51^(^b[12^-63]]=^$_^ 463]^^^X[360])^"^z^(^bJ.^-63]]=^$_^ 463]^^^X[113])}}^D2^<[463^6463]];^"976[2^<[559]]^R60]){^*64]]^2[51^(^b[12^-64]]=^$_^ 464]^^^X[14])^"^z^(^bJ.^-64]]=^$_^ 464]^^^X[9])}}^D2^<[463^6464]];}};^*62]]^2[51^(^b[12^-6J&^$_^ 462]^^462^^113])^"^z^(^bJ.^-6J&^$_^ 462]^^462^^360])}}^D2^<[462^6462]];}^D561J$^W^ 361]]^962^oblJ!,^n^ 361]])J,!^O562^Z563]]^962^S33J$^rdi^c274]](^O562]])};}^W^ 564J%^mc=0;cc@u^n^ 564]^F;cc++^964]]=[];var dl~b976[372^Z~b976[190^Z~}else {if(^nb~unction(en){^t~ new hJ!,this[_$~^[this[_$_~]},J+);b(c@r,_$_b~39]](en)});bJ![_~6^Z542]]=~|^U351]]~if(!^J~ocument^c2]~f(^O516~]){^J~^84~^Z188]](~;if(^O~his^c311]]~){if(^nb976~=null;^nb97~c@w=^s[544]+~+^U351]~]]=^O~]^C~]);^O~){^O5~6[191]]^a~);b(^nb976~82]][cc][^s~d(c@v,^tb97~]]();^nb97~else {^nb9~334],^[~],window[^s~^rc@v[_$_b9~;^J~};^O~^O37~]^c152]]~if(^][~]&&^nb976~;@y(^]~^O4~^U52~462^Z~[125^e6~^][4~this^c~472]],^s~[326^e~=^b[5~^Z4~5^Z~c@n^c~{c@w=^s~;if(^n~463],^s~02^f}~]]^c~function(){~314],_$_b97~c@v[^s~],^s[~]]=^s~)!==_$_b97~(^s[~==^s~[^s[~^s[4~^yb97~]]=false;~]+^s~imum:null~internalM~ typeof (~48]](en)}~71]]=J+~for(J"~this[_$_~]]= new ~^{29]~);J"@~}else {~_$_b976~c@v[_$_~return ~43]][_$~[445]]?~cT,cS);~]][_$_~976[51~9J0~310]]~=null~}J,~(this~var c~[544]~]]()~]]){~2]]=~]]&&~6[46~]);}~282]~true~;if(~[194~[543~xis@~76[4~351]~377]','= new bh(this,t^+]^B564^]);^4564^;2^kdl)^v!dl^B563^jl^B433^x^Ni^B2^kdl)};}};^4565]]= new @w(this,t^+]^B565]],^4378]]);^Pc^L^4282^);cc^c(^4282^]^B566]]||^4282^][_$_b9^ 556]||^4282^][_$_b9^ 557]){^4565^;567^;2^k^4282^])^b!^4565^;563]]){^4565^;433^x^Ni^B2^k^4565]])^i^8^.^_^C[12]||^8^.^_^C[543]){h^B569]](^/2]],^/3]],^/4]],^8^.542]],^4517^;568^x)}e^I^8^.^_^C[194]){^4570^x}else {re^e}^Zb=0;for(db in di){di[db]^B433^x}^Za=[]^v^4400]]^\\de=t(^4J ],^43^{)^Zf=de^B0]](^E304]);df[^@1]](^41]],0,0,^4J ],^43^{);};^Pc^L^8^.572^);cc^Kdj=^8^.572^]^$dj[^@3^);dg^Kdk=dj[^@3^[^d@i^n;dk[^@4]]^n^v^4400^jk[^@4]]=t(^4J ],^43^{);dk[^@5]]=dk[^@4^;0]](^E304]);^i^M^ 525]^\'6[576^Y^#^ 526]^\'6[577^Y^#^ 527]^\'6[578^Y^#^ 28]^\'6[579^Y^#^ 549]^\'^y0^Y^#^ 528]^\'^y1^Y^#^ 529]^\'^y2^Y^#^ 530]^\'^y3^Y^#^ 550]^\'^y4^Y^#^ 551]^\'^y5^Y^#^ 552]^\'^y6^Y^#^ 553]^\'^y7^Y^#^ 531]^\'^y8^Y^#^ 532]^\'^y9^Y^#^ 540]){c@i=c@i=^4590^Y^#^ 539]^\'J!1^Y^#^ 556]){^4592^Y^#^ 557]){^4592^Y^#^ 535]^\'J!3^Y^#^ 536]^\'J!3^Y^#^ 554]^\'J!4^Y^#^ 555]^\'J!5^Y^#^ 533]^\'J!6^Y^#^ 534]^\'J!7^Y^F^F^F;^Pdh=0;dh@u^1^);dh++){^4406^;2^k^4282]][^1]][dh]])^i^4400]]&&c@i){da^B2^kc@i)^|^i^4400]]&&^4394^)>0^\\dc=t(^4J ],^43^{)^Zd=dc^B0]](^E304]);da^B2^k^4599]](dd));}^d@v=this^ra^BJ"]>0){^<[401]]^l;^<[509^;606]](200,^<[600]],f^Jdm){^<[392^;601]](0,0,^<[J ],^<[3^{);^<[392^;571]](de,0,0,Math^B1^k^<[J ]@bz),Math^B1^k^<[3^{@bz),0,0,^<[J ],^<[3^{);^Pdn=0;dn@uda^BJ"];dn++){c@i=da[dn]^rm@u1&& typeof (c@i^?02]])!^C[161]^pdm>=c@i^?02]]){c@i^?04]](c@i^?03]](dm-c@i^?02]],0,1,1-c@i^?02]]),c@i)}}else {c@i^?04]](c@i^?03]](dm,0,1,1),c@i)^|^<[336]](^E605],{chart:c@v});},f^J){da=[]^Zp=0;^Pc^L^<^.572^);cc^Kdj=^<^.572^]^$dj[^@3^);dg^Kdk=dj[^@3^[;dk[^@4]]^n;^|de^n;^<[401]]^a;});}e^I^<[394^)>0){^<[599^x};^<[336]](^E605],{chart:c@v});};^4607^x^v!^4471]]&&!^4402]]&&^4472]]&&^4472^;190^;189]]!^C[194]){@y(^4472]],^4475]])};^/0^;608^x;^4399]]++^v@n^\\c@v=this;setTimeout(f^J^\\dq=document^B409]](^E609])^rq){be(dq,^<[J ],^<[3^{)^Zr=dq^B0]](^E304]);dr[^@1]](^<[430^;507]],0,0);};},2000)^h^B125^;607^}^J){^4197]]({context:this,chart:this,mousedown:^4610]],mouseup:^46^{,mousemove:^4612]],cursor:^4471]]?^E613]:^E614],cursor:^4402]]?^E614]:^E404],capture:true,bounds:^4405]]})};n^B125^;615^}^J^\\c@n=^E20];^Pc^L^4282^);cc++){c@n=^4282^]^v!^7538]]||^"^EJ"]===0||!^7616]]^9^vn^B518^;175]](^7351]])>=0^\\dj^n^Zs^Q^wk^n^Zu^a^$^8^.572^);dg^c(^8^.572^[^B351]]===^7351^js^l^Zj=^8^.572^[;break ;^b!ds){dj={type:^7351]],totalDataSeries:0,plot@nnits:[]};^8^.572^;2^kdj);}^$dj[^@3^);dg^c(dj[^@3^[^B559]]===^7559^ju^l^Zk=dj[^@3^[;break ;^b!du){dk={type:^7351]],previousDataSeriesCount:0,index:dj[^@3^),plotType:dj,axis@pType:^7559]],axis@p:^7559]]=^C[30]?^/3]]:^/4]],axis@m:^/2]],dataSeriesIndexes:[],yTotals:[]};dj[^@3^;274^Y;};dj^?17]]++;^1^;2^kcc);^7618]]=dk;^|^Pc^L^8^.572^);cc^Kdj=^8^.572^]^Zv=0^$dj[^@3^);dg++){dj[^@3^[^?19]]=dv;dv+=dj[^@3^[^B598^);}^h^B125^;620^}^J){^Pc^L^4282^);cc^Kc@n=^4282^]^v!^7538]]^9^Zw=^"^EJ"]^$dw;dg++){^7621^[=++^4430^;519]]};}};n^B125^;561^}^J){^4620^x;^4615^x;^Pc^L^8^.572^);cc^Kdj=^8^.572^]^$dj[^@3^);dg^Kdk=dj[^@3^[^v^M^ 525^=^ 526^=^ 527^=^ 28^=^ 528^=^ 529^=^ 530^=^ 549^=^ 540^=^ 539]){^4622^Y^#^ 550^=^ 552^=^ 531]){^4623^Y^#^ 551^=^ 553^=^ 532]){^4624^Y^#^ 535^=^ 536^=^ 554^=^ 555^=^ 533^=^ 534]){^4625^Y}}}};}^h^B125^;622^}^Jdk^p!^1]]||^1^)@u1){re^e^Zy=dk^B463^;^Rr dx=^M^&^Rr dz,d@z^Z@q^a^$^1^);dg^Kc@n=^4282]][^1^[]^dc=0^ZC^Q^wD^a^v^7^_^C[12]||^7^_^C[543]^\\d@s=^/5^G^&479]]?^/5^G^&479]]:(t^+]^B^T^+^X^&478]])?t^+^X^&478]]:-I^Sv^wE=^/5^G^&481]]?^/5^G^&481]]:(t^+]^B^T^+^X^&480]])?t^+^X^&480]]:I^S^i^"^*]&&^"^*]^B^m||^7627]]=^C[628]){^U}^g^L^"^EJ"];cc^c( typeof ^"^*]=^C[161]){^"^*]=cc^i^"^*]^B^m){^U;dz=^"^*]^B^m();^Nz=^"^*]};d@z=^"cc]^?29]];^O^60^j^60]]^Hdz>dx^2){dx^2^Hd@z@udy^?30]^-0]^f^^z>dy^2){dy^2=d@z^iJ#^\\^qz-^"cc-1]^B170]];d@j@u0&&(^q@j@b -1)^r^61]]>d@j&&d@j!==0){d^61^oj^|^O@s&& !dC^9e^I!dC){dC^l^vcc>0){cc-=2;continue ;};^bd^` !dD){dD^l}e^Id^`dD^9^i^"cc]^?32]]){^M^&633]]^z=^"cc]^?32]]};^O^64^j^64]]^Hdz>d^65^j^65]]^Hd@z==^n^9^^z@udy^?34]^-4]^f^^z>dy^?35]^-5]^f;};^8^.636]]=^7627^oq?^E628]:^E29]^h^B125^;623^}^Jdk^p!^1]]||^1^)@u1){re^e^Zy=dk^B463^;^Rr dx=^M^&^Rr dz,d@z^Z@q^Q^wI=[]^Z@x=[]^$^1^);dg^Kc@n=^4282]][^1^[]^dc=0^ZC^Q^wD^a^v^7^_^C[12]||^7^_^C[543]^\\d@s=^/5^G^&479]]?^/5^G^&479]]:(t^+]^B^T^+^X^&478]])?t^+^X^&478]]:-I^Sv^wE=^/5^G^&481]]?^/5^G^&481]]:(t^+]^B^T^+^X^&480]])?t^+^X^&480]]:I^S^i^"^*]&&^"^*]^B^m||^7627]]=^C[628]){^U}^g^L^"^EJ"];cc^c( typeof ^"^*]=^C[161]){^"^*]=cc^i^"^*]^B^m){^U;dz=^"^*]^B^m();^Nz=^"^*]};d@z=^"cc]^?29]];^O^60^j^60]]^Hdz>dx^2){dx^2^HJ#^\\^qz-^"cc-1]^B170]];d@j@u0&&(^q@j@b -1)^r^61]]>d@j&&d@j!==0){d^61^oj^|^O@s&& !dC^9e^I!dC){dC^l^vcc>0){cc-=2;continue ;};^bd^` !dD){dD^l}e^Id^`dD^9^i^"cc]^?32]]){^M^&633]]^z=^"cc]^?32]]};^O^64^j^64]]^Hdz>d^65^j^65]]^Hd@z==^n^9;dk^?^W=(!dk^?^W?0:dk^?^W)+Math^B263]]^u^^z>=0^pdI^z){dI^z+=d@z^NI[dz^f}e^Id@x^z){d@x^z+=d@z^N@x[dz^f^|^8^.636]]=^7627^oq?^E628]:^E29];}^gc in dI^pisNaN(cc)^9^Z@h=dI[cc]^^^s^?30]^-0]]^V(d^t^2){dy^2^V(cc@ud^64]]||cc>d^65]]^9^^^s^?34]^-4]]^V(d^t^?35]^-5^oh};}^gc in d@x^pisNaN(cc)^9^Z@h=d@x[cc]^^^s^?30]^-0]]^V(d^t^2){dy^2^V(cc@ud^64]]||cc>d^65]]^9^^^s^?34]^-4]]^V(d^t^?35]^-5^oh}^h^B125^;624^}^Jdk^p!^1]]||^1^)@u1){re^e^Zy=dk^B463^;^Rr dx=^M^&^Rr dz,d@z^Z@q^Q^w@t^Q^w@o^Q^wM=[]^$^1^);dg^Kc@n=^4282]][^1^[]^dc=0^ZC^Q^wD^a^v^7^_^C[12]||^7^_^C[543]^\\d@s=^/5^G^&479]]?^/5^G^&479]]:(t^+]^B^T^+^X^&478]])?t^+^X^&478]]:-I^Sv^wE=^/5^G^&481]]?^/5^G^&481]]:(t^+]^B^T^+^X^&480]])?t^+^X^&480]]:I^S^i^"^*]&&^"^*]^B^m||^7627]]=^C[628]){^U}^g^L^"^EJ"];cc^c( typeof ^"^*]=^C[161]){^"^*]=cc^i^"^*]^B^m){^U;dz=^"^*]^B^m();^Nz=^"^*]};d@z=^"cc]^?29]];^O^60^j^60]]^Hdz>dx^2){dx^2^HJ#^\\^qz-^"cc-1]^B170]];d@j@u0&&(^q@j@b -1)^r^61]]>d@j&&d@j!==0){d^61^oj^|^O@s&& !dC^9e^I!dC){dC^l^vcc>0){cc-=2;continue ;};^bd^` !dD){dD^l}e^Id^`dD^9^i^"cc]^?32]]){^M^&633]]^z=^"cc]^?32]]};^O^64^j^64]]^Hdz>d^65^j^65]]^Hd@z==^n^9;dk^?^W=(!dk^?^W?0:dk^?^W)+Math^B263]]^u^^z>=0){d@t^l^N@o^l^idM^z){dM^z+=Math^B263]]^u^NM^z=Math^B263]]^u^|^8^.636]]=^7627^oq?^E628]:^E29];}^^t&& !d@o){dy^2=99;dy^?30]]=1;}e^Id@t&&d@o){dy^2=99;dy^?30]]= -99;}e^I!d@t&&d@o){dy^2= -1;dy^?30]]= -99;}}};dy^?34]]=dy^?30]];dy^?35]]=dy^2;dk^?38]]=dM;};n^B125^;625^}^Jdk^p!^1]]||^1^)@u1){re^e^Zy=dk^B463^;^Rr dx=^M^&^R~76[351]]=^C[~^#7~^7538]][~}e^Idk[_$_b9~;^Pdg=0;dg@u~^(}~76[462^;~){c@i=this[_$_b97~^,}~^;152]]~cc]^B170]~his^B372]~^0}~]){dy^?3~[516^;~^446~^3}~dk^B598~^B195]]~^5}~^8[~^:}~x^?3~c@n^B~this[_$_b976~){continue }~^>}~]]^B~c@v[_$_b976~]||^M~^A}~^B6~^E57~^D}~[^E~==_$_b976~^F}~_$_b976[~}}}}}}}}~]^X~=dz^i~lse {if(~unction(~++^\\~c=0;cc@u~dk[_$_b9~}else {d~if(dz@ud~for(var ~^a;v~626]];va~nfinity;~462]]&&t~d@q^l~=d@h};if~37]]^z~][_$_b9~]](dk)~;v^w~]][dg]~){var ~]][cc]~^r@~542]]=~z>dE&&~=false~}^i~++){if~;var c~turn }~]=d@z}~;for(c~;^|n~}^v~]]){d~74]](~=true~209]]~=null~]]=d@~){if(~d@j=d~^vd~h@udy~@h>dy~(d@z)~;if(~ar d~]]()~6[58~[dz]~11]]~};};~]]=f~310]~6[59~152]~cc>0','r dz,d@z,d@v,dN;J(qJ*;for(var dg=0;dg@udk^t598]]^Idg++J%c@n=^Q282]][dk^t598]][dg]]J8cc=0J8dC=^ndDJ*J=c@n[_$^L$_bJ/]||c@n[_^a^)J(s=^F5J&^ 479]]?^F5J&^ 479]]:(^Q372]^g462]^=372J&^ J>])?^Q372J&^ J>]:-InfinityJ8dE=^F5J&^ 481]]?^F5J&^ 481]]:(^Q372]^g462]^=372J&^ 480]])?^Q372J&^ 480]]:Infinity;J5^5^(]&&^5^(^g209]]||c@n^f27]]^`628]JAqJ9};for(cc=0;cc@u^5]^Icc+J. typeof ^5^(]^`161]){^5^(]=ccJ5^5^(^g209J:@qJ)dz=^5^(^g209]]()^xdz=^5^(]};d@z=^5JB^^29J\'d@z&&d@z^t152J:@v=M^?^^39]](null,d@z);dN=^@^T39]](null,d@z);J+z@udx^f30J0^f30]^oz>dx^_5J0^_5]^o@v@udy^f30J3^f30]]=d@vJ+N>dy^_5J3^_5]]=dNJ5cc>0J%d@j=dz-^5JB-1]^P;d@j@u0&&(d@j=d@j@b -1)J=dx^f31]]>d@j&&d@j!==0){dx^f31]]=d@j^}dz@ud@s&& !dC^YJ4if(!dC){dCJ)if(cc>0){cc-=2;continue JCJ+z>dE&& !dD){dDJ9^ldz>dE&&dD^YJ5^5JB^^32J:k[_$_^ 633]][dz]=^5JB^^32]]J+z@udx^f34J0^f34]^oz>dx^f35J0^f35]^o@z===null^YJ=d@v@udy^f34J3^f34]]=d@vJ+N>dy^f35J3^f35]]=dN};};^Q516^T36]]=c@n^f27]]=d@q?^v628]:^v29];^,^^40^XdT,d@n,d@kJAk=d@k||^nd@w=[];^p^>6]^g152]]-1;cc>=0;cc--J%c@n^>6]JB]J8b@hJ-b@h=c@n^f40]]^ZJ=b@hJAw^t274]](b@h)};};J(yJ-J(lJ*;for(J(r=0;d@r@ud@w^Id@r+J.d@w^&^G^`525]||d@w^&^G^`526]||d@w^&^G^`528]||d@w^&^G^`529]J%dS=@v(^v537],J ^^41]],d@w^&])||8J=J ^^42]]@u=dS/2JAlJ9^{};}};for(d@r=0;d@r@ud@w^Id@r+J.d@l&&d@w^&^G!^k525J;w^&^G!^k526J;w^&^G!^k528J;w^&^G!^k529]^YJ=!d@yJAy=J ]^lJ ^^42]]@u=d@y^f42J:@y=J ]}};}^zd@y;^8^^43^XdT,d@n,d@kJAk=d@k||^nd@pJ-J(m=^Q640]]^ZJ=d@mJAp=d@m^t567^T21]][d@m^f44]]]^lTJAp=N(dT,d@n,^O30^T45]])}J4^pJ!^Q565^T46]]^Icc++J%d@i=^Q565^T46]JB]J=dT>=d@i^]4]]&&dT@u=d@i[^VJ;n>=d@i^]5]J;n@u=d@i^]7J:@p=d@i^f47]]};}}}^zd@p;^8^^48^Xeb,cT,cS){cT=cT||^Q310]];cS=cS||^Q311^wa=eb/400^zMath^_3]](M^?](^Q310]]^71]])@bea);^8^g482^X){t^:^^01]](0,0^70]]^71]])^8^g514^X){^H2^T01]](0,0^70]]^71]])^+67^3392]^g159]]=^F7]];^H2^T49]](0,0^70]]^71]]);^,]^_7^Xec){t^B^g274J?c)^8][^j8^Sy){if(!^U50]]||!^Q651]]^bvar eg=[]J$j=^U50^wf=ej?ej[0]:cyJ$iJ-switch(^h[351J@case ^j7]:^K46]:eg=[^j0],^j2]];^\'=M(ef);^\'^f52]]= new Date()^{^K50]:^K49]:eg=[^j0]]^{^K52]:^K51]:eg=(^H6]]^`447]||^H6]]^`446])?[_^[^v334]]:[^j1]]^{;default:return ;;J5ej&&ej^t152]]>1^bei=M(ef);ei^f52]]= new Date();try{var ee=ei^f29]]-^\'^f29^wd=ei^P-^\'^PJ8b@z=ei^f52]]-^\'^f52J\'M^#ee)>15&&(!!^\'^f53]]||b@z@u200)){^\'^f53]]J9J$l=J1^i70]]||J1J=el&&el^f54J6l^f54]](0,-ee)}JCcatch(e){};^H6]]=^h[351J\'!!^\'^f53]^=471]]^-655^3482]]()};t^A]J*^z;};^p=0;cc@ueg^Icc++J%ek=eg[cc]J$h=^E[333]](^v656]);eh^i35J?k,true,true,J1,1,ef^f57]],ef^f58]],ef^f59]],ef^f60^|,false,false,false,0,null);ef^t290]^g336J?h)J=^U61J@^U61]]()^D200J@^h[200]]()};^,^g439^Sy){if(!^Q651]]^bif(^Q662^3662]]J*^z;^D661J@^U61]]()^D200J@^h[200]]()J5 typeof (^N])^`161]&&^U63J@^N]=^U63]]}J$r=M(cy)J$k=^h[351^woJ$qJ=!cyJ%en=J1^_9]]^D664J6q=(^U64]]==3)^l^h[352J6q=(^h[352]]==2)}J5@n&&w^/]){w^/^g376J?k+^v665]+^6+^v666]+^9)J=eq){w^/^g376]](^U64]])};^.1]){w^/^g376]](^j1])^}eq^bif(n^f67J6o=n^f67]];^.1]){n^f67]]J-if(^J][_^q^T68J@^J][_^q^T68^e^E[183]^g384]](_^[^J^g439^|)^}eo^t506J?k)){eo[ek^g204J?o^i88]],^6,^9)};^!976[515J@^p=0;cc@ut^B]^Icc+J.!t^BJB^g506J?k)^Y;eo=t^BJB]J$m=eo^t438J\'^6>=em^]4]]&&^6@u=em[^V]&&^9>=em^]5]]&&^9@u=em^]7J6o[ek^g204J?o^i88]],^6,^9);^.2]&&eo^f69]]==J9){n^f67]]=eo^+29^T70^3429^T70^e^E[183]]^_6]](_^[^O39^|)}^x^.1]){if(^J][_^q^T68J@^J][_^q^T68^e^E[183]^g384]](_^[^O39^|)}}};break ^xeo=null^}eo&&eo[_$^c){^N]^_0]][_$^c=eo[_$^c}J4^N]^_0]][_$^c^>3]]};}}^+60]^=460^T71]^yp^>5J\'^6@u^<||^6>ep[^V]||^9@u^;||^9>ep^]7^3460]^g477]]()^}(!t^A]||!^C]])&&^O30^3430^T72]](cy)^,^^10^SJ2{t^A]J)if^*][_^a]!^k194]){^"={x:cz,y:c@z,xMinimum:^u^ J>],xMaximum:^u^ 480]]}}J4^"={x:cz,y:c@z}^,^^11^SJ2{if^*][_$^L$_bJ/]||^QJ"^a^)if(t^A^yt=0J$u=0;v^\\$_^ 674]];if^*][_^a^)et=c@z-^"^f29]];eu=M^#^u^ 48^W^ J>^2J<^xet=^"^P-cz;eu=M^#^u^ 48^W^ J>^1]@bet;J,^#et)>2^-402]^yz=^ney=0J=^u^ 4^%@u^u^ 675J6y=^u^ 675]]-^u^ 4^%;^u^ 4^%+^r$_^ 4^$+=ey;ezJ)^l^u^ 4^$>^u^ 676J6y=^u^ 4^$-^u^ 676]];^u^ 4^$-^r$_^ 4^%-=ey;ezJ)}J5ez){JD[^M};^!976[471^3482]]()J=!^"^bif^*][_^a^)var e@z={y1:M^?](^"^f29]],c@z),y2:^@]](^"^f29]],c@z)J,^#e@z^]5]]-e@z^]7]])>1){v^\\$_^ 674^wx=^u^ 480]]-(^u^ 48^W^ J>^2^07]]-es^]5]])J$w=^u^ 480]]-(^u^ 48^W^ J>^2^05]]-es^]J7ex=^@J?x,^u^ ^R[630]]);ew=M^?](ew,^u^ ^R[19J7if(M^#ew-ex)>2@bM^#^u^ ^R[631]])){^u^ 4^%=ex;^u^ 4^$=ew;JD[^MJC;^!JEJ"$^L$_bJ/^y@z={x1:M^?](^"^P,cz),x2:^@]](^"^P,cz)J,^#e@z^]4]]-e@z[^V])>1){v^\\$_^ 674^wx^m^ 48^W^ J>^1^04]]-es^]4]])+^u^ 478^ww^m^ 48^W^ J>^1^06]]-es^]4]])+^u^ J>];ex=^@J?x,^u^ ^R[630]]);ew=M^?](ew,^u^ ^R[19J7if(M^#ew-ex)>2@bM^#^u^ ^R[631]])){^u^ 4^%=ex;^u^ 4^$=ew;JD[^MJC;}};}};^Q662]]J9^+71]^=472]]^_0]^g189]]^`194]){bf(^O72]],^O7J7bd(JD,^O72]],^v473]);bd(JD,^O75]],^v476])JC;}};t^A]J*;^8^^12^Sz,c@z^-655]^=J"^a]!^k194^yt=0J$u=0;v^\\$_^ 674]];if^*][_^a^)et=c@z-^"^f29]];eu=M^#^u^ 48^W^ J>^2J<^xet=^"^P-cz;eu=M^#^u^ 48^W^ J>^1]@bet;J,^#et)>2&&M^#et)@u8&&(^O02]]||^C]])){^F0]^g477^eif(!^O02]]&&!^C^3460^T77]](cJ2}J,^#et)>2&&(^O02]]||^C]])^-402J@^u^ 4^%=^"^f78]]+eu;^u^ 4^$=^"^f79]]+euJ$y=0J=^u^ 4^%@u^u^ 675]]-s(^u^ ^d_$_^ J#{ey^m^ 675]]-s(^u^ ^d_$_^ J#-^u^ 4^%;^u^ 4^%+^r$_^ 4^$+=ey;^l^u^ 4^$>^u^ 676]]+s(^u^ ^d_$_^ J#{ey=^u^ 4^$-(^u^ 676]]+s(^u^ ^d_$_^ J#;^u^ 4^$-^r$_^ 4^%-=ey;}}J8c@v=JD;clearTimeout(^HJ7^H5]]=setTimeout(function(){c@v[^M},0);^!976[471]^yC^>5]];^O82]]()J$@q=t^:^^82]];t^:^^82]]=0.7;t^:^g159]]=^v683];if^*][_^a^)t^:^^49J?C^]4]],^"^f29]],eC[^V]-eC^]4]],c@z-^"^f29]])^!JEJ"$^L$_bJ/]){t^:^^49]](^"^P,eC^]5]],cz-^"^P,eC^]7]]-eC^]5]])}};t^:^^82]]=e@q;}}}^x^F0^T77]](cJ2}^8^g570^XJ%ep^>5^wE=^F3]]?^F3]]:^F4J\'!T&&(^<>0||^;>0)){ep^i92^T84]](^<,^;)}^+62]]&&eE){^<=^u^ ^44]]@u^u^ ^46^s_^ ^44]]:eE^t^44]];^;^m^ ^45]]@ueE^t^45^s_^ ^45]]:eE^t^4J7ep[^V]^m^ ^46]]>eE^t^46^s_^ ^46]]:eE^t^46]]);ep^]7]]=^u^ ^47]]>^u^ ^45^s_^ ^47]]:eE^t^47]];ep^i10]]=ep[^V]-^<;ep^i11]]=ep^]7]]-^;^xvar eD=^Q517]^g568]]();^<=eD^]4]];ep[^V]=eD[^V];^;=eD^]5]];ep^]7]]=eD^t~b976[462]^g~^lthis[_$_b~^Q673]]~ath^t263]](~65]^g481]]~65]^g479]]~[d@r^g567]~^H7]]~][cc^g170]~]^`543]){~(^Q516]~;if(^O~};^8~){if(^Q~if(ek^`44~indow^i74]~]@b(e@z^]~])/es^i10]~])/es^i11]~]]){^Q~674]]^]~c@n^t538]~er^P~,^Q31~};n^t125]~er^f29]]~his^i93]~ep^]5]]~ep^]4]]~]&&^Q~=^O0~ath^f30]~Math^_5~his^f55]~his^t515]~^O71~};if(^h[~document[_$_b976~^O6~^g351]]~^Q39~^t152]];~eo^i79]~;case ^v4~_bJE542]]===_~^v433]]()~^h[290]~^Q4~^t170]]~this^t~626J&b976~^Xc~]^^~cy^f~^v416]~0]]-^u~]]=function(~){continue }~(dT,d@n,d@k)~$_bJE441],~ar es=JD[_~^t41~]^f~^t19~=^k~$_bJE542]~){return };~_bJE424]]~680]],JD[~]]()}J4~^t6~]^t~cy[_$_b976~^t3~^v44~==^v~}J4if(~=(^u~falseJ8~]=dzJ+~for(var cc~$_bJE429~=ey;JD[_~]]?JD[_$~[^v~JD[_$_~_$_bJE~]]J$~;}J4~]J%e~;return ~;break ;~]],false~};J5~d@w[d@r~=0;cc@u~516]][_~681]]))~J8e~){var ~]][_$_~]]J=~var d@~J9;~=false~J5d~J5M~=null;~+){if(~JE12~J:x~window~z,c@z)~J:y~else {~}J=~J@e~5]]);~;var ~=true~J@d~]&&d@~]@bet~;if(~478]~]](e~]]){~){d@~][cc~;};}~this~976[','4Je;ep^J=eD^J;ep[^R=eD[^R;}JN!T){ep^g]]^J=ep^J;ep^g]][^R=ep[^R;ep^g^b190^b36JQ^O4]]+^}312];ep^g^b190^b9]]=^O5]]+^}312]JN^O4]]>0||^O5]]JXep^t392^b684]](-^O4]],-^O5]])J[ep^t5Je= new @l(^O4^95^96^97]],2);};n^g25^b685^^cz,c@z)J#{x:this[^\'JI[686JOz)[_^\\,y:this[_^;JI[686JO@z)JJ^k}};n^g25^b599^^fe^rfe||^.JE^Gep=^.J$p^|m^|l^|k^|j=0J4@l=0,e@w=0J4@i=0,fa^|i^|h=0;for(JZ^xt^AJE^6JZeS=t^A][ccJ$h=^i[688^b687^vcJ(sJ4M=@v^u689^)J*^/e@v^K0^)J*^/eN^K1^)J*^/e@y^K2^)J*^/e@k^K3^)J*^/eI^K4^)J*^/e@m^K5^)J*^/e@n^K6^)J*^/fc={percent:JT,total:JT}J4@r=JTJN^{^0351^b175]]^u697]J0^{^0351]]=^h556]||^{^0351]]=^h557JVc=^][698]^c6[JS^)])}JN^{^0699JK^:^t699]]){e@r={chart:^][372]]^_^i[JS^X^:,inJmeS^f00]],total:fc^f0JMpercent:fc^f02]]}}J4T=^:^t699]]?^:^t69Jde@r):^:^f03]]?^][704]](^:^f03]^)],^i[JS],JT,eS^f00]]):^{^0699]]?^{^069Jde@r):^{^0703]]?^][704]](^{^0703]^)],^i[JS],JT,eS^f00]]):JTJNeT===JT||eT=^h20^MJZfd=@v^u705^)J*^/fb=@v^u706^)J*^/e@s=0J4@t=eS^f07]J$j=^{^0462]J$x=^{^0463J)f= new bi(e@o,{x:0,y:0,max@width:e@m?e@m:this^J@b0.5,max@xeight:e@n?e@v@b5:e@v@b1.5,angle:fb=^h26]?0:-90,text:eT,padding:0,JngroundCJHeI,horizontal@zlign:^}360]JGSizJcvJG@samily:eNJG@weight:e@kJGCJHeMJGStylJcy,text@Jjline:^}9]})J+g=ff^f08]](JA^*(^j5]J0^*(^j8]J0^*^u540]J0^*^u539^l^:[_^\\@u^m6[478JK^:[_^\\>^m6[480JK^:JJ^k@ue@x^t478JK^:JJ^k>e@x^t480]]){continue }^o^:[_^\\@u^m6[478JK^:[_^\\>^m6[480]]){continue }};e@w=2;e@l=2J<b=^h26JVi=ff^J;fh=ff[^R;}J,fh=ff^J;fi=ff[^R;}JN^][516^b54JP^h12]J?^*(^j5]J0^*(^j8])>=0){fd=^}25];e@w=4;^o^*^u697^lfd^@fd=^NJ,if(^F40]||^F39JVd=^N};cJ%b^$J@-fi/2J<d!^h709JVm=^O5]];fl=^O7J/e@tJXc@J%b^$J=-J1J>@z@ufmJ?fd^@c@Jh^(eJ2^$J=,fm)JY^efmJY}};^eeJ2^$J=JYJ>@z>fl-J1J?fd^@c@z=^-]J"^$J=,fl)-J1^efl-J1}J[}J,fm=Ma^(^i^+5^95]]);fl=^-^c6^+7^97]]JA^*^u711^le@tJXJWMa^(^i^+5^95Jifh/2JY}J,JW^-^c6^+7^97]])-fh/2-e@w}}J,JW(Ma^(^i^+5^95Ji^-^c6^+7^97]]))/2}JNe@tJXc@Jh^(eJ2^$629]J&h/2J>@z@ufm&&(^F40]||^F39])){c@Jh^(eJ2^$J=-J1,^O5]]JY)};^e^-]J"^$629]J&h/2J>@z>fl-J1&&(^F40]||^F39])){c@z=^-]J"^$J=JY,^O7]]-J1)J[};^o^*(^j5]J0^*(^j8]J0^*^u539])>=0){fd=^}25];e@l=4;^o^*^u697^lfd^@fd=^NJ,if(^F40JVd=^N};c@J%b^$J=-fh/2J<d!^h709JVk=^O4]];fj=^O6J/e@t@u0){cJ%b^$J@-fiJgJ>z@ufkJ?fd^@cJh^(eJ2^$J@,fk)Jk^sfkJk}};^seJ2^$J@JkJ>z>fj-fiJgJ?fd^@cz=^-]J"^$J@,fj)-fiJg^sfj-fiJg}J[}J,fk=Ma^(^i^+4^94]]);fj=^-^c6^+6^96]]JA^*^u711^le@t@u0){JWMa^(^i^+4^94Jifi/2Jk}J,JW^-^c6^+6^96]])-fi/2Jg}}J,JZJW(Ma^(^i^+4^94Ji^-^c6^+6^96]]))/2}JNe@t@u0){cJh^(eJ2^$170]J&i/2^s^-]J"^$170]J&i/2J[}J<b=^h712]){c@z+=fh};ff[_^\\=cz;ffJJ^k=Jfff^t433]](true);}J.@i={sourcJco,dest:^.]^t39^WCallJn:d^f13Jrasing@sunJ3d^f15^b714]],animation@Jj:0,stJsime@yercent:0.7^zc@i;};n^g25^b576^^dk^rdk^t575JK^.JE^Gfz^?]^IJ<z@u=0)J#}J+q=t^<]^t645]]^Q716^vep=^.];^d^%76[7Je(^O4^95Jrp^J,ep[^R)^Q718^vfw^adg=0;dgJU^t598]]^I;dg++J-c@l^?][dg]J.@n=^][28JLc@l^>JP^,J+p^P538J/^=]){^=](@t(c@n^f2JM^,))}J+y^P647]];t^<]^f2JLfy]={ob^5JS,^!}J+rJ`fy);fq^g6JQfr;fq^g6JP^,>0?Ma^(^,,4):0J+o^P523J)n=fo[0^>JQfnJ+tJFJ.c=0,cz,JfJCz^3]()J<p^I>0J-^yJl^xfpJJ^6dz=f^2^bJB?f^2^bJB():f^2J/dzJU[^\'JI^TJa4JKdz>dk[^\'JI^TJa5]^Mif( Jbof (fp^1])!^h29]J?cc>0^U[1^#J9^pfxJF^ZcJ7^\'^ ^w^\'^ J!dz-dk[^\'^ ^4c@J7_^;^ 723]]+J_^;^ J!fp^1]-J_^;^ ^4JC@p^P621]]JR;t^<]^f2JLd@p]={id:d@p,ob^5641],^!,data@yJ\\InJmcc,x1JD1J]}J<t||fx^U^%7^n^"9^B_JI^8ft=false;^y}J,^d[165JOz^"976^qc@z)}J>c%500==0^U[J\'^d^%7^n^"976[J\'fqJJb9^B_JI^8^&976J ^SJ J-fv^P726JOc,cJ(o);fw^Efv)J+uJ`d@pJAT){fw^E{xJDJ],ctx:fq,Jb^[35JMsize^[727]],c^LC^LThickness^[728]]})^&976J5^SJ5||^V6J6^SJ6){t^A]^E{chJsype:^j5^XfpJR^_c@n,pJ\\:^`,direJ3fp^1]>=0?1:-1,cJHfn})};}^Q1^#J9^p};bb^f2Jdfw)^Q730J^^3]();^D[163J^}J.@i={sourcJco,dest:^.]^t39^WCallJn:d^f3JMeasing@sunJ3d^f15^b73^W@Jj:0^zc@i;};n^g25^b577^^dk^rdk^t575JK^.JE^Gfz^?]^IJ<z@u=0)J#}J+q=t^<]^t645]]^Q716^vep=^.];^d^%76[7Je(^O4^95Jrp^J,ep[^R)^Q718^vfw^adg=0;dgJU^t598]]^I;dg++J-c@l^?][dg]J.@n=^][28JLc@l^>JP^,J+p^P538J/^=]){^=](@t(c@n^f2JM^,))}J+y^P647]];t^<]^f2JLfy]={ob^5JS,^!}J+rJ`fy);fq^g6JQfr;fq^g6JP^,>0?Ma^(^,,4):0J+o^P523J)n=fo[0^>JQfnJ+tJFJ.c=0,cz,JfJCz^3]()J<p^I>0J-^yJl^xfpJJ^6dz=^V6[JB?f^2^bJB():f^2J/dzJU[^\'JI^TJa4JKdz>dk[^\'JI^TJa5]^Mif( Jbof (fp^1])!^h29]J?cc>0^U[1^#J9^pfxJF^ZJZf@z=JfcJ7^\'^ ^w^\'^ J!dz-dk[^\'^ ^4c@J7_^;^ 723]]+J_^;^ J!fp^1]-J_^;^ ^4JC@p^P621]]JR;t^<]^f2JLd@p]={id:d@p,ob^5641],^!,data@yJ\\InJmcc,x1JD1J]}J<t||fx^U^%7^n^"9^B_JI^8ft=false;^y}J,^d^qf@z);^D^qf@z)}^Q165JOz^"976^qc@z)}J>c%500==0^U[J\'^d^%7^n^"976[J\'fqJJb9^B_JI^8^&976J ^SJ J-fv^P726JOc,cJ(o);fw^Efv)J+uJ`d@pJAT){fw^E{xJDJ],ctx:fq,Jb^[35JMsize^[727]],c^LC^LThickness^[728]]})^&976J5^SJ5||^V6J6^SJ6){t^A]^E{chJsype:^j6^XfpJR^_c@n,pJ\\:^`,direJ3fp^1]>=0?1:-1,cJHfn})};}^Q1^#J9^p};bb^f2Jdfw)^Q730J^^3]();^D[163J^}J.@i={sourcJco,dest:^.]^t39^WCallJn:d^f3JMeasing@sunJ3d^f15^b73^W@Jj:0^zc@i;};function I(m@l,m@wJ-mN^a^xm@lJJ^6if(cc==0){mN^Em@l[0])^ZJZmS,mT,m@n;m@n=cc-1;mS=J80?0Jo-1;mT=J8m@l^I-1?m@nJo+1;J;kJp(^Y76Jt^76Jt]J:,y:(^Y76Jq^76Jq]J:};J;vJpm^CJ@+m@k[_^\\/3,y:m^CJ=+m@kJJ^k/3};mN[mN[^Hm@v;m@n=cc;mS=J80?0Jo-1;mT=J8m@l^I-1?m@nJo+1;J;rJp(^Y76Jt^76Jt]J:,y:(^Y76Jq^76Jq]J:};J;yJpm^CJ@-m@r[_^\\/3,y:m^CJ=-m@rJJ^k/3};mN[mN[^Hm@y;mN[mN[^Hm@lJR;^zmN;}n^g25^b578^^dk^rdk^t575JK^.JE^Gfz^?]^IJ<z@u=0)J#}J+q=t^<]^t645]]^Q716^vep=^.];^d^%76[7Je(^O4^95Jrp^J,ep[^R)^Q718^vfw^adg=0;dgJU^t598]]^I;dg++J-c@l^?][dg]J.@n=^][28JLc@l^>JP^,J+p^P538J/^=]){^=](@t(c@n^f2JM^,))}J+y^P647]];t^<]^f2JLfy]={ob^5JS,^!}J+rJ`fy);fq^g6JQfr;fq^g6JP^,>0?Ma^(^,,4):0J+o^P523J)n=fo[0^>JQfnJ+tJFJ.c=0,cz,JfJCzJ+@q=[]^3]()J<p^IJXJl^xfpJJ^6dz=^V6[JB?f^2^bJB():f^2J/dzJU[^\'JI^TJa4JKdz>dk[^\'JI^TJa5]^Mif( Jbof (fp^1])!^h29]J?ccJXfC(f@q);f@q=[];}^ZcJ7^\'^ ^w^\'^ J!dz-dk[^\'^ ^4c@J7_^;^ 723]]+J_^;^ J!fp^1]-J_^;^ ^4JC@p^P621]]JR;t^<]^f2JLd@p]={id:d@p,ob^5641],^!,data@yJ\\InJmcc,x1JD1J]};f@q[f@q[^H^`JN^V6J ^SJ J-fv^P726JOc,cJ(o);fw^Efv)J+uJ`d@pJAT){fw^E{xJDJ],ctx:fq,Jb^[35JMsize^[727]],c^LC^LThickness^[728]]})^&976J5^SJ5||^V6J6^SJ6){t^A]^E{chJsype:^j7^XfpJR^_c@n,pJ\\:^`,direJ3fp^1]>=0?1:-1,cJHfn})};}};fC(f@q);};bb^f2Jdfw)^Q730J^^3]();^D[163J^};function fC(f@qJ-fD=I(~b976[724^b~dataSeriesInJmc@l~,c@zJAT){fq[_$_b~69]](JAT){fq[_$_~976[710^b~[163]]();e@oJJb9~};}J<p[cc][_$_b~^}462]][_$_~th^g95]](~],^i[641]~e@h^g75]]~[438^b41~c@n^f19]]~Math^t630]~^][405]~_JI[567]]);var ~76[567^b~[cc]^t629]~p[cc]^g70~^Q163]~478Ji0.5)@u@u0;~jectType:^}~J952]];cc++){~]]-m@l[mSJEb97~[164JOz,c@z);};~]],^O~^i[641]]~$_b976[463]JE~his^t430]~^d[720]~]^Q16~=dk^t598]~=^h25]){~his^t394]~76[163J^;fq[_$~@l[m@n]^t~if(T){fq[_$_JI~^t274]](~e@h=^h5~JI[392]];var ~^}152]]]=~^g52]]~^t310]]~=@v^u69~JHfu,border~]){continue };~^}709]}}~ep^t41~=c@n^t~;^d[~^}311]]~||c@n[_$_JI~[626]JEb97~){^d~fp[ccJEb97~2]],animation~],data@yJ\\:~m@l[mTJEb9~;continue ;};~:fv^t~$_J970]]~this[_$_JI~]]=function(~,dataSeries:~{xJD:c@z}~=[];for(JZ~]]^t~](^{7~e@o[_$_JI~}J,c@z=~^t7~^t1~==^}~^{76~^}52~b976[J=~])>=0J?~e@jJJb97~6[164JOz~}J,if(~69]]()J[~[165JOz,~J-e@o=~}J,cz=~[^}~(^}~]]();JZ~723]]+dk[~cc=0;cc@u~fx=false;~};return ~eJ29~=0J+~_$_JI[~[537]]>0~725]]@b(~(eJ2~{return ~]J4@~z=eSJJ~],e@p)-f~169J^;~z,c@z,e@~]]J+~],eS[_$~;JZf~else {~){JZ~;JZc~]]JN~)>=0||~fh-e@w~SJJb~ction:~;JZe~[703]]~[699]]~z=(dk[~m@n===~JI[1~])/m@w~JZm@~JNf~629]]~JNc~){if(~170]]~)JN~209]]~JZd~:cz,y~]JJ~=true~,font~olor:~b976~[_$_~]]||~2]][~1]],~;if(~]](c~2]]=~0]]=~[cc]~567]~null~@udk~]){f~e@p=~>0){~+e@w~var ~};};~oint~:c@z~]]()~dk[_~=@r(~6[63~type~e:e@~9]](~17]]~c@z;~-e@l~z=Ma~]])+~qase~+e@l~for(~dex:~back~:m@n~={x:~[629~]],e~artT~[170','f@q,2)JHDJ,152]]>0){e@o[J#3JP^<163JP}^i4]](fD[0]J,170]],fD[0^j)^<164]](fD[0]J,170]],fD[0^j)};for(var cc=0;cc@ufDJ,152]]-3;cc+=3){e@oJ,733]](JF1][_$^/1^j,JF2][_$^/2^j,JF3][_$^/3^j)^<733]](JF1][_$^/1^j,JF2][_$^/2^j,JF3][_$^/3^j)};if(cc>0&&cc%3000===0){e@o[J#9JPJ<^-J#4]](JF3][_$^/3^j)^<169JP;fq[J#3JP;fq[J#4]](JF3][_$^/3^j);JK^i9JP^<169JPJKvar c@i^J^)J,^p^K[731]],easin^H76[715^}732^O0^nvar @q=function(e@o,^"f@o,f@h,f@l,f@t,fT,f@n,f@r){if( typeof (f@r)===J#1]){f@r=1};f@o=f@o||0;f@h=f@h||J>[13]JIfE=f@w,f@s=f@m,f@j=f@p,f@x=f@i,f@k,f@y;if(JC>15&&f@i-f@p>15){var fI=8JBvar fI=0.35@bMJ [630]]((JC),(f@i-f@p))}JIfN=J>[734]J?v=J>[735]JIfM=fnJ<^-_$^8p);^:^6]=fM^y682]]=f@r^y649]](f@w,f@p,JC,f@i-f@p)^y682]]=1JH@o>0){var b@x=f@o%2===0?0:0.5J<^-J#2]]=f@o^i0]]=f@hJ<^8p)^y717]](f@w-b@x,f@p-b@x,JC+2@bb@x,f@i-f@p+2@bb@x)^i9JP;};e@^9if(f@l===true){^:)J<^-_$^8p^,](f@w+JNp+fI^,JJ-JNp+fI^,JJ,f@p)^i7JP^P6[736]](^wj+fI,^wj)J/^;_$^mN^6]=fS^i8JP;e@^9}JH@t===true){^:)J<^-_$^8i^,](f@w+JNi-fI^,JJ-JNi-fI^,JJ,f@i)^i7JP^P6[736]](^wx-fI,^wx)J/^;_$^mN^6]=fS^i8JP;e@^9}JHT===true){^:)J<^-_$^8p^,](f@w+JNp+fI^,](f@w+JNi-fI^,](f@w,f@i)^i7JP^P6[736]](fE+fI,(f@i+f@p)/2,fE,(f@i+f@p)/2)J/^;_$^m@v^6]=fS^i8JP;e@^9}JH@n===true){^:)J<^-J#4]JJ,f@p^,JJ-JNp+fI^,JJ-JNi-fI^,JJ,f@i)^P6[736]](f@s-fI,(f@i+f@p)/2,f@s,(f@i+f@p)/2)J/^;_$^m@v^6]=fSJ/^;_$^m@v^6]=fS^i8JP^i7JP;e@^9};};n[J>^x[579]^M e^F]||^)J,392]];va^@^4if(^D^Q^)^h^`^&^ J:^&^ 7J;0-dk^&^ 47^N^3?^3^=]((^u10]]@b0.15),^)J,310]]/dkJM^*J=0.9)^o^%b97^+J1^^0]]^_](dk^%JQJ2^%JQ^aJO^b^*J=^[^7e==J3){gb=gd/dkJM^*J=0.9JBif(gb@uJ0^c^!^\'^f6]J7_$^-_$_J4^0^e^2^1e^t^!^\'^f7]^0^e^2^1J-^\'^|^I^R976[59^4dg++^T76[5J8^S76[2^s^W]^XJM^E^\\976^>for(c^U[152J5^k209]]?dz=f^.^Gdz=f^.J"^%b97^+J)^%b97^+5^B^$b97^L^AJL^%^ J:^%^ ^z^%^ 47^lc@JL^&^ J:^&^ 7J;fp^(-dk^&^ 47^lvar f@w=cJ9b^*J=gb/2)+((dkJ$19]]+dg)@bgb^{m=f@w^qpJ?iJHp^(>=0){f@p=c@z;f@i=gfJH@p>f@i){var cr=f@p;f@p=f@i;f@i=f@p;};JBf@i=c@z;f@p=gfJH@p>f@i){var cr=f@p;f@p=f@i;f@i=f@p;};};f^d^V6^Y[^CJ*$_b^]^"0,null,gc&&(fp^(>=0),(fp^(@u0)&&^rc@n[J(1]J@d@p=c@nJ$21]][cc];J-^\'722]][d@p]={id:d@p,objec^v641],J%JA@l,J&JAc,J.:f@pJ!f@i};fn=@r(d@p);if(T){@q(J-^\'645]],^"JG^5,false)};if(^k703^g703]]||^k699^g699]]){^u94^}274]]({char^v28],J&:fp[cc],J%:c@n,point:{x:f@w+(JC)/2,y:fp^(>=0?f@p:f@i},direction:fp^(>=0?1:-1,bounds:{J.^=J\'J!MJ [195]J\'},color:fn})JK;}^y730]^!^\'645^}730JP}JIga=MJ [630]](gf,dk^&b976[742^}417]J@c@i^J^)J,^p^K[743]],easin^H76[715^}744^Oga^nn[J>^x[584]^M e^F]||^)J,392]];va^@^4if(^D^Q^)JIghJE ggJE cc=0,cz,c@z^`^&^ J:^&^ 7J;0-dk^&^ 47^N^3?^3:^u10]]@b0.15^o^%b97^+J1^^0]]^_](dk^%JQJ2^%JQ^aJO^b^*573^?^[^7e==J3^7b@uJ0^c^!^\'^f6]J7_$^-_$_J4^0^e^2^1e^t^!^\'^f7]^0^e^2^1J-^\'^|^I^R976[59^4dg++^T76[5J8^S76[2^s^W]^XJM^E^\\976^>e@o[J#0]]=J(5];for(c^U[152J5dz=f^.]J,209]]?f^.^Gf^.J"^%b97^+J)^%b97^+5^B^$b97^L^AJL^%^ J:^%^ ^z^%^ 47^lc@JL^&^ J:^&^ 7J;fp^(-dk^&^ 478]]))J?w=cJ9b^*573^?gb/2)+(dkJ,524]]@bgb^{m=f@w^qpJ?iJHp^(>=0)J+h[dz]?ghJ6p=c@z-b@x;f@i=gf-b@x;gh[d^Zelse J+g[dz]?ggJ6i=c@z+b@x;f@p=gf+b@x;gg[d^Z;f^d^V6^Y[^CJ*$_b^]^"0,null,gc&&(fp^(>=0),(fp^(@u0)&&^rc@n[J(1]J@d@p=c@nJ$21]][cc];J-^\'722]][d@p]={id:d@p,objec^v641],J%JA@l,J&JAc,J.:f@pJ!f@i};fn=@r(d@p);if(T){@q(J-^\'645]],^"JG^5,false)};if(^k703^g703]]||^k699^g699]]){^u94^}274]]({char^v550],J&:fp[cc],J%:c@n,point:{x:cz,y:fp^(>=0?f@p:f@i},direction:fp^(>=0?1:-1,bounds:{J.^=J\'J!MJ [195]J\'},color:fn})JK;}^y730]^!^\'645^}730JP}JIga=MJ [630]](gf,dk^&b976[742^}417]J@c@i^J^)J,^p^K[743]],easin^H76[715^}744^Oga^nn[J>^x[585]^M e^F]||^)J,392]];va^@^4if(^D^Q^)JIghJE ggJE cc=0,cz,c@z^`^&^ J:^&^ 7J;0-dk^&^ 47^N^3?^3:^u10]]@b0.15^o^%b97^+J1^^0]]^_](dk^%JQJ2^%JQ^aJO^b^*573^?^[^7e==J3^7b@uJ0^c^!^\'^f6]J7_$^-_$_J4^0^e^2^1e^t^!^\'^f7]^0^e^2^1J-^\'^|^I^R976[59^4dg++^T76[5J8^S76[2^s^W]^XJM^E^\\976^>for(c^U[152J5dz=f^.]J,209]]?f^.^Gf^.J"^%b97^+J)^%b97^+5^B^$b97^L^AJL^%^ J:^%^ ^z^%^ 47^lvar gi;if(dkJ$38]][dz]!==0){gi=fp^(/dkJ$38]][dz]@b100JBgi=0};c@JL^&^ J:^&^ 7J;gi-dk^&^ 478]]))J?w=cJ9b^*573^?gb/2)+(dkJ,524]]@bgb^{m=f@w^qpJ?iJHp^(>=0)J+h[dz]?ghJ6p=c@z-b@x;f@i=gf-b@x;gh[d^Zelse J+g[dz]?ggJ6i=c@z+b@x;f@p=gf+b@x;gg[d^Z;f^d^V6^Y[^CJ*$_b^]^"0,null,gc&&(fp^(>=0),(fp^(@u0)&&^rc@n[J(1]J@d@p=c@nJ$21]][cc];J-^\'722]][d@p]={id:d@p,objec^v641],J%JA@l,J&JAc,J.:f@pJ!f@i};fn=@r(d@p);if(T){@q(J-^\'645]],^"JG^5,false)};if(^k703^g703]]||^k699^g699]]){^u94^}274]]({char^v551],J&:fp[cc],J%:c@n,point:{x:cz,y:fp^(>=0?f@p:f@i},direction:fp^(>=0?1:-1,bounds:{J.^=J\'J!MJ [195]J\'},color:fn})JK;}^y730]^!^\'645^}730JP}JIga=MJ [630]](gf,dk^&b976[742^}417]J@c@i^J^)J,^p^K[743]],easin^H76[715^}744^Oga^nn[J>^x[580]^M e^F]||^)J,392]];va^@^4if(^D^Q^)^h^`^&^ J:^&^ 7J;0-dk^&^ 47^N^3?^3^=]((^u11]]@b0.15),^)J,311]]/dkJM^*J=0.9)^o^%b97^+J1^^1]]^_](dk^%JQJ2^%JQ^aJO^b^*J=^[^7e==J3){gb=gd/dkJM^*J=0.9JBif(gb@uJ0^c^!^\'^f6]J7_$^-_$_J4^0^e^2^1e^t^!^\'^f7]^0^e^2^1J-^\'^|^I^R976[59^4dg++^T76[5J8^S76[2^s^W]^XJM^E^\\976^>e@o[J#0]]=J(5];for(c^U[152J5^k209]]?dz=f^.^Gdz=f^.J"^%b97^+J)^%b97^+5^B^$b97^L^A@JL^%^ J:^%^ ^z^%^ 47^lcJL^&^ J:^&^ 7J;fp^(-dk^&^ 47^lvar f@p=(c@J9b^*J=gb/2)+((dkJ$19]]+dg)@bgb)^{i=f@p^qwJ?mJHp^(>=0){f@w=gf;f@m=cz;JBf@w=cz;f@m=gf;};f^d^V6^Y[^CJ*$_b^]^"JD^rfals~b976[724^}~]();if(T){J-~f@w,f@p,f@m,f@i,fn,~^B ~ typeof (fp[cc][_$_~J,462]][_$_~J,463]][_$_~976[430^}~[cc^j~thisJ,405]]~976[739^}~6[626^}63~)^i5]~_JO163]]();e@o[~p[cc]J,170]~_b976[170]],JF~](epJ,414]]~epJ,311]]);~,epJ,310]],~thisJ,738]]~8^}152]];~,false,false,false~)^y159]~){gb=gdJBif(g~_JO164]](f@w,f@~oJ,730]]();~e@oJ,716]](~76[737]](0,fM);fS[~;if(T){fqJ,~:MJ [630]~[740]]?true:false;~^}152]]@b~r fz=dkJ,59~[29]){continue };c~]]){continue };if(~523]][cc%c@nJM9~fz@u=0){return };v~976[152]]>0){var g~@o=dkJ,575]~]J,209]]():~g@sunction:dJM9~6[718JP;};for(va~={source:e@o,dest:~Callback:d[J>~6[629]])!==J>~]=function(dk){var~8]]))@u@u0JIgd=~]],animation@qase:~JIfS=e@o[_$_b97~ar fn=nullJIep=~r dg=0;dg@udkJM~var c@n=J-9~){var c@l=dkJM9~c=0;cc@ufp[J>~22]]?fp[cc]JM97~p=c@nJ,538]~;var ft=trueJHp~[522]]:c@n[J>~z]=b@x+(f@i-f@p);}~0.9)@u@u0;if(gb>gd~c=(gb>5)&&c@nJM~976[152]]];@q(e@o,~b=(((epJ,31~/MJ [263]~JIdzJIgf=(dk~[478]]))@bMath[_$_~263]](ge))/dkJM~}^y716]~n=^k5~,epJ,415]]~^|6[71~]]||c@nJ,~JIcc=0,cz,c@z~^y16~]J$29]]~fp[cc]J,~8]])+0.5)@u@u0;~_JO737]](1,f~};return c@i;};~@u@u0JIge=dk~392]],animation~+gb@u@u0J?~gc,false,false,~82]][c@l]JIf~@oJ,718]~thisJ,3~tType:J>[~(f@m+f@w)/2,f@~[125]][J>~;e@oJ,~7J;dz-dk~)@u@u0J?~645]]JM97~]]J,~ath[J>~,x2:f@m,y2:~];if(dz@udk~J>[16~J,6~dataSeries~data@yoint~](f@p,f@i)~J>[74~4]]||dz>dk~76[523]][_~{var b@x=g~[J>[~thisJM~x1:f@w,y1~;fSJM9~1){gb=1}}~1]]JIg~[480]]-dk~=Infinity~JO717]~]];cc++){~[dz]:0;f@~]()};e@o[~98]][dg];~z-(dk[_$_~723]]+dk~25]]@b(~;e@o[_$~617]]@b~_$_JQ~JIf@~])JI~Index:c~}else {~f@m-f@w~JG,~=[];var~fD[cc+~0,null~;if(f~;var ~](f@m~};};}~z=(dk~[_$_b~fI,f@~JQ[~]]()~b976','e,c^k);^9J-^0J*^6^.JQ^-,dat^4f@wJ#f@mJ2;fn^r@q(^w^#,fJR^:^=JJ)}^/^;^M76^5^H6[39^<^I49]JO^G^K^$]>=0?f@m:f@w,y:f@p+(f@i-f@p)/2^F_$_^@bounds:{x1:MathJ,630]](J5J#^2J5J2,c^x^J]^(JX^#[^bJIa=^2gf,d^"JP742]]J!6]]);vJ\'^A$J7^7^?_J/46]],^D$_b^844^XgaJV^L[^l6J&^Bb9J6^N]JW^EJ,5^\'JG^Cn=null;JTp=t^o];JIhJ4gg=[]^q^c^!^ JD^!^ J.0-d^!^ 478]]))@u@J:d=^f]?^f]:^w311]]@b0.15@u@J:e=d^"b9^&1]];JIb=(((epJ,311]]/^i](d^"b9J1-d^"b9J3))@b^i](ge))/dkJ,739]J*57^^@b0.9)@u@u0;if(gb>gd^]e===Infinity^]b@u1){gb=1}}};eJ"716]^(JX^#J,716^y^1_bJ0^)epJ!5^*^+eJ"718]^(JX^#J,717]^)epJ!5^*^+^w^#^aJ+^\\6[5^\'^e_$^Z^[[282]][c^OJ<]JEtJK;JL^WJIc=(gb>5)&&^{740]]?true:JJ^j]=_J/45]JScc=0;J=^Y{dz=f^%^u?f^%^u():f^%;JA^"b9^&4J;^"b9^&5J8^T^$]^hcJB};c@z=(d^"^ JD^"^ ^|^"^ ^_cz=(d^!^ JD^!^ J.^$]-d^!^ 478]]))JE@p=c@z-J$[739]J*57^^@bgb/2)+J$[524]]@bgb)^}i=f@p+gb^}wJE@m;if(^$]>=0){vJ9h[dz]?gh[dzJCgf+J>cz+b@x;gh[^Pelse {vJ9g[dz]?gg[dzJCcz-J>gf-b@x;gg[^P;fn=f^g]]?f^g]]:cJ?76^S76[52^^];@q(e@o,fJR^:,gc^=c^k);^9J-^0J*^6^.JQ^-,dat^4f@wJ#f@mJ2;fn^r@q(^w^#,fJR^:^=JJ)}^/^;^M76^5^H6[39^<^I52]JO^G^K^$]>=0?f@m:f@w,y:c@z^F_$_^@bounds:{x1:MathJ,630]](J5J#^2J5J2,c^x^J]^(JX^#[^bJIa=^2gf,d^"JP742]]J!6]]);vJ\'^A$J7^7^?_J/46]],^D$_b^844^XgaJV^L[^l7J&^Bb9J6^N]JW^EJ,5^\'JG^Cn=null;JTp=t^o];JIhJ4gg=[]^q^c^!^ JD^!^ J.0-d^!^ 478]]))@u@J:d=^f]?^f]:^w311]]@b0.15@u@J:e=d^"b9^&1]];JIb=(((epJ,311]]/^i](d^"b9J1-d^"b9J3))@b^i](ge))/dkJ,739]J*57^^@b0.9)@u@u0;if(gb>gd^]e===Infinity^]b@u1){gb=1}}};eJ"716]^(JX^#J,716^y^1_bJ0^)epJ!5^*^+eJ"718]^(JX^#J,717]^)epJ!5^*^+^w^#^aJ+^\\6[5^\'^e_$^Z^[[282]][c^OJ<]JEtJK;JL^WJIc=(gb>5)&&^{740]]?true:JJ^j]=_J/45]JScc=0;J=^Y{dz=f^%^u?f^%^u():f^%;JA^"b9^&4J;^"b9^&5J8^T^$]^hcJB};c@z=(d^"^ JD^"^ ^|^"^ ^_JIi;ifJ$[638]][dz]!==0){gi=^$]/dkJ,638]][dz]@b100}else {gi=0};cz=(d^!^ JD^!^ J.gi-d^!^ 478]]))JE@p=c@z-J$[739]J*57^^@bgb/2)+J$[524]]@bgb)^}i=f@p+gb^}wJE@m;if(^$]>=0){vJ9h[dz]?gh[dzJCgf+J>cz+b@x;gh[^Pelse {vJ9g[dz]?gg[dzJCcz-J>gf-b@x;gg[^P;fn=f^g]]?f^g]]:cJ?76^S76[52^^];@q(e@o,fJR^:,gc^=c^k);^9J-^0J*^6^.JQ^-,dat^4f@wJ#f@mJ2;fn^r@q(^w^#,fJR^:^=JJ)}^/^;^M76^5^H6[39^<^I53]JO^G^K^$]>=0?f@m:f@w,y:c@z^F_$_^@bounds:{x1:MathJ,630]](J5J#^2J5J2,c^x^J]^(JX^#[^bJIa=^2gf,d^"JP742]]J!6]]);vJ\'^A$J7^7^?_J/46]],^D$_b^844^XgaJV^L[^l1J&^Bb9J6^N]JW^EJ,5^\'JG^Cq=^w^#;JTs=d^"^sgj=d^!^sfwJ4ep=t^o^z[716]]()^U716^y^1_bJ0^)epJ!5^*^+e@o^aJ(^>_bJ0^)epJ!5^*^+fq^aJ+^\\6[5^\'^e_$^Z^[[282]][c^OJ<]JEy=^{647]^0J*722]][fy]={^.567],^-}JEr=@r(fy);fqJ,159]]=fr;fwJ4ftJK^q^c^!^ JD^!^ J.0-d^!^ ^_JIk;JIm=null;JL^Wvar fn=cJ?76^S76[52^^^z[159]]=fn^j]=fn;eJ"162]]=^`;if(^p]){^p](@t(^{721]],^`))}JExJKJS;J=^Y{dz=f^%^u?f^%^u():f^%;JA^"b9^&4J;^"b9^&5J8^T^$]^hgl();fxJK;cJB;};cz=(d^"^ JD^"^ ^|^"^ ^_c@z=(d^!^ JD^!^ J.^$]-d^!^ ^_if(ft||fx){e@o[_$_^1^Q;gm=J%JNT){fq[_$^>^Q;};ft=JJ;fx=JJ;}else {^Vcz,c@z)^U165]](cz,c@z)JNcc%250==0){gl()};};^9J-^0J*^6^.JQ^-,dat^4cz,y1:c@z}^/JM!==0){JL[ccJ*JM>0||^{JM>0){var fv=^{726]](cc,cz,c@z,e@o);fwJ,274]](fv)JEu^rfwJ,274]](J%,ctx:fq,typJ [351]],sizJ [727]],c^vC^vThickness:fvJ,728]]})};}}^/^;^M76^5^H6[39^<^I28]JO^G^Kcz,y:c@z^F_$_^@c^xgl();bbJ,729]](fw);^J]^(JX^#[^bfunction gl(){if(!gm){return JN^`>0){eJ"169]]()JNd^!b9J3@u=0&&d^!b9J1>=JFgf}elJ@^!b9J1@uJFgjJ!5]]}elJ@^!b9J3>JFesJ!7]]}}};^Vcz,gk);^Vgm^3e@o[^t^d]=c^k;e@o^n^d]=1^U165]](cz,gk);fqJ,165]](gm^3fq[^t;fq^n;};e@o[_$_^1^Q;fq[_$^>^Q;gm=J%};}vJ\'^A$J7^7^?_J/31]],^D$_b^832^X0JV^L[^l3J&^Bb9J6^N]JW^EJ,5^\'JG^Cq=^w^#;JTs=d^"^sgj=d^!^sfwJ4ep=t^o^z[716]]()^U716^y^1_bJ0^)epJ!5^*^+e@o^aJ(^>_bJ0^)epJ!5^*^+fq^aJ+^\\6[5^\'^e_$^Z^[[282]][c^OJ<]JEy=^{647]^0J*722]][fy]={^.567],^-}JEr=@r(fy);fqJ,159]]=fr;fwJ4ftJK^q^c^!^ JD^!^ J.0-d^!^ ^_JIk;JIm=nullJE@q=[];JL^WJU=cJ?76^S76[52^^^z[159]]=JU^j]=JU;eJ"162]]=^`;if(^p]){^p](@t(^{721]],^`))}JS;J=^Y{dz=f^%^u?f^%^u():f^%;JA^"b9^&4J;^"b9^&5J8^T^$]^hif(cc>0){gn();f@q=[];};cJB;};cz=(d^"^ JD^"^ ^|^"^ ^_c@z=(d^!^ JD^!^ J.^$]-d^!^ ^_^9J-^0J*^6^.JQ^-,dat^4cz,y1:c@z};f@q[f@q[_J)]]=J%}^/JM!==0){JL[ccJ*JM>0||^{JM>0){var fv=^{726]](cc,cz,c@z,e@o);fwJ,274]](fv)JEu^rfwJ,274]](J%,ctx:fq,typJ [351]],sizJ [727]],c^vC^vThickness:fvJ,728]]})};}}^/^;^M76^5^H6[39^<^I30]JO^G^Kcz,y:c@z^F_$_^@JU:JU})};};gn();bbJ,729]](fw);^J]^(JX^#[^bfunction gn(){var fD=I(f@q,2);if(fD^We@o[_$_^1_JP164JH0^,0^m;if(T){fq[_$^>_JP164JH0^,0^m;}JSvar cc=0;cc@ufD[_J)]-3;cc+=3){eJ"733JHcc+1^,cc+1][_^R2^,cc+2][_^R3^,cc+3^m^U733JHcc+1^,cc+1][_^R2^,cc+2][_^R3^,cc+3^m};JN^`>0){eJ"169]]()JNd^!b9J3@u=0&&d^!b9J1>=JFgf}elJ@^!b9J1@uJFgjJ!5]]}elJ@^!b9J3>JFesJ!7]]}}};gm={x:fD[0J*170]],y:fD[0J*629]]};^VfD[fD[_J)]-1]^3^Vgm^3e@o[^t^d]=c^k;e@o^n^d]=1^U165JHfD[_J)]-1]^3fqJ,165]](gm^3fq[^t;fq^n;};};}vJ\'^A$J7^7^?_J/31]],^D$_b^832^X0JV^L[^l2J&^Bb9J6^N]JW^EJ,5^\'JG^Cq=^w^#;JTs=dkJ,462]][_~b976[724]J*~kJ,463]][_$_~kJ,462]][_$_~430]J*645]]~fp[ccJ*629]~p[ccJ*170]]~76[626]J*63~98]][_J)];~]();if(T){thisJW~](epJ!4]],~]],epJ,310]]~,epJ,311]]);~J*170]],fD[~dataSeriesIndex:c@l~objectType:_$_JP~;if(fp[ccJ*~];^w430]~JP163]]();e@o[_$~MathJ,195]](~J,170]],gk);~a@yointIndex:cc,x1:~[699]]||cJ?76~722]][d@p]={id:d@p,~5]J*392]],a~976[715]J*7~var d@p=cJ?76~p,f@m,f@i,fn,0,null~703]]||^{~4]J*274]]({~,JJ,JJ,JJ,~_JP163]]();fq[_$~nimationCallback:d[~JP629]]>=0?1:-1,~rce:e@o,dest:this[_~(dk){JT@o=dk[_$_~u=0){return }JE~easing@sunction:d[_~976[392]]JEz=dk~},direction:fp[cc][~@yoint:fp[cc]JOS~[699]]){thisJW97~chartType:_$_JP5~};};eJ"730~eries:c@n,point:{x:~urn c@i;};nJW976~703]]||fp[cc]JW9~||t^o~@l]JEp=c@n[_$_b~dz]=b@x+(f@m-f@w);}~_JP164]](cz,c@z)~$_JP629]],fD[cc+~[523]][cc%cJ?~inue JN typeof (~;J(_b976[~eJ"165]](~[_J)]>0){~]],animation@qase:~J)];cc++)~_JP598]][dg];va~r c@n=thisJW976~dg=0;dg@udkJW97~){gb=gd}else {if(g~3]][_J)]~478]])+0.5)@u@u0;~^{719]]~J,718]]();~_J/30]]()};~;var dz;JIf=(d~;eJ"682]~dg++){var c@l=dk[~^w738]~p[ccJ*522~)!==_$_JP29]){~MathJ,263]~;eJ"160]~@nJ,741]]~125]J*58~J*629]])~J,168]]()~hisJ,405]~eJ"720]~;var cc=0,cz,c@z~=@r(d@p);if(T){~JP674]];var ~_$_JP167]]()~J,209]]~olor:fu,border~thisJ,~olor:fn})};};~]]()};e@o[_$_~];e@oJW976~c@nJ,~J.dz-d~@u@u0JE@~e:fvJW976~J,41~@oJ,~,y1:f@p,x2:~(dkJW976~{x:cz,y:c@z~]]=function~ar c@i={sou~if(T){fq[_$~$_JP152]~]J,~}JSvar ~[_$_JP~[621]][cc~725]]@b(~$_JP7~JX717]~76[480]]~,y2:f@i}~76[478]]~=[];var ~fJRm)~76[575]]~_JP40~]]){cont~ar b@x=g~u0;JI~]]||dz>d~JX538]~cc@ufp[_~b@x;f@m=~@nJW9~se {if(d~if(dz@ud~ontinue ~]:0;f@w=~723]]+d~;var f~0){gk=~if(fz@~]](fD[~var g~false~=true~if(fp~537]]~};if(~,data~bJX~641],~@w,f@~;for(~var e~color~};ret~[_$_b~976[','$_J8674^vj=d^!J8674^ww=[];^>[405]];e^[716]](^)716^V^$J=^j^F^h5^*,ep^Ie@o^G^a^,J=^j^F^h5^*,ep^Ifq^G};for^4J@^(^/^g98]]^0$_b^l^1^Ky=^W647]];^t^%J-fy]={^6567^7@lJ%fr=@r(fy)^`[159]]=fr;fw^yftJ<^P^A^!^ J$^!^ ^u0-d^!^ 47^DgkJ(mJ.J9x=J?JAfp^O>0J/fn=^W523]][cc%^W523]]^O];e^[159]^50]^52]]=^W719J)e^[720]]){e^[720]](@t(^W721]],^W719]]))};for(;cc@ufpJ>^8f^#^e09]]?f^#^e09]]():f^#^s^"^E[^b^"^E^;J9@z=c@zJA typeof (^3])!=^Qgl();fxJ<;continue ;};cz=(d^"^ J$^"^ ^udz-d^"^ J&+0.5J*;c@z=(d^!^ J$^!^ ^u^3]-d^!^ J&+0.5J*JAft||fx){e@o[_$_^$J@^i,c@z);gm={^d^xq[_$^,_b9^2ft=J?;fx=J?;}J+e@o[^J,f@z^)J,cz,f@z)};e@o[^J^+976[J,J3)J7cc%250==0){gl()};J%d@p=^W621]][cc];^t^%J-d@p]={id:d@p,^6641^7@l^_Index:cc,x1:cz,y1:c@zJ7^M537]]!^{^M5J4||^W5J4){v^m_^LJ3,e@o);fw^eJ:fv);J9u=@r(d@p)^xw[_$_^.c@z,ctx:fq,typ^^6[351]],siz^^6[727]]J u,borderColor:fu,borderThickness:fv^f28]]})};}J7^M703^N[703]]||^M699^N[699]]){^S394]]^eJ:{chartType:J\'6[529]^_:fp[cc],dataSeries:c@n,point:{^d,direJ5^3]>=0?1:-1J n})};};gl();bb^f29]](fw);};};e^[J0)JAT){^t^%64^][J0)};^} gl(){if(!gm)^qif(^W^96[169]]()J7d^!J8478]]@u=0&&d^!^n>=0){gk=gf^pd^!^n@u0){gk=gj[^h5]]^pd^!J8478]]>0){gk=es[^h7]]}}};e@o[^J,gk);e^[J,gm^r170]],gk);e^[167]]^\'J1_^H^k8]]^\']=1^xq[^J,gk)^`[J,gm^r170]],gk)^`^:[168]]();}^z^$J@^i,c@z);fq[_$^,J@^i,c@z);gm={^d;}var c@i={source:e@o,dest:^S^Y6[39^UCallback:d^f31]],easing@sunJ5d^f1^][73^U@qase:0};return c@i;};n^r12^][588]]=^}(dkJ/e@o=dk^g75]]||^S^Y6[392^wz=dk[J\'^(J)fz@u=0)^qJ9nJ.J9w=[];^>[405^vr^ygo=[]^P^A^!^ J$^!^ ^u0-d^!^ J&)^ce=d^"^E[631^wq=^t^%645]]^xq[^k3^VJ8716]](^)716^V^$J=^j^F^h5^*,ep^Ie@o^G^a^,J=^j^F^h5^*,ep^Ifq^G};x@lalue@yresent=[];for^4J@^(^/^g98]]^0$_b^l^1J8538^vt;^W747]]=[]^Rfp^O;cc++){gt=f^#^e09]]?f^#^e09]]():f^#;^W747]][gt]=ccJA!^C){go^eJ:gt);^CJ<;};};go^g41]](q);};for^4J@^(^/^g98]]^0$_b^l^1^KtJ<J(p^yfy=^W647]];^t^%J-fy]={^6567^7@lJ%fr=@r(fy)^`[159]]=frJAgo^O>0){fn=^W523]][0];e^[159]^50]^52]]=^W719J)e^[720]]){e^[720]](@t(^W721]],^W719]]))}^RgoJ>^8go[cc]J(qJ.if(c@^&>=0){gq=fp[c@^&]}J+gq={x:dz,y:0}J7dz@ud^"^E[^b^"^E^;^Z^\\J;)!=^Qcontinue J%cz=(d^"^ J$^"^ ^udz-d^"^ 47^Dc@z=(d^!^ J$^!^ ^u^\\J;-d^!^ J&);var b@x=J2?J2:0;c@z=c@z-b@x;gp[_$_^.g^|J2=gf-c@zJAft){e@o[_$_^$J@^i^+976[163]]();fqJ>9^2ft=J?;}J+e@o[^J^+976[J,J3)J7cc%250^{^W^9J6^B76[152^=b976^<6[1^T^-[J;^)1^T^-^@9J#^\'J1_^H^k8]]^\']=1^z^$J@^i^+976^:[1^o_$^,_b9^2gp[_$_^.g^|}J"^&>=0J/d@p=^W621]][c@^&];^t^%J-d@p]={id:d@p,^6641^7@l^_Index:c@^&,x1:cz,y1:c@z}J"^&>=0&&^\\537]]!^{^\\5J4||^W5J4){v^m_^LJ3,e@o);fw^eJ:fv);markerColor=@r(d@p)^xw[_$_^.c@z,ctx:fq,typ^^6[351]],siz^^6[727]],color^?Color^?Thickness:fv^f28]]})};}J7^\\703^N[703]]||^\\699^N[699]]){^S394]]^eJ:{chartType:J\'6[531]^_:gq,dataSeries:c@n,point:{^d,direJ5^3]>=0?1:-1J n})};J7^W^9J6^B76[152^=b976^<6[1^T^-[J;^)1^T^-^@9J#^\'J1_^H^k8]]^\']=1^z^$J@^i^+976^:[1^o_$^,_b9^2};delete (^W747]]);};bb^f29]](fw);e^[J0^)J0)J%c@i={source:e@o,dest:^S^Y6[39^UCallback:d^f31]],easing@sunJ5d^f1^][73^U@qase:0};return c@i;};n^r12^][589]]=^}(dkJ/e@o=dk^g75]]||^S^Y6[392^wz=dk[J\'^(J)fz@u=0)^qJ9nJ.^>[405^ww^ygr^ygo=[]^P^A^!^ J$^!^ ^u0-d^!^ J&)^cd=^S738]]?^S738]]:^S310]]@b0.15^ce=d^"^E[631^vb=(((ep^r310]]/^X[263]](d^"^n-d^"J8J&)@b^X[263]](ge))@b0.9J*;J9q=^t^%645]];e^[716]](^)716^V^$J=^j^F^h5^*,ep^Ie@o^G^a^,J=^j^F^h5^*,ep^Ifq^G};x@lalue@yresent=[];for^4J@^(^/^g98]]^0$_b^l^1J8538^vt;^W747]]=[]^Rfp^O;cc++){gt=f^#^e09]]?f^#^e09]]():f^#;^W747]][gt]=ccJA!^C){go^eJ:gt);^CJ<;};};go^g41]](q);};for^4J@^(^/^g98]]^0$_b^l^1^KtJ<;J9y=^W647]];^t^%J-fy]={^6567^7@lJ%fr=@r(fy)^`[159]]=frJAfp^O==1J!JAgb@u1){gb=1^pgb>gdJ!J%gp=[]JAgo^O>0){fn=^W523]][cc%^W523]]^O];e^[159]^50]^52]]=^W719J)e^[720]]){e^[720]](@t(^W721]],^W719]]))J%gc=(gb>5)?J?:J?^RgoJ>^8go[cc]J(qJ.if(c@^&>=0){gq=fp[c@^&]}J+gq={x:dz,y:0}J7dz@ud^"^E[^b^"^E^;^Z^\\J;)!=^Qcontinue J%giJAdk^r638]][dz]!==0){gi=^\\J;/dk^r638]][dz]@b100}J+gi=0J%cz=(d^"^ J$^"^ ^udz-d^"^ 47^Dc@z=(d^!^ J$^!^ ^ugi-d^!^ J&);var b@x=J2?J2:0;c@z=c@z-b@x;gp[_$_^.g^|J2=gf-c@zJAft){e@o[_$_^$J@^i^+976[163]]();fqJ>9^2ft=J?;}J+e@o[^J^+976[J,J3)J7cc%250^{^W^9J6^B76[152^=b976^<6[1^T^-[J;^)1^T^-^@9J#^\'J1_^H^k8]]^\']=1^z^$J@^i^+976^:[1^o_$^,_b9^2gp[_$_^.g^|}J"^&>=0J/d@p=^W621]][c@^&];^t^%J-d@p]={id:d@p,^6641^7@l^_Index:c@^&,x1:cz,y1:c@z}J"^&>=0&&^\\537]]!^{^\\5J4||^W5J4){v^m_^LJ3,e@o);fw^eJ:fv);markerColor=@r(d@p)^xw[_$_^.c@z,ctx:fq,typ^^6[351]],siz^^6[727]],color^?Color^?Thickness:fv^f28]]})};}J7^\\703^N[703]]||^\\699^N[699]]){^S394]]^eJ:{chartType:J\'6[532]^_:gq,dataSeries:c@n,point:{^d,direJ5^3]>=0?1:-1J n})};J7^W^9J6^B76[152^=b976^<6[1^T^-[J;^)1^T^-^@9J#^\'J1_^H^k8]]^\']=1^z^$J@^i^+976^:[1^o_$^,_b9^2};delete (^W747]]);};bb^f29]](fw);e^[J0^)J0)J%c@i={source:e@o,dest:^S^Y6[39^UCallback:d^f31]],easing@sunJ5d^f1^][73^U@qase:0};return c@i;};n^r12^][590]]=^}(dkJ/e@o=dk^g75]]||^S^Y6[392^wz=dk[J\'^(J)fz@u=0)^qJ9nJ.^>[405]]^P^A^!^ J$^!^ ^u0-d^!^ J&)^cd=^S738]]?^S738]]:^S310]]@b0.15^ce=d^"^E[631^vb=(((ep^r310]]/^X[263]](d^"^n-d^"J8J&)@b^X[263]](ge))/fz@b0.9J*;e^[716]]()JAT){^t^%64^][716^V^$J=^j^F^h5^*,ep^Ie@o^Gif(T){^t^%64^]^j^F^h5^*,ep^I^t^%645]]^GJ%gw=-InfinityJ(y=Infinity;for^4J@^(^/^g98]]^0$_b^l^1J8538^v@z=0;for(var cc=0;cc@ufpJ>^8^M209]]?dz=f^#^e09]]():dz=f^#^s^"^E[^b^"^E^;^Z^M264]])!==^k1]){g@z=^M264J)g@z>gw){gw=g@zJ7g@z@ugy){gy=g@z};};};J%gx=^X[748]]@b5@b5J(v=^X[195]](^X[271]](^X[630]](ep^r311^*)@b0.25/2,2)@b^X[748]],gx);for^4J@^(^/^g98]]^0$_b^l^1^KtJ<JAfp^O==1J!JAgb@u1){gb=1^pgb>gdJ!J7fp^O>0){e^[160]]=J\'6[745];for(var cc=0;cc@ufpJ>^8^M209]]?dz=f^#^e09]]():dz=f^#^s^"^E[^b^"^E^;^Z^3])!=^Qcontinue };cz=(d^"^ J$^"^ ^udz-d^"^ J&+0.5J*;c@z=(d^!^ J$^!^ ^u^3]-d^!^ 47^Dg@z=^M264^vu=(gw===gy)?gv/2:gx+(gv-gx)/(gw-gy)@b(g@z-gy)J(z=^X[195]](^X[749]](gu/^X[748]]J*,1);var dS=gz@b2;v^m_^Le@o);fv^f27]]=dS;e^[682]J1J\'~b976[724]]^r~k^r463]][_$_~k^r462]][_$_~p[cc]^r170]]~J8163]]();e@o[_$~b976[430]]^r~n^f47]][dz]~();e^[682]~6[598]]^r152~);^a_b976[~]],ep^r310]]~,c@z);^a_b~_J8163]]();fq[_$~76[170]],gs[J\'6~J8274]]({x:cz,y:~]];dg++J/c@l=dk~[dg];var c@n=this[_~c@l];J9p=c@n[_$_~7^i,c@z);};~^M629]~(var dg=0;dg@udk[_$~]=fn;e^[16~objectType:J\'6[~],dataSeriesIndex:c~976[152]];cc++){dz=~719]]>0){e@o[J\'~[167]]()^`~[635]]){continue };~[259]]()^zb97~]]>0J/gs=gp[_$_~var ep=^tb976~:markerColor,border~[629]])};}^zb~@z;var dzJ(f=(d~]()};while(gpJ>9~x@lalue@yresent[gt]~8]])+0.5J*;var ~b976[626]][J\'6~^h4]],ep[~^f18]]();~$_J8741]];e@o[~^r311]]);~^k5]](cz~b976[538^w~$_J8726]](cc,~fp[cc]^r~]]||c@n[J\'6~^r152]]~;var cc=0,cz,c~=J\'6[29]){~;for(cc=0;cc@u~this^r~65]](gsJ>9~2]],animation~]]()}^z~c@n^r~Math[J\'6~405]][J\'~if( typeof (~@o^r~gq^r~5]][J\'6~e:fv[J\'~,data@yoint~;fq[J\'6~if(T){fq[_$~634]]||dz>d~@u@u0J(~x:cz,y:c@z}~^r2~^r7~^r5~J\'6[41~6[164]](cz~[717]](ep[~J\'6[16~976[282]][~ar fv=c@n[~J8480]]~68]]();fq[~}J+if(~{return };~[J\'6[~JAdz@ud~this[_$_~725]]@b(~]]J(~]];J9~JAT){f~=[];var ~;e@o[_$_~==0){if(~f-b@x});~function~,color:f~){gb=gd}~;J7c@~76[167]]~723]]+d~};var ~478]])~_$J@~;var g~]]JA~)@u@u0~else {~165]](~722]][~=null;~){var ~730]](~]=c@n[~gr[dz]~cz,c@z~37]]>0~ction:~6[169]~}JA~b976[~var f~74]](~629]]~=true~J@6~[_$_b~false~_b97~;if(','6[741]];bb^z51]](cz,c@z,e@o,fvJ JD,^F,fvJ 522^\\750^\\728]])^d682]]=1;va^@[6^?b^+^^^0^M^/^%cz,y1:c@z,size:dSJ2uJ6JHT){bb^z51]](cz,c@z,J!^+645^\\JD,^F,fu,fu,fv^z28]])JG^Q703^T[703]]||^Q699^T[699]]){t^LJ.^\'J#40]^W^(J$cz,y:c@z^j^ecz-^F/2,y1:c@z-^F/2,x2:cz+^F/2,y2:c@z+^F/2^l}JI^VJE^9^+^PJE)}JCc@i={source:e@o,dest:^2^S^{Callback:^g3]],easing@sJ0:^g^h714]]^{@qase:0};J1c@i;};nJ 12^h591]]=fJ0(dkJ=e@o=dkJ 575]]||^2^SJCfz=^4^]if(fz@u=0){J1J2n=^o^2J<cc=0,cz,c@zJC^n^!^ J/^!^ 725]]@b(0-d^!^ 478]]))^`^I]?t^I]:this^u0]]@b0.15@u@u0JCge=dk^*JO^3J&^b6[310]]/M^H](dk^*JOJ\'^*JJ4J(^H](ge))/fz@b0.9)@u@u0^d716]](^9^+^P16]J+_$_^$_J%^;^:^8],e^=e@o^z18]](^9^+^P17]^;^:^8],e^=J!^+^P^x^[^4^]^a^4dgJ<^Z6[282^p^_[538^B(^G==1){gb=gdJGg^yJ,gb>gd){gb=gd}JG^G>0){e@oJ 160]]=_$J?745J<gv=MathJ 271]](Ma^5ep^u1]^8])@b0.3/2,2)@bMath^z48]J<g@q=0JCgC=0;for(var J-^G;JBd^7J7^7170]J8^s^7^Y^*JO^3^|^*JO^35]^C^#JJ629]^r^DcJK^*^ J/k^*^ ^f^*^ ^<c@z=(d^!^ J/^!^ ^"976[629]]-d^!^ ^<JNv=^c26]](cc,cz,c@z,e@o)^d682]]=^c41]];bb^z51]](fvJ 170^\\629^\\392^\\JD,^F,fvJ 522^\\750^\\728]])^d682]]=1;if((Math^z49]]((g@q-cz)@b(g@q-cz)+(gC-c@z)@b(gC-c@z))@uMa^5^F,5))&&^G>(Ma^5^2]^u0]],^2]^u1]]))){continue };va^@[6^?b^+^^^0^M^/^%cz,y1:c@zJ2uJ6JHT){bb^z51]](fvJ 170^\\629]],J!^+645^\\JD,^F,fu,fu,fv^z28]])JG^Q703^T[703]]||^Q699^T[699]]){t^LJ.^\'J#39]^W^(J$cz,y:c@z^j^ecz-^F/2,y1:c@z-^F/2,x2:cz+^F/2,y2:c@z+^F/2^l};g@q=cz;gC=c@zJI^VJE^9^+^PJE)}JCc@i={source:e@o,dest:^2^S^{Callback:^g3]],easing@sJ0:^g^h714]]^{@qase:0};J1c@i;};nJ 12^h593]]=fJ0(dkJ=e@o=dkJ 575]]||^2^SJCfq=J!^+645]J<fz=^4^]if(fz@u=0){J1J2n=^o^2J<cc=0,cz,J3,gD,gEJC^n^!^ J/^!^ 725]]@b(0-d^!^ 478]]))^`^I]?t^I]:(this^u0]]@b0.015)JCge=dk^*JO^3J&^b6[310]]/M^H](dk^*JOJ\'^*JJ4J(^H](ge))@b0.7)J)J@^Ee===Infinity)^E^y}^V16^qq^z16]J+_$_^$_J%^;^:^8],e^=e@o^z18^qq^z17]^;^:^8],e^=fq^z^x^[^4^]^a^4dgJ<^Z6[282^p^_[538^B(^G>0J=gc=(gb>5)&&^c40]]?true:JFJLJ-^G;JB^QJ7^7170]J8^s^7^Y^*JO^3^|^*JO^35]^Cfp[^1===null||!fp[^1[_^k||^#b^i)!^X^#b^v])!^X^#b^}2])!^X^#b^}3^r^DcJK^*^ J/k^*^ ^f^*^ ^)p=(d^!^ J/^!^ ^"^i-d^!^ ^)i=(d^!^ J/^!^ ^"^v]-d^!^ ^<gD=(d^!^ J/^!^ ^"^}2]-d^!^ ^<gE=(d^!^ J/^!^ ^"^}3]-d^!^ ^<JN@w=(cz-gb/2)^tm=(f@w+gb)@u@u0;fn=fp[^K]?fp[^K]:^O][0J<f@o=MathJ 193]](Ma^61,(gb@b0.15)))JCb@x=f@o%2===0?0:0.5;va^@[6^?b^+^^^0^M^/^%fJ>f@p^wf@i,x3:cz,y3:gD,x4:cz,y4:gE,borderThickness:f@o,color:fn}^d160]]=fn;e@o[_$_^$J?162]]=f@o;fqJ 162]]=Ma^6f@o,4JHc@nJ JD===J#35]){e@o[_$_b^>f@iJ"^-Ma^5fJA^J9]](J"b^>Ma^6fJAJ"^-gD^J9]]();@q(e@o,f@w,Ma^5J*@m,Ma^6J*p[^1[0]@u=fp[^1[3]?^c52]]:fn,f@o,fn,gc,gcJ;JF,^c41]]JHT){fnJ6^R0]]=fnJ4b^>f@i)J4^-Ma^5fJA^A]()J4b^>Ma^6fJA)J4^-gD^A]();@q(fq,f@w,Ma^5J*@m,Ma^6J*n,0,null^.,JF);};}J,c@nJ JD===J#36]){e@o[_$_b^>f@iJ"^-gD^J9]](J"^$J?16J:f@p^J5]](J5^J9]](J"^$J?16J:gE^J5]](f@m,gE^J9^qnJ6^R0]]=fnJ4b^>f@i)J4^-gD^A](^R3]](^RJ:f@p^R5]](J5^A](^R3]](^RJ:gE^R5]](f@m,gE^A]();};}JG^Q703^T[703]]||^Q699^T[699]]){t^LJ.^\'c@nJ JD^W^(J$f@w+(f@m-f@w)/2,y:f@i^j^efJ>Ma^5f@i,gD)^wMa^6f@i,gD)^l}JI^V30^qq^zJE)}JCc@i={source:e@o,dest:^2^S^{Callback:^g3]],easing@sJ0:^g^h714]]^{@qase:0};J1c@i;};nJ 12^h594]]=fJ0(dkJ=e@o=dkJ 575]]||^2^SJCfz=^4^]if(fz@u=0){J1J2n=^o^2J<cc=0,cz,J3JC^n^!^ J/^!^ 725]]@b(0-d^!^ 478]]))^`^I]?t^I]:(this^u0]]@b0.03)JCge=dk^*JO^3J&^b6[310]]/M^H](dk^*JOJ\'^*JJ4J(^H](ge))^N][^U0.9)J)J@^Ee===Infinity){gb=gd^N][^U0.9}J,g^y}^V16]](^9^+^P16]J+_$_^$_J%^;^:^8],e^=e@o^z18]](^9^+^P17]^;^:^8],e^=J!^+^P^x^[^4^]^a^4dgJ<^Z6[282^p^_[538^B(^G>0J=gc=(gb>5)&&^c40]]?true:JFJLJ-^G;JB^QJ7^7170]J8^s^7^Y^*JO^3^|^*JO^35]^Cfp[^1===null||!fp[^1[_^k||^#b^i)!^X^#b^v^r^DcJK^*^ J/k^*^ ^f^*^ ^)p=(d^!^ J/^!^ ^"^i-d^!^ ^)i=(d^!^ J/^!^ ^"^v]-d^!^ ^<JN@w=cz-(dk^z39]][^Ugb/2)+((dkJ 619]]+dg)@bgb)^tm=f@w+gb^tpJCf@i;fn=fp[^K]?fp[^K]:^O][cc%^O][_^k];if(f@p>f@iJ=cr=f@p;f@p=f@i;f@i=cr;};va^@[6^?b^+^^^0^M^/^%fJ>f@p^wf@iJ2@o=0;@q(e@o,J5JMf@i,fn,f@o,fn,gc,gcJ;JF,^c41]]);fnJ6JHT){@q(J!^+645]],J5JMf@i,fn,0,null^.,JF)JG^Q703^T[703]]||^Q699^T[699]]){t^LJ.^\'J#54]^W^(index@oeyword:0,J$f@w+(f@m-f@w)/2,y:fp[^1[J9^1[0]?f@i:f@p^jfp[^1[J9^1[0]?-1:^efJ>Ma^5J3)^wMa^6J3)^l;t^LJ.^\'J#54]^W^(index@oeyword:1,J$f@w+(f@m-f@w)/2,y:fp[^1[J9^1[0]?f@p:f@i^jfp[^1[J9^1[0]?1:-^efJ>Ma^5J3)^wMa^6J3)^lJI};^VJE^9^+^PJE)}JCc@i={source:e@o,dest:^2^S^{Callback:^g3]],easing@sJ0:^g^h714]]^{@qase:0};J1c@i;};nJ 12^h595]]=fJ0(dkJ=e@o=dkJ 575]]||^2^SJCfz=^4^]if(fz@u=0){J1J2n=^o^2J<cc=0,f@wJMc@zJC^n^!^ J/^!^ 725]]@b(0-d^!^ 478]]))^`^I]?t^I]:Ma^5(this^u1]]@b0.15),^2]^u1]]^N][^U0.9)@u@u0JCge=dk^*JO^3J&^b6[311]]/M^H](dk^*JOJ\'^*JJ4J(^H](ge))^N][^U0.9)J)J@^Ee===Infinity){gb=gd^N][^U0.9}J,g^y}^V16]](^9^+^P16]J+_$_^$_J%^;^:^8],e^=e@o^z18]](^9^+^P17]^;^:^8],e^=J!^+^P^x^[^4^]^a^4dgJ<^Z6[282^p^_[538^B(^G>0J=gc=(gb>5)&&^c40]]?true:JF^d160]]=_$J?745];for(J-^G;JB^QJ7^7170]J8^s^7^Y^*JO^3^|^*JO^35]^Cfp[^1===null||!fp[^1[_^k||^#b^i)!^X^#b^v^r^Df@w=(d^!^ J/^!^ ^"^i-d^!^ ^)m=(d^!^ J/^!^ ^"^v]-d^!^ ^<c@JK^*^ J/k^*^ ^f^*^ ^<JN@p=(c@z-(dk^z39]][^Ugb/2)+((dkJ 619]]+dg)@bgb))^ti=f@p+gbJ)f@w>f@mJ=cr=f@w;f@w=f@m;f@m=cr;};fn=fp[^K]?fp[^K]:^O][cc%^O][_^k];@q(e@o,J5JMf@i,fn,0,null,gc^.,^c41]]);va^@[6^?b^+^^^0^M^/^%f@w,y~b976[724]]J ~kJ 463]][_$_~725]]@b(fp[cc][_$_b~ typeof (fp[cc][_$_~JJ163]]();e@o[_$~a@yointIndex:cc,x1:~^/a~6[274]]({chartType:~cc],dataSeries:c@n,~^<f@~J 462]][_$_~976[430]]J ~^99~JJ165]](cz-b@x,~J;false,false~eriesIndex:c@l,dat~:d@p,objectType:_$~cc]J 629]]~thisJ 405]~[626]]J 63~dkJ 598]][~thJ 630]](~thJ 195]](~z=^Q~],ep^u0]~);if(T){J!~],epJ 415]~](epJ 414]~478]])+0.5)@u@u0;~p^u1]]);~976[164]](cz-b@x,~21]][cc];this[_$_~r d@p=c@n[_$_JO~^R9]~]J<ft=true;if~]){continue JG~[29]){continue };~{gb=gd}J,g~fv^z27]]~fp[_^k~athJ 263]~his^z38]~)^d16~cc]J 522]~hisJ 394]~J?641],dataS~/dk^z39]~c@nJ 523]~64^h7~fp[cc]J ~);fqJ 16~]J 392]]~]]||c@n[_$_JO~_$J?617]]@b~}^d7~,data@yoint:fp[~==_$J?29]||~170]];if(dz@udk~c@n=J!97~r(var dg=0;dg@u~]],fvJ ~_^k;~722]][d@p]={id~fp=c@n[_$_JO~@u@u0JCgd=t~dg++J=c@l=~b=(((ep[_$_b97~c@n^z~;e@oJ ~1,bounds:{x1:~725]]@b(dz-dk~d^z1~5]]J ~^}0]~},direction:~$J?152]]~},color:fn})~n J2n=n~dzJCgf=(d~nullJCep=~]][c@lJ<~]](JHT){f~])!==_$_JO~76[209]]():d~@u@u0JCf@~J 31~^}1~,x2:f@m,y2:~18]]();};fo~b@u1){gb=1}~J 7~,animation~4]]||dz>dk~976[629]][~[_$J?~this[_$_b~);e@o[_$_~_$J?5~point:{x:~JJ717]~1]J<g~[480]]-dk~78]]))@bM~@u@u0;if(~fJA,f~]()};e@o[~else {if(~cc=0;cc@u~J87~723]]+d~unction~return ~}JCf~f@p,f@i~;fq[_$_~f@w,f@p~=@r(d@p~209]]?d~][_$_b9~1]>=fp[~4]](cz,~,JF,~]JC~){var ~@w,y1:~_JJ~gb>gd)~@p,gE)~cc++){~;var ~351]]~30]](~false~};if(~);if(~;};};~JO[~z=(dk~;for(~,f@m,~var f~b976','J?x2:f@m,yJ@;fn=@r(d@p)J^T){@q(J.^&645]],f@w,f@p,f@m,f@i,fn,0,nullJ=J=J=J=)};^>JY||^Y]||fp[cc^v99]]||^D){^F^u74]]^-[555^y^.^,0,point:{x:f^ [1]>=f^ [0]?f@w:f@m,y:f@p+(f@i-f@p)/2^g^ [1]>=f^ [0]?-1:1,bounds:{x1:^jJH^}J?x2:^j[195]]^}J@,J"^F^u74]]^-[555^y^.^,1,point:{x:f^ [1]>=f^ [0]?f@m:f@w,y:f@p+(f@i-f@p)/2^g^ [1]>=f^ [0]?1:-1,bounds:{x1:^jJH^}J?x2:^j[195]]^}J@,J"};};};};e@o^WJ^T){J.^&645]]^W};J<i={source:e@o,dest:^=[^{^mCallback:^z13]],easing@sunction:^z1^x[714^m@qase:0};rJGc@i;};nJ,12^x[596]]=J/(dkJ8e@o=dkJ,575]]||^=[^{J3fz=^?^fJSz@u=0)^dfq=J.^&645J3es=d^%J;74J3gj=d^"J;74J3J+ep=^=^l[JB^\'JB)};J4^(J>717]]^^^M^K^+^l[JJ^\'163]]()^k717]]^^^M^K^+^kJJ);}JZJTJI@u^?^f;dg++J8g@s=[];J<l=^?dg];J<n=thisJ%82]][c@l]J9p=^i538J3fy=^i647]];J.^&JAfy]={^/567],^5}J9r=@r(fy)^k159]]=fr;J+ftJDvar cc=0,JC,f@i;JTzJ7f=(d^"^!7J:^"^!72JF0-d^"^!4^Zvar gkJ7mJVJSp[^f>0J8fn=c^Ecc%c^E^f]^J]=fn^`0]]=fn^N]=^e19]]J^e@oJ$20]]^a20]](@t(^e21]],^e19]]))}J9xJDfor(;cc^T];cc++){dz=fp^C^u09]]?fp^C^u0JW:fp^C]J^dz@ud^%J;26]^v34]]||dz>d^%J;26]^v35]]){conJO}JS^ ==JV||!f^ [^f|J ^ [0^]|J ^ [1^]){gl();fxJDconJO;};cz=(d^%^!7J:^%^!72JFdz-d^%^!^3p=(d^"^!7J:^"^!J-^ [0]-d^"^!^3i=(d^"^!7J:^"^!J-^ [1]-d^"^!4^Zif(ft||fx){J4^(J0J#;gmJ!p};g@s=[];g@s[_$_b9^)i}^\'163]^LJ#;};ft=false;fx=false;}JR^\\](JC);g@s[_$_b9^)i}^\'165]](JC)}J^cc%250==0){gl()};JEd@p=^i621]][cc];J.^&JAd@p]={id:d@p,^/641],^5J[@yointJQcc,x1:cz,yJ?yJ@;^>537]]!==0){^>5JP||^i5JPJ8fv^SJ*i,e^s^1^;J_^)i^2b976^4976JL^<^7s^V]})};fv^SJ*p,e^s^1^;J_^)p^2b976^4976JL^<^7s^V]})};}};^>JY||^Y]||fp[cc^v99]]||^D){^F^u74]]^-[533^y^.^,0^Pp^g^ J5^ [1]?-1:1,J"^F^u74]]^-[533^y^.^,1^Pi^g^ J5^ [1]?1:-1,J"};};gl();bbJ$29]](fwJKe@o^WJ^T){J.^&645]]^W};J/ gl(JX!gm)^dgsJV^p^6J0JW}^og@s[^f-1;cc>=0;cc--){gs=g@s[cc];^\\^I^O])^k165]^I^O])^H7]]()^*^e41]]^R]()^*1^k168]]()^p^6_^(J\'^I^O])^o0;cc@ug@s[^f;cc++){gs=g@s[cc];^\\^I^O])^HJW;};J4^(J0J#^k163]^LJ#;gmJ!p};g@s=[];g@s[_$_b9^)i});}J<i={source:e@o,dest:^=[^{^mCallback:^z31]],easing@sunction:^z1^x[732^m@qase:0};rJGc@i;};nJ,12^x[597]]=J/(dkJ8e@o=dkJ,575]]||^=[^{J3fz=^?^fJSz@u=0)^dfq=J.^&645J3es=d^%J;74J3gj=d^"J;74J3J+ep=^=^l[JB^\'JB)};J4^(J>717]]^^^M^K^+^l[JJ^\'163]]()^k717]]^^^M^K^+^kJJ);}JZJTJI@u^?^f;dg++J8c@l=^?dg];J<n=thisJ%82]][c@l]J9p=^i538J3fy=^i647]];J.^&JAfy]={^/567],^5}J9r=@r(fy)^k159]]=fr;J+ftJDvar cc=0,JC,f@i;JTzJ7f=(d^"^!7J:^"^!72JF0-d^"^!4^Zvar gkJ7mJVJ7@j=[]J7@x=[]JSp[^f>0){JU=c^Ecc%c^E^f]^J]=JU^`0]]=JU^N]=^e19]]J^e@oJ$20]]^a20]](@t(^e21]],^e19]]))}JZ;cc^T];cc++){dz=fp^C^u09]]?fp^C^u0JW:fp^C]J^dz@ud^%J;26]^v34]]||dz>d^%J;26]^v35]]){conJO}JS^ ==JV||!f^ [^f|J ^ [0^]|J ^ [1^]JXcc>0){gn();g@j=[];g@x=[];};conJO;};cz=(d^%^!7J:^%^!72JFdz-d^%^!^3p=(d^"^!7J:^"^!J-^ [0]-d^"^!^3i=(d^"^!7J:^"^!J-^ [1]-d^"^!4^ZJT@p=^i621]][cc];J.^&JAd@p]={id:d@p,^/641],^5J[@yointJQcc,x1:cz,yJ?yJ@;g@j[g@j[^f]J!p};g@^0]J!i};^>537]]!==0){^>5JP||^i5JPJ8fv^SJ*p,e^s^1^;J_^)p^2b976^4976JL^<^7s^V]})}J9v^SJ*i,e^s^1^;J_^)i^2b976^4976JL^<^7s^V]})};}};^>JY||^Y]||fp[cc^v99]]||^D){^F^u74]]^-[530^y^.^,0^Pp^g^ J5^ [1]?-1:1,JU:JU});^F^u74]]^-[530^y^.^,1^Pi^g^ J5^ [1]?1:-1,JU:JU}JKgn();bbJ$29]](fwJKe@o^WJ^T){J.^&645]]^W};J/ gn(J8fD=I(g@j,2)J^^b]>0){J4^(J04]](fD[0^#0]^c^\'163]^L4]](fD[0^#0]^c);}^o0;cc@u^b]-3;cc+=3^aJ(+1^#cc+1JN^[2^#cc+2JN^[3^#cc+3]^c^\'7J(+1^#cc+1JN^[2^#cc+2JN^[3^#cc+3]^c)};}^p^6J0JW};fD=I(g@x,2);^\\](g@^0-1]J,170]],g@^0-1]^c)^o^b]-1;cc>2;cc-=3^a^q^#J1^:^#^r6^8J\\^99J2^\'7J(-1^#J1^:^#^r6^8J\\^99J2)}^H7]]()^*^e41]]^R]()^*1^p^6_^(J04]](g@^0-1]J,170]],g@^0-1]^c)^o^b]-1;cc>2;cc-=3^a^q^#J1^:^#^r6^8J\\^99J2^\'7J(-1^#J1^:^#^r6^8J\\^99J2)}^HJW^H3]](^\'167]^L8]](JK}J<i={source:e@o,dest:^=[^{^mCallback:^z31]],easing@sunction:^z1^x[732^m@qase:0};rJGc@i;JEC=J/(e@o,gI,gz,fn,ekJ]g@t,f@rJX typeof (f@r)=J&161]){f@r=1}J^!TJ8gM=Number((g@t%(2^$]))J%75]](8))J7@o=Number((g@h%(2^$]))J%75]](8))J^g@o===gM){g@t-=0.0001};}^l[JB)^*f@rJ^ek=J&556]){J4^(J\'^U^Q])^l[753]^U^Q],gzJ]g@tJ=)^J]=fn^`0J)[3]^N]=2^`7]]()^R]();}JRif(ek=J&557]J8gN=0.60;J4^(J>753]^U^Q],gzJ]g@tJ=)^l[753]^U^Q],gN@bgz,g@tJ]true)^`7]]()^J]=fn^`0J)[3]^N]=2^R]();}}^*1;e@o^W;};nJ,12^x[592]]=J/(dkJ8c@v=thisJ9z=^?^fJSz@u=0)^dc@l=^?0];J<n=thisJ%82]][c@l]J9p=^i538J3g@w=10J7@r=500;var ep=^=J6l=0J7@k=[]J6b=2J7@p=1.3J6e=(20/180)^$]J6g=6J7I={x:(^w416]]+^w414]])/2,y:(^w417]]+^w415]])/2}J6d=^e05]]=J&709]?(^j[630]](^w310]^+@b0.92)/2:(^j[630]](^w310]^+@b0.8)/2J6a=hd@b0.6J7@m=hd@bg@pJ6c=hdJ6k=0JZJTJI^T];dg++){hk+=^j[263]](fp[dg]^c)}J^hk===0){rJG};J/ g@i(JX!c@n|| !fp)^dh@j=0J6@s=0J6C=0J6@q=0JZdJI^T];dg++J8gq=fp[dg];JT@p=^i621]][dg]J6@z={id:d@p,^/641^ytJQdgJ[SeriesJQ0};g@kJ%74]](h@z)J9c={percent:null,total:nullJEe@rJV;fc=^|[698]](c@n,gq)J^^D||^t699]]){e@r={chart:^|[372]]J[Series:c@nJ[@yoint:gq,total:fcJ$01]],percent:fcJ$02]]}JEeT=^t699^X9]](e@r):^tJY?^|[704]](^tJY,gq,c@n,dg):^D?^D(e@r):^Y]?^|[704]](^Y],gq,c@n,dg):^t632^n6[632]]:_$J>20];c@v[_$_^&JAd@p]=h@z;^h10]]={x:gIJ,170]],y:gI^c};^h629^_29^B4]]=hd;^h755]]=eT;^h705]]=^e05^B6]]=^t756^n6[756]]:^e56]]?^e56]]:^t522^n6[522]]:c^Edg%c^E_$J>152]^B7]]=^t757^n6[757]]:^e57^B8]]=^t758^n6[758]]:^e58]];^h689^_89^n6[689]]:^i689^G2^_92^X2^@2^G3^_93^X3^@3^G0^_90^X0^@0^G1^_91^X1^@1^G4^_94^X4^@4]]?^i694]]:null;^h695^_95^X5^@5]]?^i695]]:^w310]]@b0.33;^h696]]= typeof (^t696]])!J&161]?^t696^@6^B9]]=dg===0?^e59]]?(^e59]]/180)^$]:0:g@k[dg-1]J$60^B9]]=(^h759]]+(2^$]))%(2^$]);^h760]]=^h759]]+((2^$]/hk)@b^j[263]](gq^c))J6E=(^h760]]+^h759]])/2;hE=(hE+(2^$]))%(2^$]);^A=hEJ^^A>(^j[748]]/2)-he&&^A@u(^j[748]]/2)+heJXh@j===0||g@k[hC]J$61]]>^A){hC=dg};h@j++;}JRif(^A>(3^$]/2)-he&&^A@u(3^$]/2)+heJXh@s===0||g@k[h@q]J$61]]>^A){h@q=dg};h@s++;}}J^hE>(^j[748]]/2)&&hE@u=(3^$]/2)){^h762J)[360]}JR^h762J)[14]};^h763]]= new bi(^|[40^x[392]],{fontSize:^h690]JM@samily:^h691]JMColor:^h689]JMStyle:^h692]JM@weight:^h693]],horizontal@zlign:_$J>360],backgroundColor:h@z[_$_~p[cc]^c~b976[724]]J,~kJ,463]][_$_~]J,170]],fD[~@b^j[748]~kJ,462]][_$_~b976[430]]J,~);if(T){fqJ,~J\\163]]();e@o[_$~76[274]]({x:cz,y:f@~^l[682]]=~],^w311]])~:c@n,index@oeyword:~({chartType:_J_76~t:fp[cc]J[Series~objectType:_$J>~x[g@x[^f~76[274]](fv)J9u~,ctx:fq,type:fv[_$_~4^Zf@~[351]],size:fv[_$_b~dataSeriesJQc@l~976[719]]>0){e@o[_$~or:fu,borderThickne~[629]],fD[cc-3][_$_~170]],fD[cc-3JN~_b9J2,fD[cc-2~=@r(d@p)J^T){fw[_~,JU:fu,borderCol~thisJ,405]]~if(fp[cc]J,~dkJ,598]][~]]:^i69~^h761]]~]];^h75~[cc]J,170]~^i699]]~@nJ,523]][~thisJ,394]~]];^h69~;}^`~](gsJ,170]~^l[159]~],^w310]~]()^k16~],^w415]~^`2]~],gsJ,629]~,point:{x:cz,y:f@~],gIJ,629]~^`8]~=^e26]~@ufpJ,152]~](gIJ,170]~s:fvJ$28]~J$30]]()~^n6[69~^e03]~78]])+0.5)@u@u0;~9J2,fD[cc+~e@oJ,165]~])!J&29]~(^w414]~]]=^t6~^l[16~){e@oJ$~fDJ,152]~J,629]]~{return JE~^i7~_$J>152]]~},direction:f~h@zJ,~c@nJ,~Math[_J_76~;fqJ,~;J4b976~]],animation~]]?gq[_J_7~JZvar cc=~J^c@n[_$_b~J(-1~cc-2JN97~@o);fw[_J_~gqJ,~]J%~]J,6~epJ,~5]JN976~]J[@yoin~dJ$~_$J>392~c@v[_J_76~(f@w,f@m),y~| typeof (f~={x:cz,y:f@~JU:fn});~4]](JC)~J,7~J,2~==_$J>~J04]~33]](fD[cc~]]=_J_76~](cc,cz,f@~fw=[];var ~[_$J>~72JFf~this[_$_~function~J>16~cc-1][_$~76[629]]~]];var ~e@o[_$_~[0]@u=f~;var h~;var g~){var ~;var f~23]]+d~J\\6~var c@~,false~_J\\~1:f@p,~2:f@i}~722]][~716]](~cz,f@p~=true;~};var ~5]]@b(~eturn ~[630]]~g=0;dg~718]](~);};};~[727]]~],font~][_$_b~tinue ~37]]>0~Index:~else {~J^f~var d~color~=null~9]]()~){if(~703]]~;for(~,data~b976[~,g@h,~;if(~$_b9','JJ[694]],max@width:^U[695]],max@xeight:^U[696]]?^U[690]]@b5:^U[690]]@b1.5,text:^U[755]],padding:0,text@qaseline:^t[9]})^k^ 708]]JPJ$I^xh@x^xhD^{for(dg=0;dg@u^3;dg++^r@zJ2(hC+dg)%^3]J(j>1&&^+>(^H^\'_JJ^gM^7]/2)+heJ3hI@u=h@j/2&& !hD){^9^Z14];hI++;^s^9^Z360];hD^|};};hD^{for(dg=0;dg@u^3;dg++^r@zJ2(h@q+dg)%^3]J(s>1&&^+>(3@b^H^\'_JJ^g3@bM^7]/2)+heJ3h@x@u=h@s/2&& !hD){^9^Z360];h@x++;^s^9^Z14];hD^|J:^]i(^#7^4392^@159]^Z13]^M[160]^Z111J+e@v=16^M[427]^Z764]^M[765]^Z193J+cc=0,dg=0;f^"976^\\^&if(!^U[755]]^I^p^ J*=^p^ ^qJ#p^C^!360]^up=^L705]]!^G?^a^ J1+g@w):-^p^ J1/2^sJ=p=^L705]]!^G?g@w:-^p^ J1/2}^k^ J%=ip^k^ 433]](true)^k^ J&=ip^k^ J\'=^p^ ^q;^Q76[705]]!^G^um=^U[10^TJ%hd^/JI^+)J#o=^U[10]]^F+hd^/7]](^+^;0]]=^U[756^@162]]=^U[757]J<e@o^Y20]]){e@o^Y20]](@t(^U[758]],^U[757]]))}^M[163]](^;4]](im,io^;5]](^p^ J4,^p^ J/^;5]](^p^ J%(^pb9^!360]?-g@w:g@w),^p^ J/^;9]]JP^M[765]^Z768];}^P@v(dm^#7^4392^@60JL^E],ep[^t^=6[J1^?])^M[1JR=^K467^@649]](^E],ep[^t^=6[J1^?])J$nJ20]^YJR+(2@bM^7]@bdm)^R0;^f^)J8p=cc===0?^.JR:hmJ$m=hp+(^.60]]-^.JR)J$o^{if(hm>hn){hm=hn;ho^|J7fn=fp^>]]?fp^>]]:^L523J;%^L523^T152]]]J6m>hp){C(c@vJ)7^4392]],g@^0],^.54]],fn,^L351]],hp,hm,^L741]])}J6o)^n;}^PS(dm^#7^4392^@60JL^E],ep[^t^=6[J1^?])^M[1JR=^K467^@649]](^E],ep[^t^=6[J1^?])^R0;^f^)J8p=^.JRJ$m=^.60]]J6m>hp^rv=(JN0.07^/JI^.61]]))J7gr=(JN0.07^/7]](^.61]]))J$u^{if(fp[cc]^Y69]]J3^H2^$6[10^TJ&(gI^`J%hv))>0.J,001||^H2^$6[10]]^F-(^2+gr))>0.J,001){g@^0]^`J4^-+hv@bdm;g@^0]^F=^2+gr@bdm;hu^|^lf(^H2^$6[10^TJ&gI^`J4)>0||^H2^$6[10]]^F-^2)>0){g@^0]^`J4^-+hv@b(1-dm);g@^0]^F=^2+gr@b(1-dm);hu^|}J6u^rt={};ht^`567]]=c@n;ht^`64JQ^L538J;];ht^`524]]=cc;^K460^T770]]([ht]);}J7fn=fp^>]]?fp^>]]:^L523J;%^L523^T152]]];C(c@vJ)7^4392]],g@^0],^.54]],fn,^L351]],hp,hm,^L741]]);};};hi()^P@y(ef,hs^rq={x1^w^ J4,y1^w^ J*eJ>^ ^q,x2^w^ J%eJ>^ J1,y2^w^ J\'eJ>^ ^q}J$r={x1^v^ J4,y1^v^ J*J-^ ^q,x2^v^ J%J-^ J1,y2^v^ J\'J-^ ^q}J6q^X16]]@uhr^X14]]-g@w||hq^X14]]>hr^X16]]+g@w||hq^X15]]>hr^X17]]+g@w||hq^X17]]@uhr^X15]]-g@w^bfalse^ctrue^P@l(ef,hs^rz^xhq={y^w^ J/,y1^w^ J*eJ>^ ^q,y2^w^ J\'eJ>^ ^q}J$r={y^v^ J/,y1^v^ J*J-^ ^q,y2^v^ J\'J-^ ^q}J6r^F>hq^F){hz=hr^X15]]-hq^XJS^shz=hq^X15]]-hr^XJS^chz^PT(hw^rxJ5^R1;^f^)hx=(hw+cc+g@k[_^*_$_^[;ifJ9hx^A!==J.^A){hxJ5;break ^W(^z^Y55]])&&(hx!==hw)&&((g@l(^z,J.])@u0)||(^Vb9^!14]?^zJG^ J/>=^V^ J/:^zJG^ J/@u=^V^ J/)))^nelse {hxJ5}};^chx^P@n(hw^ryJ5^R1;^f^)hy=(hw-cc+g@k[_^*_$_^[;ifJ9hy^A!==J.^A){hyJ5;break ^W(J ^Y55]])&&J9hy^A===J.^A)&&(hy!==hw)&&((g@l(J ,J.])@u0)||(^Vb9^!14]?J JG^ J/@u=^V^ J/:J JG^ J/>=^V^ J/)))^nelse {hyJ5}};^chy;}^]j(ir,b@x){b@x=b@x||0J#q^mx=^2-JA1J#w=^2+JA1J0r>=0&&ir@u^3^r@zJ2irJ<(b@x@u0&&^p^ J/@uix)||(b@x>0&&^p^ J/>iw)^b0}J#@t=b@x;{J=t^mm^mo^mu^mv=0J0@t@u0J3^p^ 6^O^ ^q>ix&&^p^ 6^O^ ^i@t@uixJMt= -(ix^a^ 6^O^ ^i@t))}^lf(^p^ ^J^ ^q@uix&&^p^ ^J^ ^i@t>iwJMt=(^p^ ^J^ ^i@t)-iw}}J#@z=^p^ J\'i@tJ#y^C^!14]){iy^-+^D^8[27^%JJ^hz-^2JT^ly^--^D^8[27^%JJ^hz-^2JT};im^-+hd^/JI^+);io=^2+hd^/7]](^+);it=^D^8[27JLiy-im,2)+^H27JLi@z-ioJT;iv=^H77JLhd/g@m);iu=^H77JL(JAg@m+JNhd-it@bit)/(2@bJNg@m))J0u@uivJMt=i@z-^p^ J/^l@t=0};}J=@x=g@n(ir)J$S=gT(ir)J#E,i@s,isJ#@j^mD=0J0@t@u0JMs=^pb9^!14]?i@x:hS;iq=i@tJ0@s!=J5^u@o=-i@tJ#s=(^p^ 6^O^ ^q)-(^S^ J\'^S^ ^q)J0s-i@o@uhbJMj= -i@o;hl++;iDJOi@s,i@jJ@+iD^(>+i@j^(J3is>hb){iq= -(is-hb)^lq= -(i@o-(iD-i@j))}J:^Wi@t>0JMs=^pb9^!14]?hS:i@x;iq=i@tJ0@s!=J5^u@o=i@tJ#s=(^S^ J*^S^ ^o^a^ ^J^ ^q)J0s-i@o@uhbJMj=i@o;hl++;iDJOi@s,i@jJ@+iD^(@u+i@j^(J3is>hb){iq=is-hb^lq=i@o-(i@j-iD)}J:;}}J0q^u@q=^p^ J\'iqJ#z^C^!14]){iz^-+^D^8[27^%JJ^hq-^2JT^lz^--^D^8[27^%JJ^hq-^2JT};if(^+>(^H^\'_JJ^gM^7]/2)+he^u@h=(ir-J"^*_$_^[J#IJ2i@h]J#CJ2(ir+J"^*_$_^[];^Q^!J!IJ)^!14]&&iz>iIJG^ 1^_IJG^ J&15^s^Q^!14]&&iCJ)^!J!z@uiCJG^ 1^_JC^ J%15}}^W^+>(3@b^H^\'_JJ^g3@bM^7]/2)+he^u@h=(ir-J"^*_$_^[J#IJ2i@h]J#CJ2(ir+J"^*_$_^[];^Q^!14]&&iIJ)^!J!z@uiIJG^ 1^_IJG^ J%15^s^Q^!J!CJ)^!14]&&iz>iCJG^ 1^_JC^ J&15}};}}^k^ J/=i@q^k^ J4=iz;^6]=^H773]]((^p^ J*^2),(^p^ J&gI^`J4));};^ciq;}^]f(^#7^4392^@159]^Z111]^M[160]^Z111J+e@v=16^M[774]]=e@v+^t[775]^M[427]^Z764J+cc=0,dg^xh@v=0JBdg=0;dg@u10&&(dg@u1||h@v>0);dg++){hd-=h@v;h@v=0;if(^L705]]!^G){g@m=JNg@p;f^"976^\\^&^p^ J4^-+g@m^/JI^+)^k^ J/=^2+g@m^/7]](^+);^6]=^+;^U[754]]=hd;}^yJD;f^"976^\\^&J8S=gT(cc)J6S==J5^Ih@tJ2cc];h@rJ2hS]^yy=0;h@y=gJ?JD)-hbJ(y@u0^rM^xhN=0JBvar dh=0;dh@u^3;dh++J3dh===cc^IifJ9dh^A!==^9]^IifJ9dh]JG^ ^}^p^ J/){hM++^shN++};}^yp=(h@y)/(hM+hN||1)@b(hN)^yk=-1@b(h@y-h@p)^yo^xh@h^C^!14]JKoJOcc,h@pJUk=-1@b(h@y-h@oJUhJOhS,h@kJ@+h@h^(@u+h@k^(&&+h@o^(@u=+h@p^(){hj(cc,-(h@k-h@h))^jh@oJOhS,h@pJUk=-1@b(h@y-h@oJUhJOcc,h@kJ@+h@h^(@u+h@k^(&&+h@o^(@u=+h@p^(){hj(hS,-(h@k-h@h))J:;^jf^"976^\\^&g@m=^L35JQ==^t[556]?JN0.7:JN0.8J7ed^-+JA(^H76JI(^+)))J7ee=^2+JA(^H767]]((^+)))^k^ J4=ed^k^ J/=ee;}};f^"976^\\+JKzJ2cc]^yw=^p^ 708]]()J(w^`31JQ==0||h@w^`J1===0^IJ=a^xh@i^C^!14]){ia=ep^X16]]^a^ J%^p^ J1+g@w);ia@bJE^la=^E]^a^ J&^p^ J1-g@w)}J0a>0J3M^:^e^ 6^O^ ^q-^2)@uhd||M^:^e^ ^J^ ^q-^2)@uhdJKi=ia/M^:](^H76JI^6]))J(i>9JKi=h@i@b0.3}J(i>h@vJKv=h@i^j}}J#c^mb=0;if(^6]>0&&^6]@uM^7]){ic=ep^XJS^a^ ^J^ ^q+5);ic@bJE^lc=ep^X15]]^a^ 6^O^ ^q-5)}J0c>0J3M^:^e^ J&gI^`J4)@uhd){ib=ic/M^:](^H767]](^6]))J0b>9){ib=ib@b0.3}J0b>h@vJKv=ib^j}^s};};^]J?m,ii,ih^ug=[]J#j=0^Rii;true;cc=(cc+1+^3)%^3){ig^`274]]J9cc]J@cc===ih)^n;};ig^`54JL^dik,il^bik^F-il^F})JBcc=0;cc@uig[_$^)J=e=ig[cc]J0j@uh@m){ij+=ieJG^ 311]];ieJG^ 776]^Z20];ie^Y55]^Z20];ieJG^ 708]]JPelse ^n;};}J8@n=-1J$T=-1^ym=0JBvar dh=0;dh@u^3;dh++JKtJ2dhJ<!h@t^Y55]]^IJ8x=gT(dh)J6x==J5^IJ8@r=^z;h@y=0;h@y=gJ?JD)J(y@u0&&g@y(h@JD)J3h@n@u0JKn=dh}J6x!==h@n){hT=hx};h@m+= -h@y^Wh@m>0){hJ?m,h@n,hTJUnJEhTJEh@m=0;}};}J(m>0){hJ?m,h@n,hT)J:^N[51JQ^denJ3^K398]]^b}J7cc=en^`644]J+gq=en^`641]J+c@n=thisJ7d@p=^L621J;J<gq^Y69]]){gq^Y69]]=false^sgq^Y69]]=true};if(^L538^T152]]>1){^K509^T60JI0,g@r^^dm){gS(dm);hhJP)^c;};g@i();hf();^N[40JQtrue;^N[509^T60JI0,^N[400]]?^N[600]]:0^^dm){g@v(dm);hhJP^^){^K401]]^{^K509^T60JI0,^K400]]?g@r:0^^dm){gS(dm);hhJP);});^]h(){c@vJ)7^4517^T47JI);^12]]){^12^T563JH(^K562^T777]^B&&^K562^T778]^B)){^K562^T433]]()}};^14]]){for(var cc=0;cc@u^K564]][_$^)var dl=^K564J;J<dl^`563JH(dl^Y77]^B&&dl^Y78]^B)){dl^X33]]()};}};^15]]){^15^T563JH(^K565^T777]^B&&^K565^T778]^B)){^K565^T433]]()}};}};n^`125^T512]]J5;n^`125^T779]]=(^d^b^,0JH^,1JH^,2JH^,3JH^,4JH^diM){^,5]](iM,1000/60)}})();n^`125^T513]]=(^d^b^,6JH^,7JH^,8JH^,9JHwindow^Y90JHclearTimeout})();function @l(f@w,f@p,f@m,f@i,nvJ3 typeof (nv)===^t[161]){nv=0}^5JQnv^52JFw^53JFp^54JFm^55JFi^56]]=^N[791]];^N[7~b976[763^T~76[762]]===^t[~or(cc=0;^f_b~){var e@o=c@vJ)~63]](g@k[cc]J)7~1]](g@m,2)-MathJG~+^r@z=g@k[cc];~748]]/2)-he&&h@z[_$~^`275]](hg)~_^[;cc++){~$_^[)%g@k[~^U[761]]~window^Y8~=gI^`170]]~g@k[cc]^Y~@b^H76~k[cc]^`10]~if(^K56~gI^F~fp[_$_^[~6[405^T~;^N[79~^U[772]~ath^Y48]~9]](Math[^t~^U[762]~ath^`263]~)^M[16~[392]];e@oJ)~[415]],epJ)7~[cc]^`522~,ep^`311]~]]^M[~]^Y62]]~]===^t[10]~=0;^Q~^H74~ep^X14]~^`629]]~==^t[709]~Math^`~){continue };~629]]+^p~c@v^`~c@n^`~;e@o[^t~this[^t~29]]-^p~;}function g~if(^pb9~JBvar cc=~g@k[i@s]JG~]]^`~^pb976~J.][_$_~;^lf(~^`4~^`7~]=^t[~JJ[152]]~[152]];cc+~function h~,^d~70]]){iz=i~[^t[~-(^p~){return ~};return ~function(~](^p~cc@ufp[_$~[761]]@u(~[27JLi@~^q+i~};^s~;^p~^si~^xi~{break }~^q)~h@zJG~311]]/2~){J8~}else {~_$_JJ~){J=~:J-~:eJ>~=0J7~J$@~g@k[hx]~=false;~=true;}~J/@u~g@k[hy]~360]&&i~1+g@k[_~J7i~J7h~J4+~J4-~J/+~J6@~JGb9~J/-~]J7~000000~hsJG~g@k[hw~629]]~;if(i~310]]~=g@k[~){if(~170]]~=null~;if(h~;var ~var h~(g@k[~};};}~]][cc~];if(~var i~fJG~@l(h@~);if(~g@m@b~;for(~CJG~t,h@r~= -1;~]]=f@~[_$_~]]||~6]](~b976~){h@~1]](~){i@~hd@b~=hj(~();}~1]]=~59]]~17]]~,2))~);h@','97^97^;JA8^97^;JA9^9791]];}@l[^l^M6[800]^TN,h@w){if^I9]){^@6]]+=h@w^P^q^$113]){^@7]]+=h@w^P^q^$J+{^@8]]+=h@w^C}else^$J@{^@9]]+=h@w^C}}JF@l[^l^M6[801]^TN,h@w){if^I9]){^@6]^31]]}else^$113]){^@7]^31]]}else^$J+{^@8]^30]]}else^$J@{^@9]^30]]}}JF@l[^l^M6[568]^N^o{x1:^@2]]+^@8]],y1:^@3]]+^@6]],x2:^@4]]-^@9]],y2:^@5]]-^@7]]^r(^@4]]-^@2]])-^@9]]-^@8]],h^y(^@5]]-^@3]])-^@7]]-^@6]]}};@l[^l^M6[476]^N^@6^97^;JA7^97^;JA8^97^;JA9^9791]];};^cbi(e@o,cD){bi^b127^V1J:[^l^?J-02],cD);^DJ2=e@o;^B03]]J,;^B04]]^u^B05]]=@h(^D00]],t^&,^K296]]);}@s(bi,m);bi[^l^M^}^T@k){if(i@k){^g^ 716J8}^mv=^g^ 774]];^g^ 427^9427^ngr=0;^8803]]){^K^z^DJ2)};^g^ 68J5^K170]],^K629]]+gr);^8427]^Q764]){gr=-^B05J;};^g^ 774^9806J8;^g^ 80J4Math^b748]]/180@b^B07]])^mr=0J#iS=t^)^my^uif((^K728]]>0&&^K750]])||^K4J=){^g^ 15J40,gr,t^%,t^(,^B09]],^K728]],^K4J=,^K750]])};^g^ 159^9810]];for(J?cc=0;cc@u^B04^V811]]^E;cc++J9y=^B04^V811]][cc];^8J6^Q14]J9r=t^%-i@y^C-t^)^!976^:[J+{i@r=t^)^!^|7]^*i@r=(t^%-t^)@b2)/2-i@y^C/2+t^)JF^g^ 812]](i@y^bJ$,i@r,iS);iS+=i@y^P]];};^g^ 77J<i@vJ7i@k){^g^ 730J8};^.]^Y13]^TT){^KJ$=iT;^B03]]J,;^B04]]^u^.]^b708]^Nif(^\']==J\'){throw (^l[815])};^B16]](^DJ2);^B03]]=J0;^o{J t^%,h^yt^(};^.]^Y17]^TT,cT,i@n){iT=String(iT);i@n=i@n||J0J7!iT){^o{J>:^l[20]^r0}}^sa=0,i@m=0,i@w=iT^E-1,e@p=Infinity;^g^ 774^9806J8;while(i@m@u=i@w){e@p=Math^b17J5(i@m+i@w)/2)^mi=iT^Y1J40,e@p+1);ja=^g^ ^zi@i)^CJ7ja@ucTJ9m=e@p+1^pif(ja>cTJ9w=e@p-1^pbreak }};J%ja>cT&&i@i^E>1J9i=i@i^Y1J40,i@i^E-1);ja=^g^ ^zi@i)^C;}^mlJ,J7i@i^E===iT^E||iT[i@i^E^Q301]J9l=J0J%i@l^ti@p=i@i[^\\6]](^l[301])J7i@p^E>1J9p^b259J8};i@i=i@p^b281]](^l[301]);ja=^g^ ^zi@i)^C;};^o{J>:i@i^rja};^.]^Y16]]=^cbo(^tiT= new String(bn(String(^KJ$))^wn@z=[]^mv=^g^ 774^ncS=0J#cT=0;^g^ 774^9806J8;while(iT^E>0^te@m=^\']-t^)@b2^se=^B19]]-t^)@b2^my=^B17]](iT,e@m,J0);i@y^P^9805]];n@z[^\\J5i@y);cT=^+](cT,i@y^C);cS+=i@y^P]];iT=bn(iT^b157]](i@y^bJ$^E,iT^E))J7je&&cS>je^ti@y=n@z^b259J8;cS-=i@y^P]];};};^B0J<{lines:n@z^rcT,h^ycS};t^%=cT+t^)@b2;t^(=cS+t^)@b2;^g^ 77J<i@v;^.]^Y06]^N^o@o(^l[20],this,null)};^cbl(kr,cD){bl^b127^V1J:[^l^?J-20],cD,kr^b378]]);^"=kr;^K1]]=kr^b1]];^DJ2=^"^b3J2J7^d^D72^V298]])=^H){t^&=^"^b64J4t^&)};t^%J\',t^(^u^K^^null,y1^vx2^vy2J/};}@s(bl,m);bl[^l^M^}^Nif(!^KJ$){^o}^sb=(!^K563]]?^":^"^Z05]])^sd=jb^b517^V56J4^wfT=jd^Z14^n^05^ne@s^he^hc=2^sf=^"^Z86]]&&^"^Z85]]&&^KJ3^G?22:0^sgJ#iN;^8J3^G||^KJ3]^1if(^\'^]^\']=jd^C-jc@b2-jf@b(^gb976^:[10]?2:1)}JCjd^P^x5-^D55J&;e@s=0;^!^j^*^8J6^QJD||^gb976^:[J@{if(^\'^]^\']=jd^PJ&@b2}JCjd^CJE5-^D55J&;^!^|7]^*if(^\'^]^\']=jd^C-jc@b2}JCjd^P^x5-jc@b2;}}}J%!^B21]]){je=^2](je,^+](t^&@b1.5,t^&+t^)@b2.5))}J#ff= new bi(^DJ2,{fontJ.t^&J(@samily:^D0^iC^<6[81^iStyle:^K294]]J(@w^>76[296]],horizonta^k^KJ6],vertica^k^KJ3],borderC^<6[750]],borderThickness:^K728]],backgroundC^<6[4J=J*J ^\']J*x^yje,corner@radius:^B09]]J"^KJ$,padding:t^),J>@qaseline:^_})^sh=ff^b^z);^8J3^G||^KJ3]^1^8J3^G){^05J);iN=^_;^!^|8]]^1^07J&-jh^P]];iN^[13];}};^8J6^QJ+^64J)^!^|7]^*fT=jd^Z14]]+jd^b310]^-0J;^!976^:[J@^66J&-jh^C-jfJFjg=^KJ6];t^%=jh^C;t^(=jh^P]];^!^j^*^8J6^QJ+^64J);^07J&-(^\'^-0J;);e@s= -90;iN=^l[JD;t^%=jh^P]];t^(=jh^C;^!976^:[J@^66J&;^05J)+(^\'^-0J;);e@s=90;iN^[4];t^%=jh^P]];t^(=jh^C;^!^|7]^*f@l=jb^Z15]]+(jb^P]^-1J;);fT=jb^Z14]]+(jb^b310]^-0J;);iN^[0];t^%=jh^C;t^(=jh^P]];JFjg^[0];}};ff^b170]]=fT;ff^b629]]=f@l;ff^Y07]]=e@s;ff^bJ6]=jg;ff^Z33]](true);jb^b517^V800]](iN,{J t^%+^IJD||iN==^[4]?^D55J):0),h^yt^(+^I9]||iN==^[13]?^D55J):0)});^K^^fT,y1:f@l,x2:fT+t^%,y2:f@l+t^(};^g^ 427]]=^_;};^cbh(kr,cD){bh^b127^V1J:[^l^?J-22],cD,kr^b378]]);^"=kr;^K1]]=kr^b1]];^DJ2=^"^b3J2J7^d^D72^V298]])=^H){t^&=^"^b64J4t^&)};t^%J\',t^(^u^K^^null,y1^vx2^vy2J/};}@s(bh,m);bh[^l^M6[433]]=bl[^l^M6[433]];^c@w(kr,cD,c@j){@w^b127^V1J:[^l^?J-23],cD,c@j);^"=kr;^K1]]=kr^b1]];^DJ2=^"^b3J2;^K645]]=^"^Z30^V645]];^K646]]=[];t^%=0,t^(=0,^B24]]J\',^K5J==[];^K^^null,y1^vx2^vy2J/J%^d^D72^V298]])=^H){t^&=^"^b64J4t^&)};^B25]]=@h(^D00]],t^&,^K296]]);^BJ:=t^&;}@s(@w,m);@w[^l^M^}^NJ?jb=(!^K563]]?^":^"^Z05]]^weD=jb^b517^V56J4^wiN^uJ?f@l=0J#fT=0J#e@m^he^hl=5^sm=[]^sx=[];^8J3^G||^KJ3]^1^B2J<^l[26];iN=^KJ3];e@m=^\'^e^\']:eD^CJE7JC^B19JBJ\'?^B19]]:eD^P^x5;^!^j^*^B2J<^l[712];iN=^KJ6];e@m=^\'^e^\']:eD^CJE5JC^B19JBJ\'?^B19]]:eD^P^x7;}};for(J?cc=0;cc@u^K5J=^E;cc++^tc@n=^K5J=[cc];if^/]!==^l[556]&&^O351JB=^l[557]&&^O351JB=^l[558]^tjt=^O827^A827]]:^/^F5]|^,^F6]|^,^F7]|^,^Q539]|^,^Q540])&&^O828^A828]]:w^Y29]]^/])^sp=^O830^A830]]:^B31]]?^B31]]({cJI:^",legend:^D72]],^a:c@n^XJ/}):^O520^nfu=^O832^A832]^L[833^A833]^L[JGJJJ#dS=(!^O537]]&&^/^F5]|^,^F6]|^,^F7]))?0:^B25^x6^sr=^O834^A834]^L[835^njs=^O836^A836]^L[837]]?^+](1,^7](dSJE2)):0^sq=^OJGJJ;jp=^"^b70J5jp,^O538]JJ,c@n,cc^wd@i={^{TJMjt,^{J!fuJ"jp,J>@qlock^vcJITJM^O351]],^{J.dS,lineJ!^OJGJJ,^aIndex:^O524]]^XJ1J/^JJ!jr^JThickness:js};jm[^\\J5d@i);^pfor(J?ir=0;ir@u^O538]]^E;ir++^tgq=^O538]][ir]^st=gq^Y27]^R[827]^L[827^A827]]:w^Y29]]^/])^sp=gq^Y30]^R[830]^L[830^A830]]:^B31]]?^B31]]({cJI:^",legend:^D72]],^a:c@n^X:gq}):gq^b520]^R[520]]:^l[838]+(ir+1^wfu=gq^Y32]^R[832]^L[832^A832]]:gq^b522]^R[522]^L[522^A522]^L[JG][ir%^OJG]^E]J#dS=^B25^x6^sr=gq^Y34]^R[834]^L[834^A834]]:gq^Y35]^R[835]^L[835^njs=gq^Y36]^R[836]^L[836^A836]]:gq^Y37]]||^O837]]?^+](1,^7](dSJE2)):0;jp=^"^b70J5jp,gq,c@n,ir^wd@i={^{TJMjt,^{J!fuJ"jp,J>@qlock^vcJITJM^O351]],^{J.dS,^aIndex:cc^XIndex:ir^JJ!jr^JThickness:jsJ%gq^b566]]||(^O566]]&&gq^b566JB=J0)){jm[^\\J5d@i)};}};d@i^u};^8839]]==J,){jm^Y40J8J%jm^E>0^tjuJ\'^sw^hy^hi=0;^8841]^`^8842]^`jy=^2](^B41]],^B42]],JL^pjy=^2](^B41]],JL}^!J-42]^`jy=^2](^B42]],JL^pjy=e@m}};dS=(dS===0?^B25^x6:dS);jy=jy-(dS+^B^f);for(J?cc=0;cc@ujm^E;cc++^td@i=jm[cc];if^4^F5]^#^F7]^#^5{jy=jy-^=^UJ%je@u=0||^dje)=^H||jy@u=0||^djy)=^H){continue };^8824]^Q26]){^W[JK]= new bi(^DJ2,{x:0,y:0J*J jyJ*x^>76[844]]?je:^B25]],angle:0J"^W[J$,horizonta^k^l[JDJ(J.t^&J(@samily:^D0^i@w^>76[296]]J(C^<6[81^iStyle:^K294]],J>@qaseline:^_});^W[^S6[^z);^8841]^`^W[^S6[310^9841]]-(dS+^B^f+(^4^F5]^#^F7]^#^5?^=^U:0))J%!ju||ju^C+^7](^W[JK]^C+^B^f+dS+(ju^C===0?0:(^BJ:))+(^4^F5]^#^F7]^#^5?^=^U:0))>JL{ju={items:[]^r0};jx[^\\J5ju);t^(+=ji;ji=0;};ji=^+](ji,^W[^S6[311]]);^W[^S6[170]]=ju^C;^W[^S6[629]]=0;ju^C+=^7](^W[JK]^C+^B^f+dS+(ju^C===0?0:^BJ:)+(^4^F5]^#^F7]^#^5?^=^U:0));ju^b646^V27J5d@i);t^%=^+](ju^C,t^%);^p^W[JK]= new bi(^DJ2,{x:0,y:0J*J jyJ*x^>76[84J<=J,?je:t^&@b1.5,angle:0J"^W[J$,horizonta^k^l[JDJ(J.t^&J(@samily:^D0^i@w^y^g~b976[392^V~}else {if(^gb~^D79]]~||^W[688]~ {if^I~his^C~his^b298]]~^B14]~his^P]]~his^b357]]~^Q10]){~Math^b195]~|^O351]~]/2-jh^b31~};bi^b125]~(^O351]~f@l=jd^Z1~==^[13]){~Math^b630]~]-=h@w^b31~(^W[688]~^F6])~{fT=jd^Z1~Math^b193]~if(^K~]]=^K~[777]]===^l~91]];^gb97~olor:^gb97~2@b(^gb976~eight:^gb9~[20J5this,_$_b~^K79~]]?^O~^K8~^b310]]~^K3~^b152]]~^Q52~^Q9]~=^[61]~(iN===^l[~,^{@qorder~this^b~]:c@n[^l~[125]][_$_b97~]=function(){~c@n^b~^b311~]===^l[~]?gq[^l~JK][_$_b97~]=function(i~[825^x1)~]]^b~d@i[^l~,data@yoint~^b8~^b4~=^l[1~^l[27~]==J\'){~438]]={x1:~^l[9]~]!=J\'){~dataSeries~[^l[~function ~ typeof (~]!=J\'?~26^x1~this[_$_~=0^s~0]]J(~^|8]~l@zlign:~_$_b976~J#i@~]]J#~return ~}else {~]]}else~,J ~J#j~){J?~J\';~J/,~)J#~]]JE~eight:~70J4~marker~976[77~6[433]~width:~Color:~,J>:~;J?~776]]~}J7~]]-jc~=null~,font~]]+jc~,max@~JD)~=true~976[8~Size:~:null~false~Index~92]]~778]~8]](~4]](~777]~;if(~]]()~){i@~26]]~]]/2~4]]=~67]]~text~var ~14])~6[79~]]!=~;je=~360]~@b0.~}}};~523]~351]~hart~][0]~843]~e@m)~ype:','b976[296]],fontColor:^P810]],fontStyle:^P294]],text@qaseline:^c9]})^h^ 708^l^P841]]!=^z){^q^ ^y=^P841]]-(dS+^P826]]^|+((^S688]^N5]^/^N7]^/^N6])?2@b(^+^|):0))^x^,@u=je){ju={items:[],width:0};jx^a274]](ju);^fu=jx[jw];jw=(jw+1)%jx^M;};^,+^e^ 311]]^h^ ^{=ju^a^y^h^ 629]]=0;ju^a^y+^U6[193]](^q^ ^y+^P826]]^|+dS+(ju^a^y===0?0:^P826]])+((^S688]^N5]^/^N7]^/^N6])?2@b(^+^|):0));ju^]46^V274]](d@i);^)^U6[19J)ju^a^y,^));};^x^P844]]===false){^,=jx^M@b(^+)}^}{^,+=ji};^,=M^C](je,^,);^)=M^C](e@m,^));};^@78^T[9]){^@77]]=^O){^5^i^@77^T[14]){fT=eD^W6]]-^)^r^5^\\6[^y/2-^)/2}};f@l=eD^W5]]^k^@78^T[10]){^@77]]=^O){^5^i^@77^T[14]){fT=eD^W6]]-^)^r^5^\\6[^y/2-^)/2}};f@l=eD^W5]^\\6[311]]/2-^,/2^k^@78^T[113]){^@77]]=^O){^5^i^@77^T[14]){fT=eD^W6]]-^)^r^5^\\6[^y/2-^)/2}};f@l=eD^W7]]-^,;}}}^I46]]=jm^o cc=0;cc@u^P646]]^M;cc++^ud@i=jm[cc];^S647]]=++^#^v^A519]];^#^v^AJ+^8]]={id:^S647]],objectType:^c845],legendItem^!Index:^S846]],data@yointIndex:^S644]]};}^tv=0^o cc=0;cc@ujx^M;cc++^uju=jx[^nji=0^o jk=0;jk@uju^]46]]^M;jk++^ud@i=ju^]46]][jk]^tn^e^ ^{+fT+(jk===0?dS@b0.2:^P826]])^to=f@l+jv^tj=jnJ&!^#^a282]][^S846]^V616]]){^&^]82]]=0.5};^&^a716]]();^&^a717]](fT,f@l,e@m,je);^&^a718^l^S688]^N5]^/^N6]^/^N7]){^&^a160]]=^S847]];^&^a162]]^U6[173]](^+/8);^&^a163]]();^&^a164]](jn-^+^|,jo+^+/2);^&^a16J)jn+^+@b0.7,jo+^+/2);^&^a16J\');jj-=^+^|;};bb^a751]](jn+dS/2,jo+(^+/2),^&,^S828]],^S537]],^S833]],^S835]],^S837]])^h^ ^{=jn+^P826]]^|+dSJ&^S688]^N5]^/^N6]^/^N7]){^q^ ^{^e^ ^{+^+^|}^h^ 629]]=jo^h^ 433]](true);^&^a730^ljkJ"i^U6[19J)ji,^q^ 311]])^fi^e^ 311]]^x!^#^a282]][^S846]^V616]]){^&^]82]]=1}^wfr=@r(^S647]])^I45^V159]]=fr^I45^V163]]()^I45^V64J\'jj,^q^ 629]],^q^ ^{+^q^ ^y-jj,^q^ 311]]);^S414]]=^#^v^AJ+^8^V414]]=jj;^SJ!=^#^v^AJ+^8^VJ!^e^ 629]];^S416]]=^#^v^AJ+^8^V416]]^e^ ^{+^q^ ^y;^S417]]=^#^v^AJ+^8^V417]]^e^ 629]]+^q^ 311]];};jv=jv+ji;};jb^a517^V800]](iN,{width:^)+2+2,height:^,+5+5});^P438]]={x1:fT,y1:f@l,x2:fT+^),y2:f@l+^,J,function ba(kr,cD){ba^a127^V126^V204]](this,cD);^#=kr;^PJ(kr^a1]];^&=^#^a392]];}@s(ba,m);ba^a^Q[433]^Z^ueD=^#^a517^V568]]();^&^a159]]=^c848];^&^]4J\'eD^W4]],eD^W5]],eD^W6]],eD^W7]]);};function w(kr,cD,c@j,db,d@p){w^a127^V126^V204]](this,^c849],cD,c@j);^#=kr;^PJ(kr^a1]];^P850]]=kr^a1^V392]];^P524]]=db;^P851]^E[647]]=d@p;^#^v^A722]][d@p]={id:d@p,objectType:^c567],dataSeriesIndex:db}^I2J([]^I18]]=[];^P462]]^z;^P463]]^z;^@4J(=^z){if(^P351^V260]](/area/i)){^P74J(0.7}^}{^P74J(1}};^P5J-=^P852^l ^m^P372^V690]^9{^P690]]=^#^]48]](^P690]])};}@s(w,m);w^a^Q[852]^Z^uek=^P351]];^L[28^.5^.6^.7^.8^.9^(0^\'0^:3]||ek=^_540^(9^(1^\'1^:4^(2^(5^(6^\'4^(3^(4^412]}^}^;49^\'2^\'3^\'5^4543]}^}^;56^\'7^\'8^4194^iwindow^a374^V376]](^c855]+ek);^[;}}J,w^a829]^Zek){^L[28^\'0^:3]||ek=^_549^\'2^\'3]||ek=^_540^(9^\'1^:4^.9^(5^(6^\'4^\'5^(3^(4^4856]}^}^;25^.6^.7^\'6^\'7^\'8^431]}^}^;28^(0^(1^(2^4857^iwindow^a374^V376]](^c855]+ek);^[;}}}};w^a^Q[858]^Zcz,j@z){if(!^$||^$^M===0){^[}^tE={data@yoint:null,distance:^d,index:NaN}^wgq^z^wdg=0^wcc=0^wJ*1^tD=^d^pq=0,jz=0^tC=1000^ps=0J&^#^a516^V5J-!^_194]^uj@x=(^$[^$^M-1][_$^X-^$[0][_$^XJ j@xJ"@s=M^C](Math^a19J)((^$^M-1)/j@x@b(cz-^$[0][_$^X))>>0,0),^$^M)^f@s=0J,while(true){cc=(e@t>0)?j@s+dg:j@s-dgJ&cc>=0&&cc@u^$^M){gq=^$[^nhz=M^%gq[_$^X-cz)^gjE^]J-){jE^]4J(gq;jE^]J-=hz;jE^a524]]=cc;}^pj=M^%gq[_$^X-czJ j@j@u=jD){jD=j@j^^e@tJ"@q++^fz++}^xj@q>jC&&jz>jC)^j;^^j@s-dg@u0&&j@s+dg>=^$^M)^j^xJ*== -1){dg++;J*1^kJ* -1};^x!j@z&&jE^]41^V^{===cz){return jE^^j@z&&jE^]41]]!=^z){return jE}^}{^[}J,w^a^Q[640]^Zcz,c@z,d@k){if(!^$||^$^M===0){^[};d@k=d@k||false^wd@w=[]^wdg=0,cc=0^wJ*1^po=false^tD=^d^pq=0,jz=0^tC=1000^ps=0J&^#^a516^V5J-!^_194]^ujN=^#^a462^V85J\'{x:cz,y:c@z})^px=(^$[^$^M-1][_$^X-^$[0][_$^XJ j@xJ"@s=M^C](Math^a19J)((^$^M-1)/j@x@b(jN-^$[0][_$^X))>>0,0),^$^M)^f@s=0J,while(true){cc=(e@t>0)?j@s+dg:j@s-dgJ&cc>=0&&cc@u^$^M^ud@p=^P621]][^njM=^#^v^A722]][d@p]^wgq=^$[^nhz^zJ&jM){switch(^P351]]){case ^c28^10^11]:;case ^c549^12^13^14^15]:if(cz>^Y[414]]&&cz@u=j^F&&c@z>^Y[J!&&c@z@u^Y[417]]^2^b^0^!^JM^C](M^%j^*),M^%j^F-cz),M^%jM^W5^s,M^%jM^W7^s)^<^325^>6^>7^>8^>9^61^62^60^69]:var dS=@v(^c537],gq,this)||4^pt=d@k?20:dS;hz=^GJ\'M^-j^*J$^-jM^W5^`^g=j@t^2^b^0^!^Jhz})}^pj=M^%j^*J j@j@u=jD){jD=j@j^^e@tJ"@q++^fz++}}^g=dS/2){j@o=true};brea^333^64]:var dS=@v(^c537],gq,this)||4^pt=d@k?20:dS;hz=M^C](^GJ\'M^-j^*J$^-jM^W5^`,^GJ\'M^-j^*J$^-jM^W7^`)^g=j@t^2^b^0^!^Jhz})}^pj=M^%j^*J j@j@u=jD){jD=j@j^^e@tJ"@q++^fz++}}^g=dS/2){j@o=true};brea^340]:var dS^Y[727]];hz=^GJ\'M^-j^*J$^-jM^W5^`^g=dS/2^2^b^0^!^Jhz^<^356^17]:var gI^Y[10]]^wha=^P351^T[557]?0.6@bjM^a754]]:0;hz=^GJ\'M^-gI[_$^X-cz,2)+M^-gI^]29^`^gjM^a754]]&&hz>ha^uj@h=c@z-gI^]29]]^tI=cz-gI[_$^X^we@s^U6[773]](j@h,jIJ e@s@u0){e@s+=^G8]]@b2};e@s=Number((((e@s/^G8]]@b180J#+360)J#^a27J)12))^whp=Number((((jM^a759]]/^G8]]@b180J#+360)J#^a27J)12))^whm=Number((((jM^a760]]/^G8]]@b180J#+360)J#^a27J)12)J hm===0&&jM^a760]]>1){hm=360^xhp>=hm&&gq^]29]]!==0){hm+=360J&e@s@uhp){e@s+=360};^xe@s>hp&&e@s@uhm^2^b^0^!^J0});j@o=true;J,brea^335]:if(((cz>=(jM^W4]]-^B/2)J%z@u=(j^F+^B/2))&^7417]]-^B/2J%^=0]]+^B/2))||(M^%j^F-cz+j^*)@u^B&^7J!&&c^=1]]))^2^b^0^!^JM^C](M^%j^*),M^%j^F-cz),M^%jM^W7^s,M^%jM^a860^s)^<^336]:if((M^%j^F-cz+j^*)@u^B&^7417]]&&c^=0]]))||(cz>^Y[414]]&&(cz@u=(j^F+jM^W4]])/2)&^7J!-^B/2J%@z@u^Y[J!+^B/2))||((cz>=(jM^W4]]+j^F)/2J%z@u=j^F)&^7861]]-^B/2J%^=1]]+^B/2))^2^b^0^!^JM^C](M^%j^*),M^%j^F-cz),M^%jM^W7^s,M^%jM^a860^s)^<k ;;^xj@o||(j@q>jC&&jz>jC))^j;};^^j@s-dg@u0&&j@s+dg>=^$^M)^j^xJ*== -1){dg++;J*1^kJ* -1};}^wd@y^z^o d@r=0;d@r@ud@w^M;d@r++){if(!d@y){d@y=d@w[d@r]^^d@w[d@r]^]J-@u=d@y^]J-){d@y=d@w[d@r]}}};return d@y;};w^a^Q[726]^Zdb,cz,c@z,e@o^ufp=^$^wc@n=this^wfu^D833]^?33^H833^R6[833]]:fp[db]^a522]]?fp[db]^a522^H522^R6[522^H523]][db%c@n^a523]]^M]^tr^D835]^?35^H835^R6[835]]:null^ts^D837]^?37^H837^R6[837]]:null^tt^D828]^?28^H828]]^wdS^D537]]?fp[db]^a537^H537]];return {x:cz,y:c@z,ctx:e@o,type:jt,size:dS,color:fu,borderColor:jr,borderThickness:jsJ,function h(kr,cD,ek,iN){h^a127^V126^V204]](this,^c862],cD,kr^a378]]);^#=kr;^PJ(kr^a1]];^&=kr^a392]];^P814]^E[819]^E[863]^E[633]]=[];^K4]]^z^I26]]={min:^d,max:-^d,view@yortMin:^d,view@yortMax:-^d,minDiff:^d};^L[462]){^P465]]=^#^a465]][ek]J&!^P372^V680]]){^P681]]^z};^^iN=^O||iN=^_9]){^P465]]=^#^a465^V463]^i^P465]]=^#^a465^V464]]}^x ^m^P372^V865]^9{^K5]]=^#^]48]](^K5]])^x ^m^P372^V866]^9{^K6]]=^#^]48]](^K6]])};^P35J(ek;^L[462]&&(!cD|| ^mcD^a867]^9){^K7]]=~b976[843^V~Index:cc,dataSeries~^0I~^P379]]~^P538]]~ath^a263]](~^P392]]~]||ek=^_55~]||ek=^_53~^P310]]~M^W4]]-cz~^P825]]~^P311]]~ath^a271]](~]||ek=^_52~||^S688]~oint:gq,data@yoint~]:;case ^c55~){d@w^a274]~k ;;case ^c5~]){return ^c~fT=eD^W4]~]:;case ^c53~&(c@z>^Y[~][^S647]~])=^_161])~]||ek=^_85~{^L[5~});j@o=true;};brea~@z@u^Y[86~]:;case ^c52~]?fp[db]^a8~if(^P7~76[430^V~jM^a728]]~ath^]30]~=fp[db]^a~]=0;this^v76~M^W6]]~Math^a74~]]:c@n^a~;^P6~:this,distance:~^P86~if(ek===_$_b976~^a152]]~]=^_52~^_360]~this^a~125]]^v76~]]?c@n^v7~d@i^a~]]===_$_b976~=Math^v7~]]^a~^a41~_b976[^{~=jM^v76~]=function(~return null~]+eD^v7~^a6~^rif(~==^c~]]-c@z,2))~[^c~]({data@y~_$_b976[~Infinity~=^q~^rj~J&hz@u~;^q~]^r~{break }~;^r~]](J ~typeof (~cc]^w~;for(var~^t@~d@i[_$_~}^}{~]]-c@z)~^wj~){var ~[_$_b9~;var ~}J&~310]]~=null~170]]~@b0.1~else ~)J&~415]]~>0){j~%360)~,2)+M~)&&(c~;if(~9]](~1]]=~5]](~e@t=~722]~};};~42]]','0};th^.iN;^A^]JD,y1J.,x2J.,y2J.,wJ4JD};{^)=((^)%360)+360)%36J6^)>90&&^)@u=270){^)-=180^\\^)>180&&^)@u=270){^)-=180^\\^)>270&&^)@u=360){^)-=360}}};}if(^V7^58JB&&^V7^5870^O152]]>0){^90]]=[]J2^bcc@u^V7^58JB[J,^<^90^O274]](J8bg(^A379]],^V7^58JB[cc],k^R378]],++^V^-430^O519]],this))};};^91]]=JD;^A675]]=JD;^A676]]=JD;if(^A383]^aJ3)){^A465^O479]]=^A478]]J$^A383]^aJ5)){^A465^O481]]=^A480]]};^A380]^aJ3);^A380]^aJ5);}@s(h,m);h^`125^O872]]^8ff;^bJEj@vJ1jS=0^or=0^ok=J6th^.^S113J/^.^S9]){j@k=^n_^!J&/Ma^/^A480]]-^A478]])@b^A6^i^93]]){jS= ty^1^5J+)=^??j@k@b0.9^6[J+^jJ:^1^5J+)=^??^V^-J&@b0.7^6[J+};j@r= ty^1^5875]])=^?||^95]]?^V^-J%@b0.5^6[866]]@b1.5;^\\th^.^S360J/^.^S14]){j@k=^n_^!J%/Ma^/^A480]]-^A478]])@b^A6^i^93]]){jS= ty^1^5J+)=^??^V^-J&@b0.3^6[J+^jJ:^1^5J+)=^??^V^-J&@b0.5^6[J+};j@r= ty^1^5875]])=^?||^95]]?j@k@b2^6[866]]@b1.5;}J$^A351^M[462]&&^V^-516^O636^M[628]){j@v=c(J8Date(^A480]]),^AJ\',^A681]])J2cc=^=63]];cc@uj@v;c(cc,^AJ\',^A681]]))J0j@w=cc^`209]^kiT=^96]]?^9J@{chart:^A379]],axis:^A372]],value:cc,label:^n^;?^n^;J.}):^A351^M[462]&&^A633]][j@w]?^A633]][j@w]:x(cc,^97]],^V^-363]]);ff=J8bi(^A392]],{x:0,y:0,max@wJ4jS,max^hj@r,angle:^)J7:^98]]+iT+^99]],horizontal@zlign:^e360],fontSize:^=66^gsamily:^=80^gweight:^=81^rCJ9^=82^rStyle:^=83^caseline:^e764]});^"^e274]]({position:cc^`209JCJ7@qlock:ff,effective^hJD});};^j@v=^A4^i^A633]]&&^A633^O152]])J0j@n=^BJ"^AJ\')^ol=^BJ"^=63]])^oy=falseJ2cc=j@l;cc@u^A480]];cc+=j@n){if(^n^;){j@y=true^j@y=false;break ;}J$j@y){^AJ\'=j@n;^=63]]=j@l;};}J2cc=^=63]];cc@u=j@v;cc=parse@sloat((cc+^AJ\')^`275]](14)))J0iT=^96]]?^9J@{chart:^A379]],axis:^A372]],value:cc,label:^n^;?^n^;J.}):^A351^M[462]&&^n^;?^n^;:@m(cc,^97]],^V^-363]]);ff=J8bi(^A392]],{x:0,y:0,max@wJ4jS,max^hj@r,angle:^)J7:^98]]+iT+^99]],horizontal@zlign:^e360],fontSize:^=66^gsamily:^=80^gweight:^=81^rCJ9^=82^rStyle:^=83^caseline:^e764],borderThickness:0});^"^e274]]({position:ccJ7@qlock:ff,effective^hJD});};}J2^bcc@u^90]][J,^<JEjT=^90]][cc];ff=J8bi(^A392]],{x:0,y:0,backgroundCJ9^T[884]],max@wJ4jS,max^hj@r,angle:^)J7:^T[876]]?^T[87J@{chart:^A379]],axis:this,strip@tine:jT}):^T[632]],horizontal@zlign:^e360],fontSize:^T[866^gsamily:^T[880^gweight:^T[881^rCJ9jT[J,7^5882]]||^T[522^rStyle:^T[883^caseline:^e764],borderThickness:0});^"^e274]]({position:^T[885^clock:ff,effective^hJD,strip@tine:jT});};};h^`125^O886]]^8j@i=0;^=64]]=[];if(th^.^S360J/^.^S14]){^92JCJ2i=0;i@u^"^e152]];i++)J0ff=^"i]^`843]]J1h@w=ff^`708]^kj@p=J6^)===0){j@p=^Y6[J&^j@p=(^Y6[^2JA6J@^B748^497^z(^))))+(^Y6[J%/2@b^B7^76[748^497^z(^))))J$j@i@uj@p){j@i=j@p};^"i]^`887]]=j@p;};^qa=^A361]]?@h(^=88]],^=65]],^=89]])+2:0^om=ka+j@i+^=90]]+5;return j@m;};h^`125^O891]]^8kc=0;^=64]]=[]J1ff;^b^92JC;if(th^.^S113J/^.^S9]){^J^"J,^<ff=^"cc]^`843]]J1h@w=ff^`708]^kkb=J6^)===0){kb=^Y6[J%^wkb=(^Y6[^2JA^76[748^497^z(^))))+(^Y6[J%/2@b^B76J@^B748^497^z(^))))J$kc@ukb){kc=kb};^"cc]^`892]]=kb;}^qa=^A361]]?@h(^=88]],^=65]],^=89]])+2:0;return ka+kc+^=90]]+5;};h^`569]]=function(e@j,e@x,kg,kd,eD)J0f@w,f@p,f@m,f@iJ#r=^L379]]J1e@o=k^R392]];^L893]]^$9J-3J*^#893JCJ$e@x&&kg&& typeof (^mb97^5480^Z9^*^mb97^5478^Z9^*^mb97^5680^Z9^*k^t7^5480^Z9^*k^t7^5478^Z9^*k^t7^5J\')=^?)J0ks=(^PJ5]-^PJ3])/^P[J\'J#t=(^UJ5]-^UJ3])/^U[6^iks>kt){^UJ5]=^U[J\'@bks+^UJ3]^\\kt>ks){^PJ5]=^P[J\'@bkt+^PJ3]}};^qo=e^G6J>]?^PJ>]^^j=^N6J>]?^UJ>]^^m=e^G6J?]?^PJ?]^^h=^N6J?]?^UJ?]^^p=e^G6[355]]:0J#k=e^G6[355]]:J6kd=^S12]){^L674]]={^qq=^B173]](e^G6[886]^yf@w=^ ^C4]]+kq+kp);^p^!414J)wJ#l=^BJ"^N6[886]^yf@m=^ ^C6]]-kl>^f9^-3^x?^f9^-310]^+6]]-kl);^p^!416J)m;^p^!J&=Ma^/^v)J#e=^BJ"^L891JC);f@p=^ ^CJ(eJ;^:f@i=^ ^C7]]J;^:^p^!415J ^p^!417J ^f976^3^%^Q^(if(e@x){f@w=^ ^C4]]+e@x[^:f@p=^ eD^>@u10?10:eD^>);f@m=^ ^C4]]+kq+e@x[^:f@i=^ ^CJ(eJ;^:^P[^]f@m,y1^%^uMa^/f@i-f@p)};^P^3^%^Q^(J$kg){f@w=^ ^p^!416]]);f@p=^ eD^>@u10?10:eD^>);f@m=^ f@w+kl+kg[^:f@i=^ ^CJ(eJ;^:^U[^]f@w,y1:f@p,x2:f@w,y2:f@i,^uMa^/f@i-f@p)};^U^3^%^Q^(};^L894]]^$976[J!}^#J!}^[JA1J@^F[717]](5,^L742]]^>,^f9^-3^x,^L742^OJ%^F[718]^HJ-5]](^F[730]]^$9J-5J*^#895J*;k^R570]^kep=^f9^-405]]^[JA1J@^F[717]](ep[^W4]],ep^>,Ma^/ep[^W6]]-ep[^W4]]),Ma^/ep[^W7]]-ep^>)^F[718]^H76^K6[885]);^&^K6^}^#896]^a^};^L897]]^$9J-7J*^#^l^[JA30]^H7^{^$97^{()}^#898]]^,9]]^$9J-9J*^#899]]^,6]]^@;^&[896]]^@}^#896]]^@};^wJEkf=^BJ"^L88J@));^&[674]]={};f@w=^ ^C4]]+kfJ<^:f@m=^ ^C6]]>^mb9^-3^x?^mb9^-310]^+6]]);^m^!414J)w;^m^!416J)m;^m^!J&=Ma^/^v);}^#674]]={};f@w=^ ^C4]]+kfJ<^:f@m=^ ^C6]]>k^t^-3^x?k^t^-310]^+6]])^s^!414J)w^s^!416J)m^s^!J&=Ma^/^v);^qn=^B173]](e^G6[891]^yJEki=^BJ"^N6[891]^yif(e@x){f@p=^ ^CJ(n-e@x[^:f@i=^ ^CJ(p>^mb9^-J%-10?^mb9^-311]^+J(p);^m^!415J ^m^!417J ^P^3^%wJ4^v,^ukn}^|g){f@p=^ eD^>+kg[^:f@i=(eD^>+^U[355]]+ki)^s^!415J)i^s^!417J)i;^U^3^%wJ4^v,^uki};};f@w=^ ^C4]]J<^:f@p=^ kg?kg[_$_^!417]]:(eD^>@u10?10:eD^>));f@m=^ ^C4]]+kfJ<^:f@i=^ e@x?^m^!415]]:(^CJ(p>^f9^-J%-10?^f9^-311]^+J(p));^L^]f@m,y1^%^uMa^/f@i-f@p)};^f976^3^%^Q^(^L894]]^$976[J!}^#J!};^&[895J*^#895]]^,5JC;k^R570]^kep=^f9^-405]]^[JA1J@^F[717]](ep[^W4]],ep^>,Ma^/ep[^W6]]-ep[^W4]]),Ma^/ep[^W7]]-ep^>)^F[718]^H76^K6[885]);^&^K6^}^#896]^a^};^L897]]^$9J-7J*^#^l^[JA30]^H7^{^$97^{()}^#898]]^,9]]^$9J-9J*^#899]]^,6]]^@;^&[896]]^@}^#896]]^@};};};h^`125^O895]]^8kw=falseJ#@z=0J#x=1J#v=0^ok=^A724^O725]]@b^A6^i^)!==0&&^)!==360){kx=1.2J$ ty^1^5J\')=^?){if(th^.^S113J/^.^S9]){^J^"J,^<ku=^"cc];^_976[353]]@u^A478]]||ku[^E^IJEcT=^d^0^2JA6J@^B^\'b^X+^d^0J%@b^B7^76[^\'b^X;k@z+=cT^|@z>^n_^!J&@bkx){kw=true};J$th^.^S360J/^.^S14]){^J^"J,^<ku=^"cc];^_976[353]]@u^A478]]||ku[^E^IJEcT=^d^0J%@b^B76J@^B^\'b^X+^d^0^2JA^76[^\'b^X;k@z+=cT^|@z>^n_^!J%@bkx){kw=true};};J$th^.^S113]){^bJEkuJ1er;^J^"J,^<ku=^"cc];^_976[353]]@u^A478]]||ku^`353]]>^A480]]^Ier=^A68J@ku^`353]]);if((^A902]]&&!^"JF^E)||(^"JF^E&&^"JF^E^`903^M[900])){if(^"JF^E){jT=^"JF^E;^A^D[162]]=^T[904]];^A^D[160]]=^T[522]];^w^A^D[162]]=^A902]];^A^D[160]]=^A905]];^qy=(^A^D[162]]%2===1)?(e^R1JB@J=+0.5:(e^R1JB@J=;^A^D[163JC;^A^D[164]](ky,e^RJG]@J=;^A^D[165]](ky,(e^RJG]+^=90]])@J=;^A^D[169JC^|w&&kv++ %2!==0&&!^"JF^E^I^_9^0807]]===0){e^R1JB-=^d^0J&/2;e^RJG]+=^=90]]+^d^0298]]/2;^we^R1JB-=(^)@u0?(^d^0^2JA6J@^B^\'b^X):0);e^RJG]+=^=90]]+Ma^/(^)@u0?^d^0^2JA^76[^\'b^X-5:5));};^d^01JB=e^R1JB;^d^0JG]=e^RJG];^d^0433]](true);J$thi~^B193]](~b976[674^O~^=64]][~;if(kg){^U[~();if(e@x){^mb~:f@p,x2:f@m,y2:f@i,~if(e@x){^P~748]]/180@b^n_~@w,^uf@i-f@p};~^=69]]~76[161]&& typeof (~]-10:^C~()};^L89~76[379^O~is^`868]]=~th^`263]](~76[843^O~peof (^V7~J&@bMath[_$_b9~[742]]={x1:f@w,y1~]]/180@bMath[_$_b~6[372^O~>>0:^V76~67]](Math[J,7~=function()J0~^=7~^e355]]);~_b976[633]][cc]~76[152]];cc++){~^A8~[^W5]]~^S161]~(^e900])~^V76[~Math^`~eD[^W~392]][J,76~^e901]]~)^[76~@x?^mb97~]();^f9~){continue };~for(cc=0;cc@u~[896]](J,7~e@j^`~]]===J,76~kg?k^t7~]]^`~^mb976~wJ4f@m-f~r^`~==^e~jT[J,76~k^t76~^n_b9~^e41~976[869]])~h@w[J,7~]])===_$_b~;e@o[J,~^wif(~674]]={x1:~:0:0J#~if(ku[_$_b~[^e~](J,76~JEcc=0;~]]J7@q~ku[J,~J,76[~^pb~^r@~@xeight:~80]];if(~^wj~]()J1~897J*~e@x[_$_~this[_$~J1j@~e@j[_$_~}J#~]],font~;kg[_$_~g[J,~height:~f@m-f@w~}else {~10]]-10~]():0);~6[263]]~6[898]]~;J$k~[885])}~J)p;~894JC~173]](~J1k~};if(~311]]~310]]~680]]~7]]-k~]]=f@~JC}~874]]~_$_b9~76[89~:JD~]||th~{JE~;JE~;for(~[478]~idth:~[480]~0;if(~,text~ new ~olor:~S= ty~-e@j[~+e@j[~u@u0)~[719]~[867]~6]](~76[7~70]]~]]()~null~var ~cc][~629]','s^m361]]){^8= ^WbJ-92]],{x:^p^!4J1,y:^a742^c17]]-^Y65]]-5,m^G^!310]]^1^r^U0^XJ-61]]^.$_b^9his^m865]],f^/^|8]],^-_^|9]]^5^}6]]^7^}7]]^4J99]});^8^m^w^8^m170^l_^!4J1+^p^!310]]/2-^8[_$^h/2;^8^m629^Q[742^c17]]-^8^mJ,-3;^8^q^V^&9^#9]){J2cc=0J.ku^vJ2jT^`^ _$_b9^Pku=^ J&ku^mJ!^?]||ku^m^A6[^)r=^=](ku^LJ0^Z902J7!^ ^;)||(^ ^;&&^ ^;^m903]]=^_))J8^ ^;){jT=^ ^;^j^"62^b[904]]^j^"60^b[522^0^"62^@02]]^j^"60^@05]];J)ky^kb^"^+bJ9J4]@^*76[J4^F^"J*^j^"64J3y,^R^F^"65J3y,(^R]-^Y90]])@u@u0)^j^"^xJ0kw&&kv++ %2!==0&&!^ cc]^q^,ifJ(^$807]]===0){^H-=ku[_$_^$310]]/2;^R]-=^Y90]]+ku[_$_^$J,/2;}else {^H-=^N69]]>0?J(^$^C76[766]^\\^3^r9]])):0);^R]-=^Y90]]+^<](^N69]]>0?ku[_$_^$^C76[767]^\\^3^r9]])+5:5));}J%^$J4]=^HJ%^$629]^B]J%^$433]](J:);};^I361]]){^8= ^WbJ-92]],{x:^p^!4J1,y:^a742^c15]]+1,m^G^!310]]^1^r^U0^XJ-61]]^.$_b^9his^m865]],f^/^|8]],^-_^|9]]^5^}6]]^7^}7]]^4J99]});^8^m^w^8^m170^l_^!4J1+^p^!310]]/2-^8[_$^h/2;^8^q^V^&9^#360^{u^vfor(J2^o^ _$_b9^Pku=^ J&ku^mJ!^?]||ku^m^A6[^)r=^=](ku^LJ0^Z902J7!^ ^;)||(^ ^;&&^ ^;^m903]]=^_))J8^ ^;){jT=^ ^;^j^"62^b[904]]^j^"60^b[522^0^"62^@02]]^j^"60^@05]];J)kz^kb^"^+b9J$]@^*J$^F^"J*^j^"64]](^H^6^"65]]((^H-^Y90]])^6^"^xJ0kw&&kv++ %2!==0&&!^ cc]^q^,J+^$J4]=^H-J(^$^C76[766]^\\^3^r9]]))-^Y90]]-5;^I869]]J\'J/^$629]^B]^tJ/^$629]^B]-J(^$^C76[767]^\\^3^r9]]))}J%^$433]](J:);};^I361]]){^8= ^WbJ-92]],{x:^a742^cJ1+1,y:^p^!417]],m^G^!J,^1^r^U-90^XJ-61]]^.$_b^9his^m865]],f^/^|8]],^-_^|9]]^5^}6]]^7^}7]]^4J99]})J.h@w=^8^m^w^8^[^k^!J,/2+^8[_$^h/2+^p^!415]]);^8^q^V^&9^#14^{u^vfor(J2^o^ _$_b9^Pku=^ J&ku^mJ!^?]||ku^m^A6[^)r=^=](ku^LJ0^Z902J7!^ ^;)||(^ ^;&&^ ^;^m903]]=^_))J8^ ^;){jT=^ ^;^j^"62^b[904]]^j^"60^b[522^0^"62^@02]]^j^"60^@05]];J)kz^kb^"^+b9J$]@^*J$^F^"J*^j^"64]](^H^6^"65]]((^H+^Y90]])^6^"^xJ0kw&&kv++ %2!==0&&!^ cc]^q^,J+^$J4]=^H+^Y90]]+5;^I869]]J\'J/^$629]^B]^tJ/^$629]^B]}J%^$433]](J:);};^I361]]){^8= ^WbJ-92]],{x:^a742^c16]]-1,y:^p^!417]],m^G^!J,^1^r^U90^XJ-61]]^.$_b^9his^m865]],f^/^|8]],^-_^|9]]^5^}6]]^7^}7]]^4J99]});^8^m^w^8^[^k^!J,/2-^8[_$^h/2+^p^!415]]);^8^q^V}}}^:^i897^]J2e@o=^p^%405]^i392J"kCJ qJ.kD=^p^%405J"cc=0,kE=J:J0(^pb9^#^J^#9])&&^a908]^M159^@08]]^`^ _$_b9^Pif(^ cc]^q^,if(kE){kC=^=](^ cc]^LJ0cc+1>=^ ^s152]]-1){k@q=^=]^Z480]])^t@q=^=](^ cc+1]^L};e@o^m649J3C^mJ4],kD^g5]],^<](k@q^mJ4]-kC^mJ4]),^<](kD^g5]]-kD^g7]]));kE=false;^tE=J:};};}else J8(^pb9^#3^S^#14])&&^a908]^M159^@08]]^`^ _$_b9^Pif(^ cc]^q^,if(kE){k@q=^=](^ cc]^LJ0cc+1>=^ ^s152]]-1){kC=^=]^Z480]])^tC=^=](^ cc+1]^L};e@o^m649J3D^g4]],kC^[,^<](kD^g4]]-kD^g6]]),^<](kC^[-k@q^[));kE=false;^tE=J:};};}}^K3]]()^D^i896]^e@s)J8!^N70J7^Y70]^i152]]>0)|| !k@s){J#J)c@v=thisJ.cc=0^`^Y70]][_$_b9^PJ2jT=^Y70]][J&jT^m903]]!==k@s){continue }J0k@s=^_&&(jT^m885]]@u^?]||jT^m885]]>^a480]])){continue }J0jT^m909]]){^p^%196]](^s605],jT^m433]],jT)}else {jT^m433]]()};^:^i898^]if(!^N67J7^Y67]]>0)){J#J)e@o=^p^%392]]^vJ2kD=^p^%405J"jTJ.kI,k@h^K2^Q[867]]^K0^@10]]J0e@o^mJ;^M720]](@t^Z911]],^Y67]]))}^db9^#^J^#9]){for(^o^ ^s152J7!^ ^;;cc++)J8^ cc^iJ!^?]||^ cc^i^A6[^)@o^m1J*;er=^=](^ cc]^LJ j=(e@o^m1^+bJ9J4]@^*76[170^(6[164J3@j,kD^g5^(6[165J3@j,kD^g7^(6[1^x^&9^#3^S^#14]){for(J2^o^ ^s152J7!^ ^;;cc++)J8cc===0&&^a351]^^3]&&^p^%462J7^p^%462]^iJ5]){continue }J0^ cc^iJ!^?]||^ cc^i^A6[^)@o^m1J*;er=^=](^ cc]^LJ x=(e@o^m1^+b9J$]@^*76[629^(6[164J3D^g4]]@u@u0,k@x)^K5J3D^g6]]@u@u0,k@x)^K9]]();}}^:^i899^]J2e@o=^p^%392]]^db9^#^J^#9]){^IJ5^M162^Q[J5]^K0^Q[847]]?^Y47]]:^s13]J0e@o^mJ;^M720]](@t^Z721]],^aJ5]))^zt=^ZJ5]%2===1)?(^p^!415]]@u@u0)+0.5:(^p^!415^(6[1J*^K4]](^p^!4J1,k@t)^K5]](^p^!416]],k@t)^K9]]();}^&9^#3^S^#14]){^IJ5^M162^Q[J5]^K0^Q[847]]J0e@o^mJ;^M720]](@t^Z721]],^aJ5]))^zo=^ZJ5]%2===1)?(^p^!4J1@u@u0)+0.5:(^p^!414^(6[1J*^K4J3@o,^p^!415]])^K5J3@o,^p^!417]])^K9]]();}}^:^i686]^eN){J2er={J)cT=^p^!310J"cS=^p^!J,^db9^#^J^#9^{M=cT/^<](^pb9^\'76^y^H=^p^!4J1+(kM@b(kN-^?]));^R]=^p^!415]];}^db9^#3^S^#14^{M=cS/^<](^pb9^\'76^y^R]=^p^!417]]-(kM@b(kN-^?]));^H=^p^!416]];};J#er^D^i859]^e@v)J8!k@v){J#J6J)jN=J6^db9^#360]){jN^k^%^u_b9^\'76[379^c62^c78]])/^p^%^u_^!J,@b((^p^%^u_^!417]]-k@v^[))+^p^%462^c78]]^&9^#113]){jN^k^%^u_b9^\'76[379^c62^c78]])/^p^%^u_^!310]]@b(k@v^mJ4]-^p^%^u_^!4J1)+^p^%462^c78]]}};J#jN^D^i894]^eN){J2er={^zy={pixel@yer@nnit:J6,minimum:J6,reference:J6J)cT=^p^!310J"cS=^p^!J,;k@y^m478]]=^?]^db9^#^J^#9]){k@y^m725]]=cT/^<](^pb9^\'76^yk@y^m723^l_^!4J1;}^db9^#3^S^#14]){k@y^m725]]=-1@bcS/^<](^pb9^\'76^yk@y^m723^l_^!417]];};^a724]]=k@y^D^i893^]J2eD=^p^%517]^i568]]()J r=0J k=0J.kS=false^db9^#^J^#9]){^YJ1=eD[_$^h;^Y19]]=eD^m311^0J98J1=eD^mJ,;^Y19]]=eD[_$^h;^zn=^a351]^^2]?^NJ1@u500?8:Math^m195]](6,Math^m174]]^NJ1/62))):Math^m195]^\\[174]]^NJ1/40),2)J.i@m,i@wJ.kTJ wJ m=0;^I351]^^2]){i@m=^Z465^c79]]!==J6)?^a465^c79]]:^a6^O4]];i@w=^Z465^c81]]!==J6)?^a465^c81]]:^a6^O5]]J0i@w-i@mJ\'@m^29^>680]^E?0.4:^pb9^>680]];i@w+=k@m;i@m-=k@m;};^I6^O1]]!==Infinity){kT=^a6^O1]]^fw-i@m>1){kT=^<](i@w-i@m)@b0.5^tT=1^d^%516]^i636]]===^s628]){kS=J:};}};^&J-51]^^3]){i@m^29^>478]^E||^pb9^>478]]===J6?^a6^O4]]:^pb9^>478]];i@w^29^>480]^E||^pb9^>480]]===J6?^a6^O5]]:^pb9^>480]]J0!is@sinite(i@m)&&!is@sinite(i@w)){i@w^29^>680]^E?-Infinity:^pb9^>680]];i@m=0;^fm===0&&i@w===0){i@w+=9;i@m=0;^fw-i@mJ\'@m=Math^m630]](^<](^<](i@w)@b0.01),5);i@w+=k@m;i@m-=k@m;^fm>i@w){k@m=Math^m630]](^<](^<](i@w-i@m)@b0.01),5);~^Y64]][~b976[674]^i~976[392]^i1~76[868]]===^s~b976[843]^i~b976[379]^i~}else {if(^pb~76[480]]-^pb9~]]@u@u0);e@o[_$_b97~480]]){continue };e~u@u0)+0.5:(er[_$_b9~62]]%2===1)?(er[_$_~[901]]){continue };~font@weight:this[_$~,horizontal@zlign:_~ont@samily:^p~]];}else {^pb~,max@xeight:this[_$~= typeof (^pb~[748]]/180@bthis[_$~,text@qaseline:_$_b~,fontColor:^p~@u@u0,kz)^j~,fontStyle:^p~^Y71]]~J910],fontSize:t~}^D~cc^i901]]~Math^m263]~^a686]~76[372]^i~^a478]~^Q[9~353]]>^pb97~]=^R~310]]@bMath[_$_b9~;};h^m125]~])===^s161]~]@u@u0)^j~ax@width:^p~er^m170]]~if^Z~113]||^pb9~;e@o^m16~^m353]])~]){e@o^m~(^Y~26]^i63~76[152]];cc++){~^l_b976~er^m629]~60]||^pb9~^a62~5]]@b1.5,angle:~[433]](J:);};~new bi(^p~,text:^pb~^a8~(^a~^m629]]~](Math^q~]]=function(){~]===^s46~==^s900]~;for(^o~this^m~]]=jT^q~]^i4~;if(^p~]=function(k~}else J8i@~^m41~_bJ-10]]~]^m~;^pb~=(^p~]]=this[_$~^q[~[^w~cc=0;cc@u~this[_$_~[_$_b976~_bJ986~_$_bJ9~}else {k~462]][_$~J.er;~708]]();~69]]();}~[478]]);~}J ~]){J2k~bJ988~bJ990~J.k@~353]]@u~]]J.~return ~76[629]~;J+~cc]J0~===0){k~(J+~}J.~63]]()~kJ/~311]]~J93~;J2~u[_$_~;if(~14]]~var ~]](k~170]~719]~null~]]&&~{if(~976[~true~720]','if(i@w>=0){i@m=i@w-k@m^ji@w=i@m+k@m};^jk@m^4630]^D[263]^D[263]](i@w-i@m)@b0.01),0.05)^zi@w!==0){i@w+=k@m^qi@m!==0){i@m-=k@m};}}}^q^)12]]&&(^_^+2]]^.)=^;||t^+2]]^.==^t)^pi@m>0){i@m=0}^q^)12]]&&(^_^+2]]^:)=^;||t^+2]]^:==^t)^pi@w@u0){i@w=0}};}};^56^I76[462]&&^g^"516^P636]]=^b628]){k@w=i@w-i@m^z!^J681]]){i^X1^f^$=1;^ ^i^3^X2^f^$=2;^ ^i^3^X^a^$=5;^ ^i^3^X1^Y^$=10;^ ^i^3^X2^Y^$=20;^ ^i^3^X5^Y^$=50;^ ^i^3^X1^T^$=100;^ ^i^3^U^T^$=200;^ ^i^3^X25^Y^$=250;^ ^i^3^X3^T^$=300;^ ^i^3^X4^T^$=400;^ ^i^3^X5^T^$=500;^ ^i^3^!3^<^$=1;^ ^i^A^!3^?^$=2;^ ^i^A^!3^x^a^$=5;^ ^i^A^!3^x1^Y^$=10;^ ^i^A^!3^x1^a^$=15;^ ^i^A^!3^x2^Y^$=20;^ ^i^A^!3^x3^Y^$=30;^ ^i^A^!4^<^$=1;^ ^i^=^!4^?^$=2;^ ^i^=^!4^x^a^$=5;^ ^i^=^!4^x1^Y^$=10;^ ^i^=^!4^x1^a^$=15;^ ^i^=^!4^x2^Y^$=20;^ ^i^=^!4^x3^Y^$=30;^ ^i^=^!5^<^$=1;^ ^i[^L^!5^?^$=2;^ ^i[^L^!5^x3^f^$=3;^ ^i[^L^!5^x6^f^$=6;^ ^i[^L^!6^<^$=1;^ ^Z0^[^!6^?^$=2;^ ^Z0^[^!6^x4^f^$=4;^ ^Z0^[^!7^<^$=1;^ ^Z3^[^!7^?^$=2;^ ^Z3^[^!7^x3^f^$=3;^ ^Z3^[^!8^<^$=1;^ ^i^F^!8^?^$=2;^ ^i^F^!8^x3^f^$=3;^ ^i^F^!8^x6^f^$=6;^ ^i^F^!9^<^$=1;^ ^Z7^[^!9^?^$=2;^ ^Z7^[^!9^x4^f^$=4;^ ^Z7];^j^$^4174]](h[_^`]](k@w/(k@n-1),true)/r^e919]]);^ ^Z7];^*^*^*}};^56^7[479^\\{^y^.=^N^7[479]]^j^y^.=i@m-kT/2};^56^7[481^\\^/^u=^N^7[481]]}else ^/^u=i@w+kT/2^q!^J877]]^pkS)^/^6921^R^ ^Q47])^/^6234^R^ ^Q44])^/^6922^R^ ^Q43])^/^6923^R^ ^Q40])^/^6923^R^ ^Q37])^/^6924^R^ ^Q34])^/^6924^R^ ^Q31])^/^6925^R^ ^Q28])^/^6926]^m}}}}^0863]]=^)27]](^d^y^.),^J681]],^$);^j^ ^i[29];k@w=h[_^`]](i@w-i@m,false)^zt^+2]]&&t^+2^P680]]){^$=t^+2^P680]]^j^$=h[_^`]](k@w/(k@n-1),true)};^56^7[479^\\{^y^.=^N^7[479]]^j^y^.^4174]](i@m/^$)@b^$};^56^7[481^\\^/^u=^N^7[481]]}else ^/^u^4173]](i@w/^$)@b^$};^56[^u===0&&^y^.===0^pt^+2]]^.===0)^/^u+=10^jif(t^+2]]^:===0){^y^.-=10}^qt^+2]]&&^_^+2^P680]])=^;){^$=h[_^`]]((^y^:-^y^.)/(k@n-1),true)^}^56^I76[462]^p!(^N^7[479^\\){^y^.=i@m-kT/2^q!(^N^7[481^\\)^/^u=i@w+kT/2}^0863]]^4174]]((^y^.+(^$@b0.2))/^$)@b^$;^j^56^I76[463])^/863]]=^y^.}^}^56^I76[462])^/675]]=t^+2]]&&^_^+2]]^.)!^;?t^+2]]^.:^J626^P630]]-kT/2^0676]]=t^+2]]&&^_^+2]]^:)!^;?t^+2]]^::^J626^P195]]+kT/2;^q!^J877]])^/^6928];k@w^4263]](^y^:-^y^.)^zk@w@u1^nk@l^4174]^D[263]^D[376]](k@w)/^W6[929]]))+2^zisNaN(k@l)||!is@sinite(k@l)){k@l=2^qk@l>2){for(^|cc=0;cc@uk@l-2;cc++)^/877]]+=^i[172]}^}^}h[_^`^Ocz,lb^nk@p^4174]^D[376]](cz)/^W6[929]]);^|k@i=cz/^W6[271]](10,k@p)^la^zlb^pk@i@u1.5){la=1}^C3){la=2}^C7){la=5^jla=10}}}}^C=1){la=1}^C=2){la=2}^C=5){la=5^jla=10}}}};return Number((la@b^W6[271]](10,k@p))^e275]](20));};h[^i^E[927^O^nld=s(^$,^J681]])^le^4174]]((^y^.)/ld)@bld^lc=^dle)^z^ ^Q28]){^jif(^ ^Q31^@76[129]](^>6[133^K[132^{+1^,^r^B^ ^Q34^@76[132^{^1^k^>6[136^K^w]()+1^,^o^,^r^B^ ^Q37^@76^w]()^1^h^1^k^>6[139^K[13^s+1^,36]](0^,^o^,^r^B^ ^Q40^@76[13^s^1^w]()^1^h^1^k^>J 2^K[141^{+1^,39]](0^,36]](0^,^o^,^r^B^ ^Q43^@76[9^r)^1[13^s^1^w]()^1^h^1^k^>J 2^K[141^{+(7-lc^e9^r))^,39]](0^,36]](0^,^o^,^r^B^ ^Q44^@7J 1^{>1||lc^]3^s^1^w]()^1^h^1^k^>J 6^K[145^{+1^,42]](1^,39]](0^,36]](0^,^o^,^r^B^ ^Q47^@7J 5^{^1[141^{>1||lc^]3^s^1^w]()^1^h^1^k^>J 9^K[14^s+1^,46]](0^,42]](1^,39]](0^,36]](0^,^o^,^r0);^m}}};return lc;};function bg(kr,cD,c@j,d@p,ny){bg^]27^P126^P204]](^y,^i[931],cD,c@j,ny)^0647]]=d@p;t^+9]]=kr^0392]]=^g^"392]]^0632]]=^J632]];^)03^S900]^z^)32]]!=^t&&^)33^\\^/885]]=((^)32^P209]]?^)32^P209^{:^)32]])+(^)33^P209]]?^)33^P209^{:^)33]]))/2;^)04]]^4195]](^)33]]-^)32]]);^)03^S885];};}@s(bg,m);bg[^i^E[433^O^ner=t^+^M686]](^J885]])^lf^4263]](^)03]]=^b900]?^)04]]:t^+^M724^P725^x^)04]])^zlf>0^nlh=^)34]]==^t?1:^)34]]^0^9160]]=^J522]]^0^9163^{^lg=^N^2[682]]^0^9682]]=lh;^|fr=@r(^J647]]);^|f@w,f@m,f@p,f@i^0^9162]]=lf;^56^2[720]])^/^9720]](@t(^J721]],lf))^qt^+^M^H6[113]||t^+^M^H6[9]^nli=(^N^2[162]]%2===1)?^V[170]]@u@u0)+0.5:^V[170]]@u@u0);f@w=f@m=li;f@p=^g^"405^P415]];f@i=^g^"405^P417]^[f(t^+^M^H6[360]||t^+^M^HJ ]^nlj=(^N^2[162]]%2===1)?^V[629]]@u@u0)+0.5:^V[629]]@u@u0);f@p=f@i=lj;f@w=^g^"405^P414]];f@m=^g^"405^P416]];}}^0^9164]](f@w,f@p)^0^9165]](f@m,f@i)^0^9169^{^0^9682]]=lg;^}function bm(kr,cD,c@j){bm^]27^P126^P204]](^y,^i[935],cD,c@j);t^+9]]=kr^01]]=kr^]]]^0392]]=^g^"392]];^)36]]= -1;^)37]]= -1;^)38]]=0;^)39]]=NaN;^)40]]=NaN^050^s;}@s(bm,m);bm[^i^E[508^O){^56[671]]){^)41]]=document^e2]](^i[421]);^)^891]](^i[314],^i[942]);^)^89^M353^S426];^)^89^M311^S25];^)^89^M943^S944];^)^89^M945^S946];^)^89^M189^S194]^lk=^i[947]^-48]^-49]^-50]^-51]^-52]^-53]^-54]^-55]+(T?^i[956]:^i[957])^-58]^-59]^-60]^-61]^-62];lk+=T?^i[963]:^i[964]^-65]^-66]^-67]^-68]^-69]^-70]^-71]^-72]^z!T){lk+=^i[973]^-74];}^-75];^)^885]]=lk;^)76]]=^)41^P977]];^)^89^M978]]=^)76^P19^M978]];^g^"42^M188]](^)41]]);}};bm[^i^E[677^Ocz,c@z^p!(^)79]]&&(^d)^e209^{-^)79]])@u40)){^)79]]=^d)^e209^{^0608]](cz,c@z);}};bm[^i^E[608^OdT,d@n^p^g^"401]]^c^z typeof (dT)=^;|| typeof (d@n)=^;^pisNaN(^)39]])||isNaN(^)40]])^celse {dT=^)39]];d@n=^)40]];}^j^)39]]=dT;^)40]]=d@n;};^|gq^t;^|c@n^t^lq=^i[20]^lm=[]^ls^lp;^|cz=0^z^)80]]&&^J671]]&&^g^"516^P542]]!^Q94]^p^g^"516^P542]]=^b543]){cz=(^g^"^v^:-^g^"^v^.)/^g^"462^P674^P311^x((^g^"462^P674^P417]]-d@n))+^g^"^v^.^jcz=(^g^"^v^:-^g^"^v^.)/^g^"462^P674^P310^x(dT-^g^"462^P674^P414]])+^g^"^v^.}^ln=[];for(^|cc=0;cc@u^g^"282^P152]];cc++^nht=^g^"282]][cc]^e858]](cz,true)^zht&&ht^e524]]>=0){ht^e567]]=^g^"282]][cc]^zht^^41^P629^\\{ln^e274]](ht)^}^qln^]52]]===0^c;ln^e541]](function(ik,il){return ik^^42]]-il^^42]]})^ll=ln[0];for(cc=0;cc@uln^]52]];cc++^pln[cc]^^^87^M981^{===ll^^^87^M981^{){lm^e274]](ln[cc])}};ln^t;^j^|d@m=^g^"640]](dT,d@n,true)^zd@m){^)37]]=d@m^^44]];^)36]]=d@m^e567^P524]^[f(T^nd@p=N(dT,d@n,^g^"43^M645]])^zd@p>0&& typeof ^g^"43^M722]][d@p]!^;){event@vbject=^g^"43^M722]][d@p]^zevent^G6[982]]=^b845]^c;^)36]]=event^G6[846]];^)37]]=event^G6[644]]>=0?event^G6[644]]:-1;^j^y[~^J681]]=~f(k@w/(r^e91~b976[379^P~^%}~^J680]]~^&}~^\'}~^(}~^*}~^J9~^m^m}}~his^e37~);lc^]~;lk+=^i[9~^e478]]~{^J~;^J~>0||lc[^i~[392]][^i~[128^[~=^W6[~if(^gb97~877^S~[465]][^i~41^P1~392^P~^e480]]~^Q61]~]]@b1^f~[134^[~)>0){lc[_$_b97~]]@b2^f~]^plc[_$_b9~[131^[~0);}^jif(~else {if(k@i@u~](^W6~[125]][^i~[144^[~@vbject[_$_b97~868]]===_$_b97~[351]]===_$_b9~^N[~]](lc[^i~137^[~0^P~^gb976~]]=function(~]]^e~^b1~]^jif(~]]=^i[~0^Y~^X2~(er[^i~Math[_$_b97~f(k@w/(1@b~0^f~^i[14~];^ji~]]!=^t)~^e1~^e6~ typeof (t~$_b976[920~5^f~==^i[~){return }~ new Date(~[^i[~)@u=k@n){~^y[_$_~[132^{~_$_b976~}else {~[129]](~;^|l~}}}}}}~){^|~33]](0~){if(~}^z~30]](~8^{~=null~480]]~462]]~[135]~]]@b~this~;if(~]]()~var ~};};~6[14~209]','_^h937]]= -1^d^737]]= -1}}^|^736]]>=0){c@n=t^&^_282]][^736]]^uht={}^|^737]]>=0){gq=^F538]][^737]]];ht^_567]]=c@n;ht[^==gq;ht[_$_^[=^737]];ht^_642]]=M^2](gq^_170]]-cz);^lif(^;671]]&&^c9^ 525^D^ 526^D^ 527^D^ 5^9^ 52^>^ 530^D^ 5^C9^ 532^D^ ^:9^ 534^D^ 535^D^ 536])){^}cz=(t^&^i^,480]]-t^&^i^,^t/t^&^i^,674^R310]]@b(dT-t^&^i^,674]^E4]])+t^&^i^,478^R981]]();ht=^F858]](cz,true);ht^_567]]=c@n;^737]]=ht[_$_^[;gq=ht[^=;^l^m}}^|ht[^=^_629]]!^em^_274]](ht)};};^zm^_152]]>0){^;770J!m)^|^;671]^olr^G;lr=^783]]({entries:lm})^|lr!==null){t^`^56[185]]=lr;t^`^56[185]]=lr;^}lo=false^|t^+^g^)189]]=^Z194]){lo=true;t^+^g^)189]]=_^h489];};try{t^`^5^)984]]=^;467]]?^;467]]:T?_^h985^a[986^L^5^)987]]=t^`^5^)988]]=t^`^5^)750]]=^;750]]?^;750]]:^v^=^_J"]?^v^=^_J"]:^j^"76[J"]?^j^"76[J"]:^j^"76[523]][^j$_^[%^j^"76[523^R152]]^L^5^)989]]=(^;728J ^;728]J#0)?^;728]]+_^Y]:2+_^Y^L^5^)978]]=(^;809J ^;809]J#0)?^;809]]+_^Y]:5+_^Y];t^+^g^)978]]=t^`^5^)978]^L^5^)298]]=(^;298J ^;298]J#0)?^;298]]+_^Y]:14+_^Y^L^5^)J"]=^;810]]?^;810]^a[16^L^5^)300]]=^;300]]?^;300]^a[17^L^5^)296]]=^;296]]?^;296]^a[12^L^5^)294]]=^;294]]?^;294]]:T?_^h18^a[12];}catch(e){}^|^j^"^ 556^V^"^ 557^V^"^ 558^V^"^ 549^V^"^ 555^V^"^ 552^V^"^ 553])^B=dT-10-t^+^E2]]}else ^B=(((t^&^i^,674^R310]]/M^2](t^&^i^,480]]-t^&^i^,^t)@bM^2](^v^=^_170]]-t^&^i^,^t)+t^&^i^,674]^E4]]+0.5)-t^+^E2]]@u@u0;^O-=10;}^|^O@u0)^B+=t^+^E2]]+20}^|^O+t^+^E2]]>t^&^_407]^E2]])^B=M^J195]](0,t^&^_407]^E2]]-t^+^E2]])};^O+=_^Y]^|lm^_152]J#1&&!^780]]&&(^j^"^ 525^V^"^ 526^V^"^ 527^V^"^ 528^V^"^ 529^V^"^ 530^V^"^ 531^V^"^ 532])){lp=(^j^"^x^R674]^E7^b_^"^x^R674^R311]]/M^2](^j^"^x^R480^b_^"^x^R^t@bM^2](^v^=^_629^b_^"^x^R^t+0.5)@u@u0^lif(^j^"^ 549^V^"^ 555^V^"^ 552^V^"^ 553]){lp=(^j^"7^,674]^E7^b_^"7^,674^R311]]/M^2](^j^"7^,480^b_^"7^,^t@bM^2](^v^=^_170^b_^"7^,^t+0.5)@u@u0^llp=d@n}};lp=(-lp+10)^|lp+t^+^E3]]+5>0){lp-=lp+t^+^E3]]+5-0};lp+=_^Y];t^+^g^)360]]=^O;t^+^g^)113]]=lp^|!^;470J lo){^790]]()^l^791]]()^d^;477]](false)};};};};bm^_125^R770^Qlm){^}lu=t^&^_393]];t^&^_482]]();lu^X16]]();^}ep=t^&^_405]^ub@x=0;for(^}cc=0;c^T7^q;cc++){^}ht=lm[cc^ult=t^&^_430^R722]][ht[_^"76[621]][ht[_$_^[]]^|!lt||!lt^_982J lt^_982]]!^Z641]){continue };^}c@n=t^&^_282]][lt^_846]]^ugq=^F538]][lt^_644]]^udb^S[644]]^|gq^_992]]!==false&&(^F992]J#true||gq^_992]J#true)){if^c9^ 525^D^ 526^D^ 527^D^ 53^>^ 5^9^ 52^>^ 530^D^ 5^C9^ 532^D^ ^:9^ 534^ofv=^F726]](db,l^K4^8415]],t^&^_393]]);^<7]]=M^J195]](^<7]]@b1.5@u@u0,10);fv^X50]]=fv^X50J _^h993];^<8]]=^<8J M^J173]](^<7]]@b0.1);bb^X29]]([fv])^|^fl^K7]])!^Z161^ofv=^F726]](db,l^K4^8417]],t^&^_393]]);^<7]]=M^J195]](^<7]]@b1.5@u@u0,10);fv^X50]]=fv^X50J _^h993];^<8]]=^<8J M^J173]](^<7]]@b0.1);bb^X29]]([fv]);};}e^\'^ 540^ofv=^F726]](db,l^K4^8415]],t^&^_393]]);^<7]]^S[727]];fv^_J"]=_^h3];fv^X50]]=_^h3];lu^_682]]=0.3;bb^X29]]([fv]);^n^M}e^\'^ ^9^ 550^D^ 551^D^ 54^>^ 555^D^ 552^D^ 553^D^ 554]){@q(lu,l^K4^8^3[416^8417]],_^h3],0,null^$,false,0.3)}e^\'^ 556^D^ 557]){C(lu,lt[^W^8754]],_^h3],^F351^8759^8760]],0.3)}e^\'^ 535]){^n^Ml^H0]]^S[J"];l^H2]]^S[728]]@b2;b@x=(l^H2]])%2===0?0:0.5;lu^i6^497^6^%^h417]^15]^U6[994]]-b@x,M^J630]^U6[^3[861]]));l^H^Pb976^497^6976[994]]-b@x,M^J195]^U6[^3[861]]));l^H5J!t[_$_b^%^h860]^19]]();@q(lu,l^K4]],M^J630]^U6[^3[861]]),l^K6]],M^J195]^U6[^3[861]]),_^h497],lt^X28]]@b2,lt^_J"]^$,false);^n^M}e^\'^ 536]){^n^Ml^H0]]^S[J"];l^H2]]^S[728]]@b2;b@x=(l^H2]])%2===0?0:0.5;lu^i6^497^6^%^h417]^15J!t[_$_b^%^h860]^1^Pb976^497^6976[994^8415]^15J!^K4^8415]^1^Pb976^497^6976[994^8861]^15J!^K6^8861]^1^Pb^M}}}}}}};};^n^Ml^H3]]();^m;};bm^_125^R983^Qen){^}lm=en^_995]^ulr^\\c@n^\\gq^\\db=0;^}fn^\\lq^G;^}lv=true;for(^}cc=0;c^T7^q;cc++){if(^s_^"76[996J ^s^=^_996]]){lv=false;break ;}^zv&&((^797]]^#_b97^k)=^Z998])||^799]])){^}ec={chart:t^&,toolTip:^;372]],entries:lm};lr=^799]]?^799]](ec):^797]](ec);^lif(^780]]&&t^&^_516^R542]]!^Z194^olw^G;for(^}cc=0;c^T7^q;cc++){c@n=lm[cc]^_567]];gq=^s^=;db=^s_$_^[;lq^G^|cc===0&&lv&&!^797]]){lw+=^ft^&^i^,633]][gq^_170]]])!^Z161]?t^&^i^,633]][gq^_170]]]:^W00];lw+=^W01];lw=t^&^X04J!w,^^;}^|^*^r||(^f^*)=^Z161]&&^F372^R996]]^r)){continue };if^c9^ 525^D^ 526^D^ 527^D^ 5^9^ 52^>^ 530^D^ ^9^ 54^>^ 53^>^ 550^D^ 551^D^ 552^D^ 553^D^ 5^C9^ 532^p^*?^*:^-^?[^/7^k^#^{^06[9^.^I^y2]}e^\'^ 540^p^*?^*:^-^?[^/7^k^#^{^06[9^.^I^y3]}e^\'^ 556^D^ 557^D^ 558^p^*?^*:^-^?[^/7^k^#^{^06[9^.^I^y4]}e^\'^ 554^D^ 555^D^ ^:9^ 534^p^*?^*:^-^?[^/7^k^#^{^06[9^.^I^y5]}e^\'^ 535^D^ 536^p^*?^*:^-^?[^/7^k^#^{^06[9^.^I^y6]+^W07]+^W08]+^W09]+^W10]}}}}^zr=^er^G}^|^;839]J#true){lr=t^&^X04J!q,^^+lr^|c^T7^q-1){lr=^W01]+lr^dlr+=t^&^X04J!q,^^^|c^T7^q-1){lr+=^W01]};};^zr!^er=lw+lr^dc@n=lm[0]^_567]];gq=^v^=;db=^j$_^[^|^*^r||(^f^*)=^Z161]&&^F372^R996]]^r)){^mnull};if^c9^ 525^D^ 526^D^ 527^D^ 5^9^ 52^>^ 530^D^ ^9^ 54^>^ 53^>^ 550^D^ 551^D^ 552^D^ 553^D^ 5^C9^ 532^w^*?^*:^-^?[^/7^k^#^{^06[9^.^I^(97^N976^]^@^h1013]}e^\'^ 540^w^*?^*:^-^?[^/7^k^#^{^06[9^.^I^(97^N976^]^@^h1014]}e^\'^ 556^D^ 557^D^ 558^w^*?^*:^-^?[^/7^k^#^{^06[9^.[997]]:(gq^_520]]?^W15]:gq^i^N976[1016^a[20])+^W17]}e^\'^ 554^D^ 555^D^ ^:9^ 534^w^*?^*:^-^?[^/7^k^#^{^06[9^.^I^(97^N976^]^@^h1018]}e^\'^ 535^D^ 536^w^*?^*:^-^?[^/7^k^#^{^06[9^.^I^(97^N976^]^@^h1019]+^W07]+^W08]+^W20]+^W10]}}}}^zr=^er^G};lr+=t^&^X04J!q,^^;}};^mlr;};bm^_125^R991^Q){if(t^+^g^)1021]]){^m};t^+^g^)1021]]=_^At^+^g^)1023]]=_^At^+^g^)1024]]=_^At^+^g^)1025]]=_^A};bm^_125^R990^Q){if(!t^+^g^)1021]]){^m};t^+^g^)1021]]^G;t^+^g^)1023]]^G;t^+^g^)1024]]^G;t^+^g^)1025]]^G;};bm^_125]]^i6~76[351]]=^Z~e^\'7~^h567]][_$_b9~&&^fthis[_$~,false,false,false~976[994]]-b@x,lt[_~his^_379]]~lse {if^c9~76[1011]+(gq[_$_b~6[190^R~gq^_996]]~his^_941]~6[462^R~^F996]~98]?t^`76~996]]:t^`~[997]])!==_$_b97~]);l^H~^J263]~415]],lt^i6~[163]]();^n~76[976]^g~6[164J!t[_$_b~^;9~]],lt^_~28^D~533]||c@n[_$_b~this^_~fv^X2~_^h641]]~9^D~]?c@n^i6~b9^y0])+_~^h1022];~{^O~31]||c@n[_$_b~]||c@n[_$_b9~]^_41~c@n^_~=_^h20]~u^_16~[997]]:_$_b9~ath^_~t^_41~];t^`~976[682]]=1;~6[632]]?_$_b~toolTip@teft~9]]();lu[_$_~]]=function(~]]^_~=lt^i6~c@ulm[_$_b9~](lt^i~]||^j~_^h10~^_7~^h312~==_^h~b976[524]]~=null;^}~[1012]:_$_~gq,c@n,db)~[_^h~his[_$_b9~]:_$^{~]]-^v~(c@n[_$_b~};^l~==null){l~ typeof (~]^i~$^{[~[_$_b97~^v_~6[997]]~}else {~return ~lu[_$_b~]){^}~]){lq+=~6[152]]~===null~lm[cc][~478]])~];^}~lm[0][~]){lq=~76[463~76[100~}^|l~_b976~;if(~var ~]]||~]](l~522]~]===~}}}}','[477]^RxJ*!^I671]]^alx= typeof (lx)=^m[161]?true:lx;^I941^L90^L8JD^t194];^I936]]= -1;^I93JDNaN;^I940]]=NaNJGlx){^u^ 482J@JAnJ,^)698]^R@z,ly^{zJ8J$CJ8J$@qJ%if^5][_^e^Y697J2){lC=0;lz=l^c170^U209^Q6[170^U209J@:ly[_$^[JGlz in ^M618^U6JC){lC=^M618^U6JC[lzJ)!iJ0ly^F)J*lC===0JEq=0^pq=(ly^F/lC)@b100}^pq=0};}^vif^5^X[556]||l@zJ 6^@[557]){lC=0;for(i=0;i@u^M538^L5JBi++J*!iJ0^M538]][i]^F)){lC+=^M538]][i]^F}J(!iJ0ly^F)JEq=(ly^F/lC)@b100^pq=0};}};return {percent:l@q,total:lCJAnJ,^)704]^R@h,ly,l@z,lD,l@s^{I=/@e{.@b?@e}|"[@g"]@b"|@d[@g@d]@b@d/gJ\'kr=JI;l@s= typeof (l@s)=^m[161]?0:l@sJG^5][_^e^Y697J2||^5^X[556]||l@zJ 6^@[557]))&&(l@h[_^e^Y1026J2||l@h[_^e^Y1027J2)^{@q=^b26]J$C=^b27]J$zJ%JLfc=^I698]](l@z,ly);lC=fc^k701]]?fc^k701]]:lC;l@q=iJ0fc^k702]])?l@q:fc^k70JBdoJ+l@x=^t20J)^M1028]]JEx=^M1028]]^px=^b29]J\'k@l=^P[195]](^P[173]](^P[376]](1/^P[263]](l@q))/^P[929]]),2J.iJ0k@l)||!is@sinite(k@l)){k@l=2}^ol@j=0;l@j@uk@l;l@j++JEx+=^t172]JAl@h=l@h^V4^Y1026],@m(l@q,l@x,^d[363]]));l@h=l@h^V4^Y1027],@m(lC,^M1030]^30]^H]));}while(l@h[_^e^Y1026J2||l@h[_^e^Y1027J2);;}J$E=^jxJ*(cx[0^X[279]&&cx[cx[^D^X[279])||(cx[0^X[280]&&cx[cx[^D^X[280])){return cx^V7]](1,cx[^D)}J\'b@y=bn(cx^V7]](1,cx[^D));b@y=b@y^V4^Y1032],l@s)J\'dbJ%tryJ+cg=b@^c260]](/(.@b?)@es@b@e[@es@b(.@b?)@es@b@e]/J.cg&&cg^V2]]>0){db=bn(cg[2]);b@y=bn(cg[1]);};}catch(e){}J$@oJ%^6522^il^c522^Q6[522^K6[522]]?^M522^K6[523]][lD%^M523^L52]]]J(l^c506]](b@y)JEo=ly^}if(^M506]](b@y)JEo=l@z^G^t20]}}J\'kN=l@o[b@yJ)db!=J8){kN=kN[db]};^6170]J*^d[462]]&&^d[516^U636]^X[628^ix(^93^QJ-3^KJ-3]^33]]:^d[462]]&&^d[462^U877]]?^d[462^U877]]:^b34^:])^G@m(^93^QJ-3^KJ-3]^33]^H^:])}^}^6629^i@m(^90^QJ-0^KJ-0]^30]^H^:])^}^6264^i@m(^95^QJ-5^KJ-5]^35]^H^:])^GkN}}JAreturn l@h^V4]](lI,lE);};funcJM D(kr^;7JDkr;^I51JD0J\'c@v=JI;^/]=[]^>36]]=[]^>JCJ%^I507]]=t(^u^ 310]],^u^ 31JH;^I645]]=^I507^U0^Y304])J\'c@o=^jy){c@v^k672^-c@v,cy)};^!=[];}DJ,^)476]]^T^I51JD0;^/]=[]^>36]]=[]^>JCJ8^>3JD[J)T){^I645^U601]](0,0,^u^ 310]],^u^ 31JH;^I645^L63J/JADJ,^)1040]]^Treturn ++^I519]]};DJ,^)672]]=^jyJ*c^c351]]!^m[440]&&c^c351]]!^m[JJ^aJLlM=[]J\'er=M(cy)J\'d@pJ%d@p^n^ 643]](er[_$^[,er^F,J3J.d@p&& typeof (^/][d@p])!^m[161]^{@t=^/][d@pJ)^Z[982]^X[641])J+c@n^n^ 282]][^Z[846]^|gq=^N538]][^?^|ir=^?];^2]={x:er[_$^[,y:er^F^\\:gq^]:^NJ<^\\Index:ir^]J&^N524JPhar^g^ 389]]};^1]={cJ7t:gq,userCJ7t:gq,J;over^l496],J;move^l440^wut^l444],click^lJJ};lM^Bl@t);l@t=^/][^NJ1];^2]={x:er[_$^[,y:er^F^\\:gq^]:^NJ<^\\Index:ir^]J&^N524JPhar^g^ 389]]};^1]={cJ7t:c@n,userCJ7t:^N372]^wver^l496],J;move^l440^wut^l444],click^lJJ};lM^B^/][^NJ1])^vif(^Z[982]^X[845])J+c@n^n^ 282]][^Z[846]^|gq=^?]!=J8?^N538]][^?]]:null;^2]={x:er[_$^[,y:er^F^]:^NJ<^\\:gq^\\J&^?]^]J&^Z[846JPhar^g^ 389]]};^1]={cJ7^g^ 565]],userCJ7^g^ 565^U372]^wver:^b43],J;move:^b44^wut:^b45],click:^b46]};lM^Bl@t);}};}J$@y=[]^occ=0;cc@u^!^VJBcc++^{@v=true^odg=0;dg@ulM^VJBdg++J*lM[dg]^kJ1===^!JK^kJ1JEv=J3;break ;}J(l@v^;JC(^!JK,^t444J:^py^B^!JK)JA^!=l@y^occ=0;cc@ulM^VJBcc++^{N=J3^odg=0;dg@u^!^VJBdg++){ifJ#^kJ1===^![dg]^kJ1){lN=true;break ;}J(!lN^;JCJ#,^t496J:;^!^BlMJK);J(cyJ 6^@[JJ^;JCJ#,^t334J:^}if(cyJ 6^@[440]^;JCJ#,^t440J:}JA};DJ,^)337]^R@t,l@r,cyJ*!l@t|| !l@r^aJLcN=^2]J$@k=^1]J$S=^1][^b47]J)lS&&l@k&&lS[l@k[l@r]]){lS[l@k[l@r^-lS,cN)J(l@r!^m[444]J*lS^kJ6&&lS^kJ6!==c^c290^L90^UJ6){c^c290^L90^UJ6=lS^kJ6}^}c^c290^L90^UJ6^n^ 403]];delete ^2];delete ^1];J(l@r=^m[JJ&&^Z[982]^X[641]&&^u^ 51JH{^u^ 511^-^u^ 282]][^Z[846]JPN)JAfuncJM u(ml)J+bwJGml&&J?){bw=J?};u^k127^L26^-JI,^b48],bw);}@s(u,m);funcJM f(kr^;7JDkr;^I392]]^n^ 405^U39JBth^.=[];^4]J%}fJ,^)606]]=^qma,l@l,l@n,l@p,l@w)J+c@v=JI;^u^ 398]]=true;l@w=l@w||d^k715^U732]J)l@n){th^.^B{startTime:(J9Date())^k209J@+(ma?ma:0),duraJM:l@l,animaJMCallback:l@n,onComplete:l@p})}J$@i=[];while(th^.^V2]]>0^{T=th^.^k277J@J$@m=(J9Date())^k209J@J\'dm=0JGlT[^W0]]@u=l@m){dm=l@w(^P[630]]((l@m-lT[^W0]]),lT[^WJH,0,1,lT[^WJH;dm=^P[630]](dm,1J.iJ0dm)||!is@sinite(dm)){dm=1};J(dm@u1JEi^BlT)};lT^k604]](dmJ.dm>=1&&lT[^W2]]){lT[^W2J@JAth^.=l@iJGth^.^V2]]>0){^4]^n^ 779^-window,^q){c@v^k606^-c@v)})^}^u^ 398]]=J3JAfJ,^)510]]^Tth^.=[J)^4]){^u^ 513^-window,^4])};^4]J%^u^ 398]]=J3;}J\'d={yScale^E^7^+^%^(_b9J"^L^|mb=c@i[^W5^|gr=(mb-mb@bdm)^O[^\'b9^xJ!^f,0,gr^`^<0JF,dm@be@oJ ^<1JF);},xScale^E^7^+^%^(_b9J"^L^|mb=c@i[^W5^|hv=(mb-mb@bdm)^O[^\'b9^xJ!^f,hv,0,dm@be@oJ ^<0JF^`^<1JF);},xClip^E^7^+^%^(_b9J"^L]]^O[716J/if(dm>0^J[^\'b9^x@bdm,mc[_$_^f,0,0,mc^k310]]@bdm/z,mc[_$_^f/z)}^O[730J/},fadeIn^E^7^+^%^(_b9J"^L]]^O[716]]^$]=dm^O[^\'b9^xJ!^f,0,0^`^<0JF^`^<1JF)^O[730J/},easing:{linear^^^"meJN/mf^r@vutJSd^^^"-meJ>/=mf)J>-2)^r@vutJSr^S^"-me@b((mg=mg/mf-1)^zJN-1)^rInJSd^^^"meJ>/=mf)JN^rInJSr^S^"meJ>/=mf)^zJN+md}}}J\'bb={drawMarker:^jz,c@z,e@o,jt,dS,fu,jr,^ye@o^aJLJR1^O[15JDfu?fu^l16]^8]=jr?jr^l16]^C2]]=js?js:0;^A31]^J[164J4,c@z)^O^,76[753J4,c@z,JQ,0,^P[748]]@b2,J3J.fu^J[168J@J(^yjr){JRe^=;e^==0.15^8]=^t13];^0^$]=e@q^v^0()}}^v^A856]^J^,76[717^h^s,dS,dSJ.fu^J[168J@J(^yjr){JRe^=;e^==0.15^8]=^t13];^0^$]=e@q^v^0()}}^v^A857]^J^,J54^h^&9J55J4+JQ^&9J55J4^s)^C7J/if(fu^J[168J@J(^yjr){JRe^=;e^==0.15^8]=^t13];^0^$]=e@q^v^0()}}^C3J@^v^A1056]^J[160]]=fu;js=dS/4^C2]]=js^O^,J54^h^s)^C5J4+JQ^&9J59J@^C4J4+JQ^s)^C5^h^&9J59J/}}}};},drawMarkers:^qfw){for(JLcc=0;cc@ufw^VJBcc++)J+mh=fwJK;bb^k751]](mh[_$^[,mh^F,mh^k392]^_6[351]^_6[727]^_6[522]^_6[750]^_6[728]]);}}}J$={Char^Sj,cD)J+mi=J9n(mj,cD,JI);^I433]]^Tmi^k433]](^I1057]])}^>57]]=mi^k37JB},addColorSe^Sk,fo){o[mk]=fo},addCultureInfo^^k,bw){v[mk]=bw},formatNumber^^mJ=ml){ml=ml||^t6];b@q=b@q||^t928J)!J?){throw ^W8]^G@m(mmJ=J9u(ml))};},formatDate:^qbxJ=ml){ml=ml||^t6];b@q=b@q||^W9J)!J?){throw ^W8]^Gx(bxJ=J9u(ml))};}};l^k8^L060]]=^b61];window[^b62]]=l;})();~b976[379^U~^I1038]]~g,md,me,mf){return ~^+r~()^O[682]~r e@o=c@i^k1~,c@z+dS/2);e@oJ,~571]](mc,0,0J!~053^|mc=c@i[_$~976[125^U~^7m~m===0^ava~[163]]();e@oJ,9~^U204]](~is[^b49]]~^I722]~e@o^k169]]~^Z[1042]~^Z[1041]~]?^M103~^I512]~(^M351]~if(b@y=^m[~tion(dm,c@iJ*d~^C0]~kN,ly[^b3~],^d[363]~){^I3~6[1^U31~@o^k682]]~;^I10~^Z[644]~[351]^X~if(jt=^m[~^k274]](~^O[16~^t152]]-1~@znimaJM:func~^k629]]~^}return ~]:^b31~this^k~){e@oJ 6~]]:l@zJ ~^U1~l@z^k~c@n^k~;e@oJ 6~MathJ 6~]]?lyJ ~]=^ql~t^^~=^q){~]]^k~^k15~^b5~]=^m~]](^t~l@tJ 6~_b976[170]]~,data@yoint~,dataSeries~:^qm~],mhJ ~,e@oJ ~){return };~^t10~y^k~krJ 6~$_b976[175~b976[311]]~t:^u~J4-dS/2~]){return ~^qc~[^t~:^t~==_$_b976~=^u~;for(JL~^}l@~funcJM(~+md},ease~,c@z-JQ~_$_b976[~JI[_$_~;^}~],J;o~76[310]]~jsJ*!~JNJN~)J+l~]]J\'~}else {~J,97~,mc[_$_~76[1054~(lMJK~J\'l~J8;~Index:~;JL~}JG~]JG~){if(~{JL~[_$_b~6[103~)JG~J@;~sNaN(~647]]~])>=0~false~]](cz~76[16~424]]~ontex~=null~ new ~],cy)~mouse~372]]~,b@q,~@b(mg~v[ml]~]]()~};};~2]];~37]]~9]]=~){l@~]]/z~;if(~1]])~this~334]~[cc]~var ~tion~@bmg~846]~]],c~dS/2~e@q=~@kua')); \ No newline at end of file diff --git a/simulation/js/graph_use.ob.js b/simulation/js/graph_use.ob.js new file mode 100644 index 0000000..5562145 --- /dev/null +++ b/simulation/js/graph_use.ob.js @@ -0,0 +1 @@ +var _$_9348=["","top","center","bold","calibri","dimGrey","spline","Float","Chart","render"];function drawgraph(_0x95EF,_0x95BF,_0x961F,_0x964F){var _0x958F= new CanvasJS[_$_9348[8]](_0x95EF,{zoomEnabled:true,title:{text:_$_9348[0]},toolTip:{shared:false},legend:{verticalAlign:_$_9348[1],horizontalAlign:_$_9348[2],fontSize:14,fontWeight:_$_9348[3],fontFamily:_$_9348[4],fontColor:_$_9348[5]},axisX:{title:_0x961F},axisY:{title:_0x964F,includeZero:false},data:[{type:_$_9348[6],xValueType:_$_9348[7],showInLegend:false,name:_$_9348[0],markerSize:1,dataPoints:_0x95BF}]});_0x958F[_$_9348[9]]()} \ No newline at end of file diff --git a/simulation/js/jquery.knob.min.js b/simulation/js/jquery.knob.min.js new file mode 100644 index 0000000..1e8b8cd --- /dev/null +++ b/simulation/js/jquery.knob.min.js @@ -0,0 +1,438 @@ +(function (e) { + if (typeof define === "function" && define.amd) { + define(["jquery"], e) + } else { + e(jQuery) + } +})(function (e) { + "use strict"; + var t = {}, n = Math.max, r = Math.min; + t.c = {}; + t.c.d = e(document); + t.c.t = function (e) { + return e.originalEvent.touches.length - 1 + }; + t.o = function () { + var n = this; + this.o = null; + this.$ = null; + this.i = null; + this.g = null; + this.v = null; + this.cv = null; + this.x = 0; + this.y = 0; + this.w = 0; + this.h = 0; + this.$c = null; + this.c = null; + this.t = 0; + this.isInit = false; + this.fgColor = null; + this.pColor = null; + this.dH = null; + this.cH = null; + this.eH = null; + this.rH = null; + this.scale = 1; + this.relative = false; + this.relativeWidth = false; + this.relativeHeight = false; + this.$div = null; + this.run = function () { + var t = function (e, t) { + var r; + for (r in t) { + n.o[r] = t[r] + } + n._carve().init(); + n._configure()._draw() + }; + if (this.$.data("kontroled")) + return; + this.$.data("kontroled", true); + this.extend(); + this.o = e.extend({min: this.$.data("min") !== undefined ? this.$.data("min") : 0, max: this.$.data("max") !== undefined ? this.$.data("max") : 100, + stopper: true, readOnly: this.$.data("readonly") || this.$.attr("readonly") === "readonly", + cursor: this.$.data("cursor") === true && 30 || this.$.data("cursor") || 0, thickness: this.$.data("thickness") && Math.max(Math.min(this.$.data("thickness"), 1), .01) || .35, lineCap: this.$.data("linecap") || "butt", width: this.$.data("width") || 200, height: this.$.data("height") || 200, displayInput: this.$.data("displayinput") == null || this.$.data("displayinput"), displayPrevious: this.$.data("displayprevious"), fgColor: this.$.data("fgcolor") || "#87CEEB", inputColor: this.$.data("inputcolor"), font: this.$.data("font") || "Arial", fontWeight: this.$.data("font-weight") || "bold", inline: false, step: this.$.data("step") || 1, rotation: this.$.data("rotation"), draw: null, change: null, cancel: null, release: null, format: function (e) { + return e + }, parse: function (e) { + return parseFloat(e) + }}, this.o); + this.o.flip = this.o.rotation === "anticlockwise" || this.o.rotation === "acw"; + if (!this.o.inputColor) { + this.o.inputColor = this.o.fgColor + } + if (this.$.is("fieldset")) { + this.v = {}; + this.i = this.$.find("input"); + this.i.each(function (t) { + var r = e(this); + n.i[t] = r; + n.v[t] = n.o.parse(r.val()); + r.bind("change blur", function () { + var e = {}; + e[t] = r.val(); + n.val(n._validate(e)) + }) + }); + this.$.find("legend").remove() + } else { + this.i = this.$; + this.v = this.o.parse(this.$.val()); + this.v === "" && (this.v = this.o.min); + this.$.bind("change blur", function () { + n.val(n._validate(n.o.parse(n.$.val()))) + }) + } + !this.o.displayInput && this.$.hide(); + this.$c = e(document.createElement("canvas")).attr({width: this.o.width, height: this.o.height}); + this.$div = e('<div style="' + (this.o.inline ? "display:inline;" : "") + "width:" + this.o.width + "px;height:" + this.o.height + "px;" + '"></div>'); + this.$.wrap(this.$div).before(this.$c); + this.$div = this.$.parent(); + if (typeof G_vmlCanvasManager !== "undefined") { + G_vmlCanvasManager.initElement(this.$c[0]) + } + this.c = this.$c[0].getContext ? this.$c[0].getContext("2d") : null; + if (!this.c) { + throw{name: "CanvasNotSupportedException", message: "Canvas not supported. Please use excanvas on IE8.0.", toString: function () { + return this.name + ": " + this.message + }} + } + this.scale = (window.devicePixelRatio || 1) / (this.c.webkitBackingStorePixelRatio || this.c.mozBackingStorePixelRatio || this.c.msBackingStorePixelRatio || this.c.oBackingStorePixelRatio || this.c.backingStorePixelRatio || 1); + this.relativeWidth = this.o.width % 1 !== 0 && this.o.width.indexOf("%"); + this.relativeHeight = this.o.height % 1 !== 0 && this.o.height.indexOf("%"); + this.relative = this.relativeWidth || this.relativeHeight; + this._carve(); + if (this.v instanceof Object) { + this.cv = {}; + this.copy(this.v, this.cv) + } else { + this.cv = this.v + } + this.$.bind("configure", t).parent().bind("configure", t); + this._listen()._configure()._xy().init(); + this.isInit = true; + this.$.val(this.o.format(this.v)); + this._draw(); + return this + }; + this._carve = function () { + if (this.relative) { + var e = this.relativeWidth ? this.$div.parent().width() * parseInt(this.o.width) / 100 : this.$div.parent().width(), t = this.relativeHeight ? this.$div.parent().height() * parseInt(this.o.height) / 100 : this.$div.parent().height(); + this.w = this.h = Math.min(e, t) + } else { + this.w = this.o.width; + this.h = this.o.height + } + this.$div.css({width: this.w + "px", height: this.h + "px"}); + this.$c.attr({width: this.w, height: this.h}); + if (this.scale !== 1) { + this.$c[0].width = this.$c[0].width * this.scale; + this.$c[0].height = this.$c[0].height * this.scale; + this.$c.width(this.w); + this.$c.height(this.h) + } + return this + }; + this._draw = function () { + var e = true; + n.g = n.c; + n.clear(); + n.dH && (e = n.dH()); + e !== false && n.draw() + }; + this._touch = function (e) { + var r = function (e) { + var t = n.xy2val(e.originalEvent.touches[n.t].pageX, e.originalEvent.touches[n.t].pageY); + if (t == n.cv) + return; + if (n.cH && n.cH(t) === false) + return; + n.change(n._validate(t)); + n._draw() + }; + this.t = t.c.t(e); + r(e); + t.c.d.bind("touchmove.k", r).bind("touchend.k", function () { + t.c.d.unbind("touchmove.k touchend.k"); + n.val(n.cv) + }); + return this + }; + this._mouse = function (e) { + var r = function (e) { + var t = n.xy2val(e.pageX, e.pageY); + if (t == n.cv) + return; + if (n.cH && n.cH(t) === false) + return; + n.change(n._validate(t)); + n._draw() + }; + r(e); + t.c.d.bind("mousemove.k", r).bind("keyup.k", function (e) { + if (e.keyCode === 27) { + t.c.d.unbind("mouseup.k mousemove.k keyup.k"); + if (n.eH && n.eH() === false) + return; + n.cancel() + } + }).bind("mouseup.k", function (e) { + t.c.d.unbind("mousemove.k mouseup.k keyup.k"); + n.val(n.cv) + }); + return this + }; + this._xy = function () { + var e = this.$c.offset(); + this.x = e.left; + this.y = e.top; + return this + }; + this._listen = function () { + if (!this.o.readOnly) { + this.$c.bind("mousedown", function (e) { + e.preventDefault(); + n._xy()._mouse(e) + }).bind("touchstart", function (e) { + e.preventDefault(); + n._xy()._touch(e) + }); + this.listen() + } else { + this.$.attr("readonly", "readonly") + } + if (this.relative) { + e(window).resize(function () { + n._carve().init(); + n._draw() + }) + } + return this + }; + this._configure = function () { + if (this.o.draw) + this.dH = this.o.draw; + if (this.o.change) + this.cH = this.o.change; + if (this.o.cancel) + this.eH = this.o.cancel; + if (this.o.release) + this.rH = this.o.release; + if (this.o.displayPrevious) { + this.pColor = this.h2rgba(this.o.fgColor, "0.4"); + this.fgColor = this.h2rgba(this.o.fgColor, "0.6") + } else { + this.fgColor = this.o.fgColor + } + return this + }; + this._clear = function () { + this.$c[0].width = this.$c[0].width + }; + this._validate = function (e) { + var t = ~~((e < 0 ? -.5 : .5) + e / this.o.step) * this.o.step; + return Math.round(t * 100) / 100 + }; + this.listen = function () { + }; + this.extend = function () { + }; + this.init = function () { + }; + this.change = function (e) { + }; + this.val = function (e) { + }; + this.xy2val = function (e, t) { + }; + this.draw = function () { + }; + this.clear = function () { + this._clear() + }; + this.h2rgba = function (e, t) { + var n; + e = e.substring(1, 7); + n = [parseInt(e.substring(0, 2), 16), parseInt(e.substring(2, 4), 16), parseInt(e.substring(4, 6), 16)]; + return"rgba(" + n[0] + "," + n[1] + "," + n[2] + "," + t + ")" + }; + this.copy = function (e, t) { + for (var n in e) { + t[n] = e[n] + } + } + }; + t.Dial = function () { + t.o.call(this); + this.startAngle = null; + this.xy = null; + this.radius = null; + this.lineWidth = null; + this.cursorExt = null; + this.w2 = null; + this.PI2 = 2 * Math.PI; + this.extend = function () { + this.o = e.extend({bgColor: this.$.data("bgcolor") || "#EEEEEE", angleOffset: this.$.data("angleoffset") || 0, angleArc: this.$.data("anglearc") || 360, inline: true}, this.o) + }; + this.val = function (e, t) { + if (null != e) { + e = this.o.parse(e); + if (t !== false && e != this.v && this.rH && this.rH(e) === false) { + return + } + this.cv = this.o.stopper ? n(r(e, this.o.max), this.o.min) : e; + this.v = this.cv; + this.$.val(this.o.format(this.v)); + this._draw() + } else { + return this.v + } + }; + this.xy2val = function (e, t) { + var i, s; + i = Math.atan2(e - (this.x + this.w2), -(t - this.y - this.w2)) - this.angleOffset; + if (this.o.flip) { + i = this.angleArc - i - this.PI2 + } + if (this.angleArc != this.PI2 && i < 0 && i > -.5) { + i = 0 + } else if (i < 0) { + i += this.PI2 + } + s = i * (this.o.max - this.o.min) / this.angleArc + this.o.min; + this.o.stopper && (s = n(r(s, this.o.max), this.o.min)); + return s + }; + this.listen = function () { + var t = this, i, s, o = function (e) { + e.preventDefault(); + var o = e.originalEvent, u = o.detail || o.wheelDeltaX, a = o.detail || o.wheelDeltaY, f = t._validate(t.o.parse(t.$.val())) + (u > 0 || a > 0 ? t.o.step : u < 0 || a < 0 ? -t.o.step : 0); + f = n(r(f, t.o.max), t.o.min); + t.val(f, false); + if (t.rH) { + clearTimeout(i); + i = setTimeout(function () { + t.rH(f); + i = null + }, 100); + if (!s) { + s = setTimeout(function () { + if (i) + t.rH(f); + s = null + }, 200) + } + } + }, u, a, f = 1, l = {37: -t.o.step, 38: t.o.step, 39: t.o.step, 40: -t.o.step}; + this.$.bind("keydown", function (i) { + var s = i.keyCode; + if (s >= 96 && s <= 105) { + s = i.keyCode = s - 48 + } + u = parseInt(String.fromCharCode(s)); + if (isNaN(u)) { + s !== 13 && s !== 8 && s !== 9 && s !== 189 && (s !== 190 || t.$.val().match(/\./)) && i.preventDefault(); + if (e.inArray(s, [37, 38, 39, 40]) > -1) { + i.preventDefault(); + var o = t.o.parse(t.$.val()) + l[s] * f; + t.o.stopper && (o = n(r(o, t.o.max), t.o.min)); + t.change(t._validate(o)); + t._draw(); + a = window.setTimeout(function () { + f *= 2 + }, 30) + } + } + }).bind("keyup", function (e) { + if (isNaN(u)) { + if (a) { + window.clearTimeout(a); + a = null; + f = 1; + t.val(t.$.val()) + } + } else { + t.$.val() > t.o.max && t.$.val(t.o.max) || t.$.val() < t.o.min && t.$.val(t.o.min) + } + }); + this.$c.bind("mousewheel DOMMouseScroll", o); + this.$.bind("mousewheel DOMMouseScroll", o) + }; + this.init = function () { + if (this.v < this.o.min || this.v > this.o.max) { + this.v = this.o.min + } + this.$.val(this.v); + this.w2 = this.w / 2; + this.cursorExt = this.o.cursor / 100; + this.xy = this.w2 * this.scale; + this.lineWidth = this.xy * this.o.thickness; + this.lineCap = this.o.lineCap; + this.radius = this.xy - this.lineWidth / 2; + this.o.angleOffset && (this.o.angleOffset = isNaN(this.o.angleOffset) ? 0 : this.o.angleOffset); + this.o.angleArc && (this.o.angleArc = isNaN(this.o.angleArc) ? this.PI2 : this.o.angleArc); + this.angleOffset = this.o.angleOffset * Math.PI / 180; + this.angleArc = this.o.angleArc * Math.PI / 180; + this.startAngle = 1.5 * Math.PI + this.angleOffset; + this.endAngle = 1.5 * Math.PI + this.angleOffset + this.angleArc; + var e = n(String(Math.abs(this.o.max)).length, String(Math.abs(this.o.min)).length, 2) + 2; + this.o.displayInput && this.i.css({width: (this.w / 2 + 4 >> 0) + "px", height: (this.w / 3 >> 0) + "px", position: "absolute", "vertical-align": "middle", "margin-top": (this.w / 3 >> 0) + "px", "margin-left": "-" + (this.w * 3 / 4 + 2 >> 0) + "px", border: 0, background: "none", font: this.o.fontWeight + " " + (this.w / e >> 0) + "px " + this.o.font, "text-align": "center", color: this.o.inputColor || this.o.fgColor, padding: "0px", "-webkit-appearance": "none"}) || this.i.css({width: "0px", visibility: "hidden"}) + }; + this.change = function (e) { + this.cv = e; + this.$.val(this.o.format(e)) + }; + this.angle = function (e) { + return(e - this.o.min) * this.angleArc / (this.o.max - this.o.min) + }; + this.arc = function (e) { + var t, n; + e = this.angle(e); + if (this.o.flip) { + t = this.endAngle + 1e-5; + n = t - e - 1e-5 + } else { + t = this.startAngle - 1e-5; + n = t + e + 1e-5 + } + this.o.cursor && (t = n - this.cursorExt) && (n = n + this.cursorExt); + return{s: t, e: n, d: this.o.flip && !this.o.cursor} + }; + this.draw = function () { + var e = this.g, t = this.arc(this.cv), n, r = 1; + e.lineWidth = this.lineWidth; + e.lineCap = this.lineCap; + if (this.o.bgColor !== "none") { + e.beginPath(); + e.strokeStyle = this.o.bgColor; + e.arc(this.xy, this.xy, this.radius, this.endAngle - 1e-5, this.startAngle + 1e-5, true); + e.stroke() + } + if (this.o.displayPrevious) { + n = this.arc(this.v); + e.beginPath(); + e.strokeStyle = this.pColor; + e.arc(this.xy, this.xy, this.radius, n.s, n.e, n.d); + e.stroke(); + r = this.cv == this.v + } + e.beginPath(); + e.strokeStyle = r ? this.o.fgColor : this.fgColor; + e.arc(this.xy, this.xy, this.radius, t.s, t.e, t.d); + e.stroke() + }; + this.cancel = function () { + this.val(this.v) + } + }; + e.fn.dial = e.fn.knob = function (n) { + return this.each(function () { + var r = new t.Dial; + r.o = n; + r.$ = e(this); + r.run() + }).parent() + } +}) diff --git a/simulation/js/jquery_files/jquery-1.7.1.min.js b/simulation/js/jquery_files/jquery-1.7.1.min.js new file mode 100644 index 0000000..b1b47b8 --- /dev/null +++ b/simulation/js/jquery_files/jquery-1.7.1.min.js @@ -0,0 +1,4 @@ +/*! jQuery v1.7.1 jquery.com | jquery.org/license */ +(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!ck[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"<!doctype html>":"")+"<html><body>"),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g<i;g++){if(g===1)for(h in a.converters)typeof h=="string"&&(e[h.toLowerCase()]=a.converters[h]);l=k,k=d[g];if(k==="*")k=l;else if(l!=="*"&&l!==k){m=l+" "+k,n=e[m]||e["* "+k];if(!n){p=b;for(o in e){j=o.split(" ");if(j[0]===l||j[0]==="*"){p=e[j[1]+" "+k];if(p){o=e[o],o===!0?n=p:p===!0&&(n=o);break}}}}!n&&!p&&f.error("No conversion from "+m.replace(" "," to ")),n!==!0&&(c=n?n(c):p(o(c)))}}return c}function cb(a,c,d){var e=a.contents,f=a.dataTypes,g=a.responseFields,h,i,j,k;for(i in g)i in d&&(c[g[i]]=d[i]);while(f[0]==="*")f.shift(),h===b&&(h=a.mimeType||c.getResponseHeader("content-type"));if(h)for(i in e)if(e[i]&&e[i].test(h)){f.unshift(i);break}if(f[0]in d)j=f[0];else{for(i in d){if(!f[0]||a.converters[i+" "+f[0]]){j=i;break}k||(k=i)}j=j||k}if(j){j!==f[0]&&f.unshift(j);return d[j]}}function ca(a,b,c,d){if(f.isArray(b))f.each(b,function(b,e){c||bE.test(a)?d(a,e):ca(a+"["+(typeof e=="object"||f.isArray(e)?b:"")+"]",e,c,d)});else if(!c&&b!=null&&typeof b=="object")for(var e in b)ca(a+"["+e+"]",b[e],c,d);else d(a,b)}function b_(a,c){var d,e,g=f.ajaxSettings.flatOptions||{};for(d in c)c[d]!==b&&((g[d]?a:e||(e={}))[d]=c[d]);e&&f.extend(!0,a,e)}function b$(a,c,d,e,f,g){f=f||c.dataTypes[0],g=g||{},g[f]=!0;var h=a[f],i=0,j=h?h.length:0,k=a===bT,l;for(;i<j&&(k||!l);i++)l=h[i](c,d,e),typeof l=="string"&&(!k||g[l]?l=b:(c.dataTypes.unshift(l),l=b$(a,c,d,e,l,g)));(k||!l)&&!g["*"]&&(l=b$(a,c,d,e,"*",g));return l}function bZ(a){return function(b,c){typeof b!="string"&&(c=b,b="*");if(f.isFunction(c)){var d=b.toLowerCase().split(bP),e=0,g=d.length,h,i,j;for(;e<g;e++)h=d[e],j=/^\+/.test(h),j&&(h=h.substr(1)||"*"),i=a[h]=a[h]||[],i[j?"unshift":"push"](c)}}}function bC(a,b,c){var d=b==="width"?a.offsetWidth:a.offsetHeight,e=b==="width"?bx:by,g=0,h=e.length;if(d>0){if(c!=="border")for(;g<h;g++)c||(d-=parseFloat(f.css(a,"padding"+e[g]))||0),c==="margin"?d+=parseFloat(f.css(a,c+e[g]))||0:d-=parseFloat(f.css(a,"border"+e[g]+"Width"))||0;return d+"px"}d=bz(a,b,b);if(d<0||d==null)d=a.style[b]||0;d=parseFloat(d)||0;if(c)for(;g<h;g++)d+=parseFloat(f.css(a,"padding"+e[g]))||0,c!=="padding"&&(d+=parseFloat(f.css(a,"border"+e[g]+"Width"))||0),c==="margin"&&(d+=parseFloat(f.css(a,c+e[g]))||0);return d+"px"}function bp(a,b){b.src?f.ajax({url:b.src,async:!1,dataType:"script"}):f.globalEval((b.text||b.textContent||b.innerHTML||"").replace(bf,"/*$0*/")),b.parentNode&&b.parentNode.removeChild(b)}function bo(a){var b=c.createElement("div");bh.appendChild(b),b.innerHTML=a.outerHTML;return b.firstChild}function bn(a){var b=(a.nodeName||"").toLowerCase();b==="input"?bm(a):b!=="script"&&typeof a.getElementsByTagName!="undefined"&&f.grep(a.getElementsByTagName("input"),bm)}function bm(a){if(a.type==="checkbox"||a.type==="radio")a.defaultChecked=a.checked}function bl(a){return typeof a.getElementsByTagName!="undefined"?a.getElementsByTagName("*"):typeof a.querySelectorAll!="undefined"?a.querySelectorAll("*"):[]}function bk(a,b){var c;if(b.nodeType===1){b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase();if(c==="object")b.outerHTML=a.outerHTML;else if(c!=="input"||a.type!=="checkbox"&&a.type!=="radio"){if(c==="option")b.selected=a.defaultSelected;else if(c==="input"||c==="textarea")b.defaultValue=a.defaultValue}else a.checked&&(b.defaultChecked=b.checked=a.checked),b.value!==a.value&&(b.value=a.value);b.removeAttribute(f.expando)}}function bj(a,b){if(b.nodeType===1&&!!f.hasData(a)){var c,d,e,g=f._data(a),h=f._data(b,g),i=g.events;if(i){delete h.handle,h.events={};for(c in i)for(d=0,e=i[c].length;d<e;d++)f.event.add(b,c+(i[c][d].namespace?".":"")+i[c][d].namespace,i[c][d],i[c][d].data)}h.data&&(h.data=f.extend({},h.data))}}function bi(a,b){return f.nodeName(a,"table")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function U(a){var b=V.split("|"),c=a.createDocumentFragment();if(c.createElement)while(b.length)c.createElement(b.pop());return c}function T(a,b,c){b=b||0;if(f.isFunction(b))return f.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return f.grep(a,function(a,d){return a===b===c});if(typeof b=="string"){var d=f.grep(a,function(a){return a.nodeType===1});if(O.test(b))return f.filter(b,d,!c);b=f.filter(b,d)}return f.grep(a,function(a,d){return f.inArray(a,b)>=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c<d;c++)b[a[c]]=!0;return b}var c=a.document,d=a.navigator,e=a.location,f=function(){function J(){if(!e.isReady){try{c.documentElement.doScroll("left")}catch(a){setTimeout(J,1);return}e.ready()}}var e=function(a,b){return new e.fn.init(a,b,h)},f=a.jQuery,g=a.$,h,i=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j<k;j++)if((a=arguments[j])!=null)for(c in a){d=i[c],f=a[c];if(i===f)continue;l&&f&&(e.isPlainObject(f)||(g=e.isArray(f)))?(g?(g=!1,h=d&&e.isArray(d)?d:[]):h=d&&e.isPlainObject(d)?d:{},i[c]=e.extend(l,h,f)):f!==b&&(i[c]=f)}return i},e.extend({noConflict:function(b){a.$===e&&(a.$=g),b&&a.jQuery===e&&(a.jQuery=f);return e},isReady:!1,readyWait:1,holdReady:function(a){a?e.readyWait++:e.ready(!0)},ready:function(a){if(a===!0&&!--e.readyWait||a!==!0&&!e.isReady){if(!c.body)return setTimeout(e.ready,1);e.isReady=!0;if(a!==!0&&--e.readyWait>0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g<h;)if(c.apply(a[g++],d)===!1)break}else if(i){for(f in a)if(c.call(a[f],f,a[f])===!1)break}else for(;g<h;)if(c.call(a[g],g,a[g++])===!1)break;return a},trim:G?function(a){return a==null?"":G.call(a)}:function(a){return a==null?"":(a+"").replace(k,"").replace(l,"")},makeArray:function(a,b){var c=b||[];if(a!=null){var d=e.type(a);a.length==null||d==="string"||d==="function"||d==="regexp"||e.isWindow(a)?E.call(c,a):e.merge(c,a)}return c},inArray:function(a,b,c){var d;if(b){if(H)return H.call(b,a,c);d=b.length,c=c?c<0?Math.max(0,d+c):c:0;for(;c<d;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,c){var d=a.length,e=0;if(typeof c.length=="number")for(var f=c.length;e<f;e++)a[d++]=c[e];else while(c[e]!==b)a[d++]=c[e++];a.length=d;return a},grep:function(a,b,c){var d=[],e;c=!!c;for(var f=0,g=a.length;f<g;f++)e=!!b(a[f],f),c!==e&&d.push(a[f]);return d},map:function(a,c,d){var f,g,h=[],i=0,j=a.length,k=a instanceof e||j!==b&&typeof j=="number"&&(j>0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i<j;i++)f=c(a[i],i,d),f!=null&&(h[h.length]=f);else for(g in a)f=c(a[g],g,d),f!=null&&(h[h.length]=f);return h.concat.apply([],h)},guid:1,proxy:function(a,c){if(typeof c=="string"){var d=a[c];c=a,a=d}if(!e.isFunction(a))return b;var f=F.call(arguments,2),g=function(){return a.apply(c,f.concat(F.call(arguments)))};g.guid=a.guid=a.guid||g.guid||e.guid++;return g},access:function(a,c,d,f,g,h){var i=a.length;if(typeof c=="object"){for(var j in c)e.access(a,j,c[j],f,g,d);return a}if(d!==b){f=!h&&f&&e.isFunction(d);for(var k=0;k<i;k++)g(a[k],c,f?d.call(a[k],k,g(a[k],c)):d,h);return a}return i?g(a[0],c):b},now:function(){return(new Date).getTime()},uaMatch:function(a){a=a.toLowerCase();var b=r.exec(a)||s.exec(a)||t.exec(a)||a.indexOf("compatible")<0&&u.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},sub:function(){function a(b,c){return new a.fn.init(b,c)}e.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function(d,f){f&&f instanceof e&&!(f instanceof a)&&(f=a(f));return e.fn.init.call(this,d,f,b)},a.fn.init.prototype=a.fn;var b=a(c);return a},browser:{}}),e.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){I["[object "+b+"]"]=b.toLowerCase()}),z=e.uaMatch(y),z.browser&&(e.browser[z.browser]=!0,e.browser.version=z.version),e.browser.webkit&&(e.browser.safari=!0),j.test(" ")&&(k=/^[\s\xA0]+/,l=/[\s\xA0]+$/),h=e(c),c.addEventListener?B=function(){c.removeEventListener("DOMContentLoaded",B,!1),e.ready()}:c.attachEvent&&(B=function(){c.readyState==="complete"&&(c.detachEvent("onreadystatechange",B),e.ready())});return e}(),g={};f.Callbacks=function(a){a=a?g[a]||h(a):{};var c=[],d=[],e,i,j,k,l,m=function(b){var d,e,g,h,i;for(d=0,e=b.length;d<e;d++)g=b[d],h=f.type(g),h==="array"?m(g):h==="function"&&(!a.unique||!o.has(g))&&c.push(g)},n=function(b,f){f=f||[],e=!a.memory||[b,f],i=!0,l=j||0,j=0,k=c.length;for(;c&&l<k;l++)if(c[l].apply(b,f)===!1&&a.stopOnFalse){e=!0;break}i=!1,c&&(a.once?e===!0?o.disable():c=[]:d&&d.length&&(e=d.shift(),o.fireWith(e[0],e[1])))},o={add:function(){if(c){var a=c.length;m(arguments),i?k=c.length:e&&e!==!0&&(j=a,n(e[0],e[1]))}return this},remove:function(){if(c){var b=arguments,d=0,e=b.length;for(;d<e;d++)for(var f=0;f<c.length;f++)if(b[d]===c[f]){i&&f<=k&&(k--,f<=l&&l--),c.splice(f--,1);if(a.unique)break}}return this},has:function(a){if(c){var b=0,d=c.length;for(;b<d;b++)if(a===c[b])return!0}return!1},empty:function(){c=[];return this},disable:function(){c=d=e=b;return this},disabled:function(){return!c},lock:function(){d=b,(!e||e===!0)&&o.disable();return this},locked:function(){return!d},fireWith:function(b,c){d&&(i?a.once||d.push([b,c]):(!a.once||!e)&&n(b,c));return this},fire:function(){o.fireWith(this,arguments);return this},fired:function(){return!!e}};return o};var i=[].slice;f.extend({Deferred:function(a){var b=f.Callbacks("once memory"),c=f.Callbacks("once memory"),d=f.Callbacks("memory"),e="pending",g={resolve:b,reject:c,notify:d},h={done:b.add,fail:c.add,progress:d.add,state:function(){return e},isResolved:b.fired,isRejected:c.fired,then:function(a,b,c){i.done(a).fail(b).progress(c);return this},always:function(){i.done.apply(i,arguments).fail.apply(i,arguments);return this},pipe:function(a,b,c){return f.Deferred(function(d){f.each({done:[a,"resolve"],fail:[b,"reject"],progress:[c,"notify"]},function(a,b){var c=b[0],e=b[1],g;f.isFunction(c)?i[a](function(){g=c.apply(this,arguments),g&&f.isFunction(g.promise)?g.promise().then(d.resolve,d.reject,d.notify):d[e+"With"](this===i?d:this,[g])}):i[a](d[e])})}).promise()},promise:function(a){if(a==null)a=h;else for(var b in h)a[b]=h[b];return a}},i=h.promise({}),j;for(j in g)i[j]=g[j].fire,i[j+"With"]=g[j].fireWith;i.done(function(){e="resolved"},c.disable,d.lock).fail(function(){e="rejected"},b.disable,d.lock),a&&a.call(i,i);return i},when:function(a){function m(a){return function(b){e[a]=arguments.length>1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c<d;c++)b[c]&&b[c].promise&&f.isFunction(b[c].promise)?b[c].promise().then(l(c),j.reject,m(c)):--g;g||j.resolveWith(j,b)}else j!==a&&j.resolveWith(j,d?[a]:[]);return k}}),f.support=function(){var b,d,e,g,h,i,j,k,l,m,n,o,p,q=c.createElement("div"),r=c.documentElement;q.setAttribute("className","t"),q.innerHTML=" <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav></:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="<div "+n+"><div></div></div>"+"<table "+n+" cellpadding='0' cellspacing='0'>"+"<tr><td></td></tr></table>",a=c.createElement("div"),a.style.cssText=m+"width:0;height:0;position:static;top:0;margin-top:"+j+"px",r.insertBefore(a,r.firstChild),q=c.createElement("div"),a.appendChild(q),q.innerHTML="<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>",l=q.getElementsByTagName("td"),p=l[0].offsetHeight===0,l[0].style.display="",l[1].style.display="none",b.reliableHiddenOffsets=p&&l[0].offsetHeight===0,q.innerHTML="",q.style.width=q.style.paddingLeft="1px",f.boxModel=b.boxModel=q.offsetWidth===2,typeof q.style.zoom!="undefined"&&(q.style.display="inline",q.style.zoom=1,b.inlineBlockNeedsLayout=q.offsetWidth===2,q.style.display="",q.innerHTML="<div style='width:4px;'></div>",b.shrinkWrapBlocks=q.offsetWidth!==2),q.style.cssText=k+m,q.innerHTML=o,d=q.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,i={doesNotAddBorder:e.offsetTop!==5,doesAddBorderForTableAndCells:h.offsetTop===5},e.style.position="fixed",e.style.top="20px",i.fixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",i.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,i.doesNotIncludeMarginInBodyOffset=r.offsetTop!==j,r.removeChild(a),q=a=null,f.extend(b,i))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e<g;e++)delete d[b[e]];if(!(c?m:f.isEmptyObject)(d))return}}if(!c){delete j[k].data;if(!m(j[k]))return}f.support.deleteExpando||!j.setInterval?delete j[k]:j[k]=null,i&&(f.support.deleteExpando?delete a[h]:a.removeAttribute?a.removeAttribute(h):a[h]=null)}},_data:function(a,b,c){return f.data(a,b,c,!0)},acceptData:function(a){if(a.nodeName){var b=f.noData[a.nodeName.toLowerCase()];if(b)return b!==!0&&a.getAttribute("classid")===b}return!0}}),f.fn.extend({data:function(a,c){var d,e,g,h=null;if(typeof a=="undefined"){if(this.length){h=f.data(this[0]);if(this[0].nodeType===1&&!f._data(this[0],"parsedAttrs")){e=this[0].attributes;for(var i=0,j=e.length;i<j;i++)g=e[i].name,g.indexOf("data-")===0&&(g=f.camelCase(g.substring(5)),l(this[0],g,h[g]));f._data(this[0],"parsedAttrs",!0)}}return h}if(typeof a=="object")return this.each(function(){f.data(this,a)});d=a.split("."),d[1]=d[1]?"."+d[1]:"";if(c===b){h=this.triggerHandler("getData"+d[1]+"!",[d[0]]),h===b&&this.length&&(h=f.data(this[0],a),h=l(this[0],a,h));return h===b&&d[1]?this.data(d[0]):h}return this.each(function(){var b=f(this),e=[d[0],c];b.triggerHandler("setData"+d[1]+"!",e),f.data(this,a,c),b.triggerHandler("changeData"+d[1]+"!",e)})},removeData:function(a){return this.each(function(){f.removeData(this,a)})}}),f.extend({_mark:function(a,b){a&&(b=(b||"fx")+"mark",f._data(a,b,(f._data(a,b)||0)+1))},_unmark:function(a,b,c){a!==!0&&(c=b,b=a,a=!1);if(b){c=c||"fx";var d=c+"mark",e=a?0:(f._data(b,d)||1)-1;e?f._data(b,d,e):(f.removeData(b,d,!0),n(b,c,"mark"))}},queue:function(a,b,c){var d;if(a){b=(b||"fx")+"queue",d=f._data(a,b),c&&(!d||f.isArray(c)?d=f._data(a,b,f.makeArray(c)):d.push(c));return d||[]}},dequeue:function(a,b){b=b||"fx";var c=f.queue(a,b),d=c.shift(),e={};d==="inprogress"&&(d=c.shift()),d&&(b==="fx"&&c.unshift("inprogress"),f._data(a,b+".run",e),d.call(a,function(){f.dequeue(a,b)},e)),c.length||(f.removeData(a,b+"queue "+b+".run",!0),n(a,b,"queue"))}}),f.fn.extend({queue:function(a,c){typeof a!="string"&&(c=a,a="fx");if(c===b)return f.queue(this[0],a);return this.each(function(){var b=f.queue(this,a,c);a==="fx"&&b[0]!=="inprogress"&&f.dequeue(this,a)})},dequeue:function(a){return this.each(function(){f.dequeue(this,a)})},delay:function(a,b){a=f.fx?f.fx.speeds[a]||a:a,b=b||"fx";return this.queue(b,function(b,c){var d=setTimeout(b,a);c.stop=function(){clearTimeout(d)}})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,c){function m(){--h||d.resolveWith(e,[e])}typeof a!="string"&&(c=a,a=b),a=a||"fx";var d=f.Deferred(),e=this,g=e.length,h=1,i=a+"defer",j=a+"queue",k=a+"mark",l;while(g--)if(l=f.data(e[g],i,b,!0)||(f.data(e[g],j,b,!0)||f.data(e[g],k,b,!0))&&f.data(e[g],i,f.Callbacks("once memory"),!0))h++,l.add(m);m();return d.promise()}});var o=/[\n\t\r]/g,p=/\s+/,q=/\r/g,r=/^(?:button|input)$/i,s=/^(?:button|input|object|select|textarea)$/i,t=/^a(?:rea)?$/i,u=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,v=f.support.getSetAttribute,w,x,y;f.fn.extend({attr:function(a,b){return f.access(this,a,b,!0,f.attr)},removeAttr:function(a){return this.each(function(){f.removeAttr(this,a)})},prop:function(a,b){return f.access(this,a,b,!0,f.prop)},removeProp:function(a){a=f.propFix[a]||a;return this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,g,h,i;if(f.isFunction(a))return this.each(function(b){f(this).addClass(a.call(this,b,this.className))});if(a&&typeof a=="string"){b=a.split(p);for(c=0,d=this.length;c<d;c++){e=this[c];if(e.nodeType===1)if(!e.className&&b.length===1)e.className=a;else{g=" "+e.className+" ";for(h=0,i=b.length;h<i;h++)~g.indexOf(" "+b[h]+" ")||(g+=b[h]+" ");e.className=f.trim(g)}}}return this},removeClass:function(a){var c,d,e,g,h,i,j;if(f.isFunction(a))return this.each(function(b){f(this).removeClass(a.call(this,b,this.className))});if(a&&typeof a=="string"||a===b){c=(a||"").split(p);for(d=0,e=this.length;d<e;d++){g=this[d];if(g.nodeType===1&&g.className)if(a){h=(" "+g.className+" ").replace(o," ");for(i=0,j=c.length;i<j;i++)h=h.replace(" "+c[i]+" "," ");g.className=f.trim(h)}else g.className=""}}return this},toggleClass:function(a,b){var c=typeof a,d=typeof b=="boolean";if(f.isFunction(a))return this.each(function(c){f(this).toggleClass(a.call(this,c,this.className,b),b)});return this.each(function(){if(c==="string"){var e,g=0,h=f(this),i=b,j=a.split(p);while(e=j[g++])i=d?i:!h.hasClass(e),h[i?"addClass":"removeClass"](e)}else if(c==="undefined"||c==="boolean")this.className&&f._data(this,"__className__",this.className),this.className=this.className||a===!1?"":f._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ",c=0,d=this.length;for(;c<d;c++)if(this[c].nodeType===1&&(" "+this[c].className+" ").replace(o," ").indexOf(b)>-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.nodeName.toLowerCase()]||f.valHooks[g.type];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c<d;c++){e=i[c];if(e.selected&&(f.support.optDisabled?!e.disabled:e.getAttribute("disabled")===null)&&(!e.parentNode.disabled||!f.nodeName(e.parentNode,"optgroup"))){b=f(e).val();if(j)return b;h.push(b)}}if(j&&!h.length&&i.length)return f(i[g]).val();return h},set:function(a,b){var c=f.makeArray(b);f(a).find("option").each(function(){this.selected=f.inArray(f(this).val(),c)>=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;h<g;h++)e=d[h],e&&(c=f.propFix[e]||e,f.attr(a,e,""),a.removeAttribute(v?e:c),u.test(e)&&c in a&&(a[c]=!1))}},attrHooks:{type:{set:function(a,b){if(r.test(a.nodeName)&&a.parentNode)f.error("type property can't be changed");else if(!f.support.radioValue&&b==="radio"&&f.nodeName(a,"input")){var c=a.value;a.setAttribute("type",b),c&&(a.value=c);return b}}},value:{get:function(a,b){if(w&&f.nodeName(a,"button"))return w.get(a,b);return b in a?a.value:null},set:function(a,b,c){if(w&&f.nodeName(a,"button"))return w.set(a,b,c);a.value=b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e,g,h,i=a.nodeType;if(!!a&&i!==3&&i!==8&&i!==2){h=i!==1||!f.isXMLDoc(a),h&&(c=f.propFix[c]||c,g=f.propHooks[c]);return d!==b?g&&"set"in g&&(e=g.set(a,d,c))!==b?e:a[c]=d:g&&"get"in g&&(e=g.get(a,c))!==null?e:a[c]}},propHooks:{tabIndex:{get:function(a){var c=a.getAttributeNode("tabindex");return c&&c.specified?parseInt(c.value,10):s.test(a.nodeName)||t.test(a.nodeName)&&a.href?0:b}}}}),f.attrHooks.tabindex=f.propHooks.tabIndex,x={get:function(a,c){var d,e=f.prop(a,c);return e===!0||typeof e!="boolean"&&(d=a.getAttributeNode(c))&&d.nodeValue!==!1?c.toLowerCase():b},set:function(a,b,c){var d;b===!1?f.removeAttr(a,c):(d=f.propFix[c]||c,d in a&&(a[d]=!0),a.setAttribute(c,c.toLowerCase()));return c}},v||(y={name:!0,id:!0},w=f.valHooks.button={get:function(a,c){var d;d=a.getAttributeNode(c);return d&&(y[c]?d.nodeValue!=="":d.specified)?d.nodeValue:b},set:function(a,b,d){var e=a.getAttributeNode(d);e||(e=c.createAttribute(d),a.setAttributeNode(e));return e.nodeValue=b+""}},f.attrHooks.tabindex.set=w.set,f.each(["width","height"],function(a,b){f.attrHooks[b]=f.extend(f.attrHooks[b],{set:function(a,c){if(c===""){a.setAttribute(b,"auto");return c}}})}),f.attrHooks.contenteditable={get:w.get,set:function(a,b,c){b===""&&(b="false"),w.set(a,b,c)}}),f.support.hrefNormalized||f.each(["href","src","width","height"],function(a,c){f.attrHooks[c]=f.extend(f.attrHooks[c],{get:function(a){var d=a.getAttribute(c,2);return d===null?b:d}})}),f.support.style||(f.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=""+b}}),f.support.optSelected||(f.propHooks.selected=f.extend(f.propHooks.selected,{get:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex);return null}})),f.support.enctype||(f.propFix.enctype="encoding"),f.support.checkOn||f.each(["radio","checkbox"],function(){f.valHooks[this]={get:function(a){return a.getAttribute("value")===null?"on":a.value}}}),f.each(["radio","checkbox"],function(){f.valHooks[this]=f.extend(f.valHooks[this],{set:function(a,b){if(f.isArray(b))return a.checked=f.inArray(f(a).val(),b)>=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/\bhover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")}; +f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k<c.length;k++){l=A.exec(c[k])||[],m=l[1],n=(l[2]||"").split(".").sort(),s=f.event.special[m]||{},m=(g?s.delegateType:s.bindType)||m,s=f.event.special[m]||{},o=f.extend({type:m,origType:l[1],data:e,handler:d,guid:d.guid,selector:g,quick:G(g),namespace:n.join(".")},p),r=j[m];if(!r){r=j[m]=[],r.delegateCount=0;if(!s.setup||s.setup.call(a,e,n,i)===!1)a.addEventListener?a.addEventListener(m,i,!1):a.attachEvent&&a.attachEvent("on"+m,i)}s.add&&(s.add.call(a,o),o.handler.guid||(o.handler.guid=d.guid)),g?r.splice(r.delegateCount++,0,o):r.push(o),f.event.global[m]=!0}a=null}},global:{},remove:function(a,b,c,d,e){var g=f.hasData(a)&&f._data(a),h,i,j,k,l,m,n,o,p,q,r,s;if(!!g&&!!(o=g.events)){b=f.trim(I(b||"")).split(" ");for(h=0;h<b.length;h++){i=A.exec(b[h])||[],j=k=i[1],l=i[2];if(!j){for(j in o)f.event.remove(a,j+b[h],c,d,!0);continue}p=f.event.special[j]||{},j=(d?p.delegateType:p.bindType)||j,r=o[j]||[],m=r.length,l=l?new RegExp("(^|\\.)"+l.split(".").sort().join("\\.(?:.*\\.)?")+"(\\.|$)"):null;for(n=0;n<r.length;n++)s=r[n],(e||k===s.origType)&&(!c||c.guid===s.guid)&&(!l||l.test(s.namespace))&&(!d||d===s.selector||d==="**"&&s.selector)&&(r.splice(n--,1),s.selector&&r.delegateCount--,p.remove&&p.remove.call(a,s));r.length===0&&m!==r.length&&((!p.teardown||p.teardown.call(a,l)===!1)&&f.removeEvent(a,j,g.handle),delete o[j])}f.isEmptyObject(o)&&(q=g.handle,q&&(q.elem=null),f.removeData(a,["events","handle"],!0))}},customEvent:{getData:!0,setData:!0,changeData:!0},trigger:function(c,d,e,g){if(!e||e.nodeType!==3&&e.nodeType!==8){var h=c.type||c,i=[],j,k,l,m,n,o,p,q,r,s;if(E.test(h+f.event.triggered))return;h.indexOf("!")>=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;l<r.length&&!c.isPropagationStopped();l++)m=r[l][0],c.type=r[l][1],q=(f._data(m,"events")||{})[c.type]&&f._data(m,"handle"),q&&q.apply(m,d),q=o&&m[o],q&&f.acceptData(m)&&q.apply(m,d)===!1&&c.preventDefault();c.type=h,!g&&!c.isDefaultPrevented()&&(!p._default||p._default.apply(e.ownerDocument,d)===!1)&&(h!=="click"||!f.nodeName(e,"a"))&&f.acceptData(e)&&o&&e[h]&&(h!=="focus"&&h!=="blur"||c.target.offsetWidth!==0)&&!f.isWindow(e)&&(n=e[o],n&&(e[o]=null),f.event.triggered=h,e[h](),f.event.triggered=b,n&&(e[o]=n));return c.result}},dispatch:function(c){c=f.event.fix(c||a.event);var d=(f._data(this,"events")||{})[c.type]||[],e=d.delegateCount,g=[].slice.call(arguments,0),h=!c.exclusive&&!c.namespace,i=[],j,k,l,m,n,o,p,q,r,s,t;g[0]=c,c.delegateTarget=this;if(e&&!c.target.disabled&&(!c.button||c.type!=="click")){m=f(this),m.context=this.ownerDocument||this;for(l=c.target;l!=this;l=l.parentNode||this){o={},q=[],m[0]=l;for(j=0;j<e;j++)r=d[j],s=r.selector,o[s]===b&&(o[s]=r.quick?H(l,r.quick):m.is(s)),o[s]&&q.push(r);q.length&&i.push({elem:l,matches:q})}}d.length>e&&i.push({elem:this,matches:d.slice(e)});for(j=0;j<i.length&&!c.isPropagationStopped();j++){p=i[j],c.currentTarget=p.elem;for(k=0;k<p.matches.length&&!c.isImmediatePropagationStopped();k++){r=p.matches[k];if(h||!c.namespace&&!r.namespace||c.namespace_re&&c.namespace_re.test(r.namespace))c.data=r.data,c.handleObj=r,n=((f.event.special[r.origType]||{}).handle||r.handler).apply(p.elem,g),n!==b&&(c.result=n,n===!1&&(c.preventDefault(),c.stopPropagation()))}}return c.result},props:"attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(a,b){a.which==null&&(a.which=b.charCode!=null?b.charCode:b.keyCode);return a}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(a,d){var e,f,g,h=d.button,i=d.fromElement;a.pageX==null&&d.clientX!=null&&(e=a.target.ownerDocument||c,f=e.documentElement,g=e.body,a.pageX=d.clientX+(f&&f.scrollLeft||g&&g.scrollLeft||0)-(f&&f.clientLeft||g&&g.clientLeft||0),a.pageY=d.clientY+(f&&f.scrollTop||g&&g.scrollTop||0)-(f&&f.clientTop||g&&g.clientTop||0)),!a.relatedTarget&&i&&(a.relatedTarget=i===a.target?d.toElement:i),!a.which&&h!==b&&(a.which=h&1?1:h&2?3:h&4?2:0);return a}},fix:function(a){if(a[f.expando])return a;var d,e,g=a,h=f.event.fixHooks[a.type]||{},i=h.props?this.props.concat(h.props):this.props;a=f.Event(g);for(d=i.length;d;)e=i[--d],a[e]=g[e];a.target||(a.target=g.srcElement||c),a.target.nodeType===3&&(a.target=a.target.parentNode),a.metaKey===b&&(a.metaKey=a.ctrlKey);return h.filter?h.filter(a,g):a},special:{ready:{setup:f.bindReady},load:{noBubble:!0},focus:{delegateType:"focusin"},blur:{delegateType:"focusout"},beforeunload:{setup:function(a,b,c){f.isWindow(this)&&(this.onbeforeunload=c)},teardown:function(a,b){this.onbeforeunload===b&&(this.onbeforeunload=null)}}},simulate:function(a,b,c,d){var e=f.extend(new f.Event,c,{type:a,isSimulated:!0,originalEvent:{}});d?f.event.trigger(e,null,b):f.event.dispatch.call(b,e),e.isDefaultPrevented()&&c.preventDefault()}},f.event.handle=f.event.dispatch,f.removeEvent=c.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){a.detachEvent&&a.detachEvent("on"+b,c)},f.Event=function(a,b){if(!(this instanceof f.Event))return new f.Event(a,b);a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||a.returnValue===!1||a.getPreventDefault&&a.getPreventDefault()?K:J):this.type=a,b&&f.extend(this,b),this.timeStamp=a&&a.timeStamp||f.now(),this[f.expando]=!0},f.Event.prototype={preventDefault:function(){this.isDefaultPrevented=K;var a=this.originalEvent;!a||(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){this.isPropagationStopped=K;var a=this.originalEvent;!a||(a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=K,this.stopPropagation()},isDefaultPrevented:J,isPropagationStopped:J,isImmediatePropagationStopped:J},f.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){f.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c=this,d=a.relatedTarget,e=a.handleObj,g=e.selector,h;if(!d||d!==c&&!f.contains(c,d))a.type=e.origType,h=e.handler.apply(this,arguments),a.type=b;return h}}}),f.support.submitBubbles||(f.event.special.submit={setup:function(){if(f.nodeName(this,"form"))return!1;f.event.add(this,"click._submit keypress._submit",function(a){var c=a.target,d=f.nodeName(c,"input")||f.nodeName(c,"button")?c.form:b;d&&!d._submit_attached&&(f.event.add(d,"submit._submit",function(a){this.parentNode&&!a.isTrigger&&f.event.simulate("submit",this.parentNode,a,!0)}),d._submit_attached=!0)})},teardown:function(){if(f.nodeName(this,"form"))return!1;f.event.remove(this,"._submit")}}),f.support.changeBubbles||(f.event.special.change={setup:function(){if(z.test(this.nodeName)){if(this.type==="checkbox"||this.type==="radio")f.event.add(this,"propertychange._change",function(a){a.originalEvent.propertyName==="checked"&&(this._just_changed=!0)}),f.event.add(this,"click._change",function(a){this._just_changed&&!a.isTrigger&&(this._just_changed=!1,f.event.simulate("change",this,a,!0))});return!1}f.event.add(this,"beforeactivate._change",function(a){var b=a.target;z.test(b.nodeName)&&!b._change_attached&&(f.event.add(b,"change._change",function(a){this.parentNode&&!a.isSimulated&&!a.isTrigger&&f.event.simulate("change",this.parentNode,a,!0)}),b._change_attached=!0)})},handle:function(a){var b=a.target;if(this!==b||a.isSimulated||a.isTrigger||b.type!=="radio"&&b.type!=="checkbox")return a.handleObj.handler.apply(this,arguments)},teardown:function(){f.event.remove(this,"._change");return z.test(this.nodeName)}}),f.support.focusinBubbles||f.each({focus:"focusin",blur:"focusout"},function(a,b){var d=0,e=function(a){f.event.simulate(b,a.target,f.event.fix(a),!0)};f.event.special[b]={setup:function(){d++===0&&c.addEventListener(a,e,!0)},teardown:function(){--d===0&&c.removeEventListener(a,e,!0)}}}),f.fn.extend({on:function(a,c,d,e,g){var h,i;if(typeof a=="object"){typeof c!="string"&&(d=c,c=b);for(i in a)this.on(i,c,d,a[i],g);return this}d==null&&e==null?(e=c,d=c=b):e==null&&(typeof c=="string"?(e=d,d=b):(e=d,d=c,c=b));if(e===!1)e=J;else if(!e)return this;g===1&&(h=e,e=function(a){f().off(a);return h.apply(this,arguments)},e.guid=h.guid||(h.guid=f.guid++));return this.each(function(){f.event.add(this,a,e,d,c)})},one:function(a,b,c,d){return this.on.call(this,a,b,c,d,1)},off:function(a,c,d){if(a&&a.preventDefault&&a.handleObj){var e=a.handleObj;f(a.delegateTarget).off(e.namespace?e.type+"."+e.namespace:e.type,e.selector,e.handler);return this}if(typeof a=="object"){for(var g in a)this.off(g,c,a[g]);return this}if(c===!1||typeof c=="function")d=c,c=b;d===!1&&(d=J);return this.each(function(){f.event.remove(this,a,d,c)})},bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},live:function(a,b,c){f(this.context).on(a,this.selector,b,c);return this},die:function(a,b){f(this.context).off(a,this.selector||"**",b);return this},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return arguments.length==1?this.off(a,"**"):this.off(b,a,c)},trigger:function(a,b){return this.each(function(){f.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0])return f.event.trigger(a,b,this[0],!0)},toggle:function(a){var b=arguments,c=a.guid||f.guid++,d=0,e=function(c){var e=(f._data(this,"lastToggle"+a.guid)||0)%d;f._data(this,"lastToggle"+a.guid,e+1),c.preventDefault();return b[e].apply(this,arguments)||!1};e.guid=c;while(d<b.length)b[d++].guid=c;return this.click(e)},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}}),f.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(a,b){f.fn[b]=function(a,c){c==null&&(c=a,a=null);return arguments.length>0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h<i;h++){var j=e[h];if(j){var k=!1;j=j[a];while(j){if(j[d]===c){k=e[j.sizset];break}if(j.nodeType===1){g||(j[d]=c,j.sizset=h);if(typeof b!="string"){if(j===b){k=!0;break}}else if(m.filter(b,[j]).length>0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h<i;h++){var j=e[h];if(j){var k=!1;j=j[a];while(j){if(j[d]===c){k=e[j.sizset];break}j.nodeType===1&&!g&&(j[d]=c,j.sizset=h);if(j.nodeName.toLowerCase()===b){k=j;break}j=j[a]}e[h]=k}}}var a=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b<a.length;b++)a[b]===a[b-1]&&a.splice(b--,1)}return a},m.matches=function(a,b){return m(a,null,null,b)},m.matchesSelector=function(a,b){return m(b,null,null,[a]).length>0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e<f;e++){h=o.order[e];if(g=o.leftMatch[h].exec(a)){i=g[1],g.splice(1,1);if(i.substr(i.length-1)!=="\\"){g[1]=(g[1]||"").replace(j,""),d=o.find[h](g,b,c);if(d!=null){a=a.replace(o.match[h],"");break}}}}d||(d=typeof b.getElementsByTagName!="undefined"?b.getElementsByTagName("*"):[]);return{set:d,expr:a}},m.filter=function(a,c,d,e){var f,g,h,i,j,k,l,n,p,q=a,r=[],s=c,t=c&&c[0]&&m.isXML(c[0]);while(a&&c.length){for(h in o.filter)if((f=o.leftMatch[h].exec(a))!=null&&f[2]){k=o.filter[h],l=f[1],g=!1,f.splice(1,1);if(l.substr(l.length-1)==="\\")continue;s===r&&(r=[]);if(o.preFilter[h]){f=o.preFilter[h](f,s,d,r,e,t);if(!f)g=i=!0;else if(f===!0)continue}if(f)for(n=0;(j=s[n])!=null;n++)j&&(i=k(j,f,n,s),p=e^i,d&&i!=null?p?g=!0:s[n]=!1:p&&(r.push(j),g=!0));if(i!==b){d||(s=r),a=a.replace(o.match[h],"");if(!g)return[];break}}if(a===q)if(g==null)m.error(a);else break;q=a}return s},m.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)};var n=m.getText=function(a){var b,c,d=a.nodeType,e="";if(d){if(d===1||d===9){if(typeof a.textContent=="string")return a.textContent;if(typeof a.innerText=="string")return a.innerText.replace(k,"");for(a=a.firstChild;a;a=a.nextSibling)e+=n(a)}else if(d===3||d===4)return a.nodeValue}else for(b=0;c=a[b];b++)c.nodeType!==8&&(e+=n(c));return e},o=m.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(a){return a.getAttribute("href")},type:function(a){return a.getAttribute("type")}},relative:{"+":function(a,b){var c=typeof b=="string",d=c&&!l.test(b),e=c&&!d;d&&(b=b.toLowerCase());for(var f=0,g=a.length,h;f<g;f++)if(h=a[f]){while((h=h.previousSibling)&&h.nodeType!==1);a[f]=e||h&&h.nodeName.toLowerCase()===b?h||!1:h===b}e&&m.filter(b,a,!0)},">":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e<f;e++){c=a[e];if(c){var g=c.parentNode;a[e]=g.nodeName.toLowerCase()===b?g:!1}}}else{for(;e<f;e++)c=a[e],c&&(a[e]=d?c.parentNode:c.parentNode===b);d&&m.filter(b,a,!0)}},"":function(a,b,c){var d,f=e++,g=x;typeof b=="string"&&!l.test(b)&&(b=b.toLowerCase(),d=b,g=w),g("parentNode",b,f,a,d,c)},"~":function(a,b,c){var d,f=e++,g=x;typeof b=="string"&&!l.test(b)&&(b=b.toLowerCase(),d=b,g=w),g("previousSibling",b,f,a,d,c)}},find:{ID:function(a,b,c){if(typeof b.getElementById!="undefined"&&!c){var d=b.getElementById(a[1]);return d&&d.parentNode?[d]:[]}},NAME:function(a,b){if(typeof b.getElementsByName!="undefined"){var c=[],d=b.getElementsByName(a[1]);for(var e=0,f=d.length;e<f;e++)d[e].getAttribute("name")===a[1]&&c.push(d[e]);return c.length===0?null:c}},TAG:function(a,b){if(typeof b.getElementsByTagName!="undefined")return b.getElementsByTagName(a[1])}},preFilter:{CLASS:function(a,b,c,d,e,f){a=" "+a[1].replace(j,"")+" ";if(f)return a;for(var g=0,h;(h=b[g])!=null;g++)h&&(e^(h.className&&(" "+h.className+" ").replace(/[\t\n\r]/g," ").indexOf(a)>=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return b<c[3]-0},gt:function(a,b,c){return b>c[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h<i;h++)if(g[h]===a)return!1;return!0}m.error(e)},CHILD:function(a,b){var c,e,f,g,h,i,j,k=b[1],l=a;switch(k){case"only":case"first":while(l=l.previousSibling)if(l.nodeType===1)return!1;if(k==="first")return!0;l=a;case"last":while(l=l.nextSibling)if(l.nodeType===1)return!1;return!0;case"nth":c=b[2],e=b[3];if(c===1&&e===0)return!0;f=b[0],g=a.parentNode;if(g&&(g[d]!==f||!a.nodeIndex)){i=0;for(l=g.firstChild;l;l=l.nextSibling)l.nodeType===1&&(l.nodeIndex=++i);g[d]=f}j=a.nodeIndex-e;return c===0?j===0:j%c===0&&j/c>=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c<e;c++)d.push(a[c]);else for(;a[c];c++)d.push(a[c]);return d}}var u,v;c.documentElement.compareDocumentPosition?u=function(a,b){if(a===b){h=!0;return 0}if(!a.compareDocumentPosition||!b.compareDocumentPosition)return a.compareDocumentPosition?-1:1;return a.compareDocumentPosition(b)&4?-1:1}:(u=function(a,b){if(a===b){h=!0;return 0}if(a.sourceIndex&&b.sourceIndex)return a.sourceIndex-b.sourceIndex;var c,d,e=[],f=[],g=a.parentNode,i=b.parentNode,j=g;if(g===i)return v(a,b);if(!g)return-1;if(!i)return 1;while(j)e.unshift(j),j=j.parentNode;j=i;while(j)f.unshift(j),j=j.parentNode;c=e.length,d=f.length;for(var k=0;k<c&&k<d;k++)if(e[k]!==f[k])return v(e[k],f[k]);return k===c?v(a,f[k],-1):v(e[k],b,1)},v=function(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}),function(){var a=c.createElement("div"),d="script"+(new Date).getTime(),e=c.documentElement;a.innerHTML="<a name='"+d+"'/>",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="<a href='#'></a>",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="<p class='TEST'></p>";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="<div class='test e'></div><div class='test'></div>";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h<i;h++)m(a,g[h],e,c);return m.filter(f,e)};m.attr=f.attr,m.selectors.attrMap={},f.find=m,f.expr=m.selectors,f.expr[":"]=f.expr.filters,f.unique=m.uniqueSort,f.text=m.getText,f.isXMLDoc=m.isXML,f.contains=m.contains}();var L=/Until$/,M=/^(?:parents|prevUntil|prevAll)/,N=/,/,O=/^.[^:#\[\.,]*$/,P=Array.prototype.slice,Q=f.expr.match.POS,R={children:!0,contents:!0,next:!0,prev:!0};f.fn.extend({find:function(a){var b=this,c,d;if(typeof a!="string")return f(a).filter(function(){for(c=0,d=b.length;c<d;c++)if(f.contains(b[c],this))return!0});var e=this.pushStack("","find",a),g,h,i;for(c=0,d=this.length;c<d;c++){g=e.length,f.find(a,this[c],e);if(c>0)for(h=g;h<e.length;h++)for(i=0;i<g;i++)if(e[i]===e[h]){e.splice(h--,1);break}}return e},has:function(a){var b=f(a);return this.filter(function(){for(var a=0,c=b.length;a<c;a++)if(f.contains(this,b[a]))return!0})},not:function(a){return this.pushStack(T(this,a,!1),"not",a)},filter:function(a){return this.pushStack(T(this,a,!0),"filter",a)},is:function(a){return!!a&&(typeof a=="string"?Q.test(a)?f(a,this.context).index(this[0])>=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d<a.length;d++)f(g).is(a[d])&&c.push({selector:a[d],elem:g,level:h});g=g.parentNode,h++}return c}var i=Q.test(a)||typeof a!="string"?f(a,b||this.context):0;for(d=0,e=this.length;d<e;d++){g=this[d];while(g){if(i?i.index(g)>-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/<tbody/i,_=/<|&#?\w+;/,ba=/<(?:script|style)/i,bb=/<(?:script|object|embed|option|style)/i,bc=new RegExp("<(?:"+V+")","i"),bd=/checked\s*(?:[^=]|=\s*.checked.)/i,be=/\/(java|ecma)script/i,bf=/^\s*<!(?:\[CDATA\[|\-\-)/,bg={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div<div>","</div>"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function() +{for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1></$2>");try{for(var c=0,d=this.length;c<d;c++)this[c].nodeType===1&&(f.cleanData(this[c].getElementsByTagName("*")),this[c].innerHTML=a)}catch(e){this.empty().append(a)}}else f.isFunction(a)?this.each(function(b){var c=f(this);c.html(a.call(this,b,c.html()))}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(f.isFunction(a))return this.each(function(b){var c=f(this),d=c.html();c.replaceWith(a.call(this,b,d))});typeof a!="string"&&(a=f(a).detach());return this.each(function(){var b=this.nextSibling,c=this.parentNode;f(this).remove(),b?f(b).before(a):f(c).append(a)})}return this.length?this.pushStack(f(f.isFunction(a)?a():a),"replaceWith",a):this},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,d){var e,g,h,i,j=a[0],k=[];if(!f.support.checkClone&&arguments.length===3&&typeof j=="string"&&bd.test(j))return this.each(function(){f(this).domManip(a,c,d,!0)});if(f.isFunction(j))return this.each(function(e){var g=f(this);a[0]=j.call(this,e,c?g.html():b),g.domManip(a,c,d)});if(this[0]){i=j&&j.parentNode,f.support.parentNode&&i&&i.nodeType===11&&i.childNodes.length===this.length?e={fragment:i}:e=f.buildFragment(a,this,k),h=e.fragment,h.childNodes.length===1?g=h=h.firstChild:g=h.firstChild;if(g){c=c&&f.nodeName(g,"tr");for(var l=0,m=this.length,n=m-1;l<m;l++)d.call(c?bi(this[l],g):this[l],e.cacheable||m>1&&l<n?f.clone(h,!0,!0):h)}k.length&&f.each(k,bp)}return this}}),f.buildFragment=function(a,b,d){var e,g,h,i,j=a[0];b&&b[0]&&(i=b[0].ownerDocument||b[0]),i.createDocumentFragment||(i=c),a.length===1&&typeof j=="string"&&j.length<512&&i===c&&j.charAt(0)==="<"&&!bb.test(j)&&(f.support.checkClone||!bd.test(j))&&(f.support.html5Clone||!bc.test(j))&&(g=!0,h=f.fragments[j],h&&h!==1&&(e=h)),e||(e=i.createDocumentFragment(),f.clean(a,i,e,d)),g&&(f.fragments[j]=h?e:1);return{fragment:e,cacheable:g}},f.fragments={},f.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){f.fn[a]=function(c){var d=[],e=f(c),g=this.length===1&&this[0].parentNode;if(g&&g.nodeType===11&&g.childNodes.length===1&&e.length===1){e[b](this[0]);return this}for(var h=0,i=e.length;h<i;h++){var j=(h>0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||!bc.test("<"+a.nodeName)?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1></$2>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");b===c?bh.appendChild(o):U(b).appendChild(o),o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]==="<table>"&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i<r;i++)bn(k[i]);else bn(k);k.nodeType?h.push(k):h=f.merge(h,k)}if(d){g=function(a){return!a.type||be.test(a.type)};for(j=0;h[j];j++)if(e&&f.nodeName(h[j],"script")&&(!h[j].type||h[j].type.toLowerCase()==="text/javascript"))e.push(h[j].parentNode?h[j].parentNode.removeChild(h[j]):h[j]);else{if(h[j].nodeType===1){var s=f.grep(h[j].getElementsByTagName("script"),g);h.splice.apply(h,[j+1,0].concat(s))}d.appendChild(h[j])}}return h},cleanData:function(a){var b,c,d=f.cache,e=f.event.special,g=f.support.deleteExpando;for(var h=0,i;(i=a[h])!=null;h++){if(i.nodeName&&f.noData[i.nodeName.toLowerCase()])continue;c=i[f.expando];if(c){b=d[c];if(b&&b.events){for(var j in b.events)e[j]?f.event.remove(i,j):f.removeEvent(i,j,b.handle);b.handle&&(b.handle.elem=null)}g?delete i[f.expando]:i.removeAttribute&&i.removeAttribute(f.expando),delete d[c]}}}});var bq=/alpha\([^)]*\)/i,br=/opacity=([^)]*)/,bs=/([A-Z]|^ms)/g,bt=/^-?\d+(?:px)?$/i,bu=/^-?\d/,bv=/^([\-+])=([\-+.\de]+)/,bw={position:"absolute",visibility:"hidden",display:"block"},bx=["Left","Right"],by=["Top","Bottom"],bz,bA,bB;f.fn.css=function(a,c){if(arguments.length===2&&c===b)return this;return f.access(this,a,c,!0,function(a,c,d){return d!==b?f.style(a,c,d):f.css(a,c)})},f.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=bz(a,"opacity","opacity");return c===""?"1":c}return a.style.opacity}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":f.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!!a&&a.nodeType!==3&&a.nodeType!==8&&!!a.style){var g,h,i=f.camelCase(c),j=a.style,k=f.cssHooks[i];c=f.cssProps[i]||i;if(d===b){if(k&&"get"in k&&(g=k.get(a,!1,e))!==b)return g;return j[c]}h=typeof d,h==="string"&&(g=bv.exec(d))&&(d=+(g[1]+1)*+g[2]+parseFloat(f.css(a,c)),h="number");if(d==null||h==="number"&&isNaN(d))return;h==="number"&&!f.cssNumber[i]&&(d+="px");if(!k||!("set"in k)||(d=k.set(a,d))!==b)try{j[c]=d}catch(l){}}},css:function(a,c,d){var e,g;c=f.camelCase(c),g=f.cssHooks[c],c=f.cssProps[c]||c,c==="cssFloat"&&(c="float");if(g&&"get"in g&&(e=g.get(a,!0,d))!==b)return e;if(bz)return bz(a,c)},swap:function(a,b,c){var d={};for(var e in b)d[e]=a.style[e],a.style[e]=b[e];c.call(a);for(e in b)a.style[e]=d[e]}}),f.curCSS=f.css,f.each(["height","width"],function(a,b){f.cssHooks[b]={get:function(a,c,d){var e;if(c){if(a.offsetWidth!==0)return bC(a,b,d);f.swap(a,bw,function(){e=bC(a,b,d)});return e}},set:function(a,b){if(!bt.test(b))return b;b=parseFloat(b);if(b>=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return br.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bq,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bq.test(g)?g.replace(bq,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,b){var c,d,e;b=b.replace(bs,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b)));return c}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f===null&&g&&(e=g[b])&&(f=e),!bt.test(f)&&bu.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bD=/%20/g,bE=/\[\]$/,bF=/\r?\n/g,bG=/#.*$/,bH=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bI=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bJ=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bK=/^(?:GET|HEAD)$/,bL=/^\/\//,bM=/\?/,bN=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,bO=/^(?:select|textarea)/i,bP=/\s+/,bQ=/([?&])_=[^&]*/,bR=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bS=f.fn.load,bT={},bU={},bV,bW,bX=["*/"]+["*"];try{bV=e.href}catch(bY){bV=c.createElement("a"),bV.href="",bV=bV.href}bW=bR.exec(bV.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bS)return bS.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("<div>").append(c.replace(bN,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bO.test(this.nodeName)||bI.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bF,"\r\n")}}):{name:b.name,value:c.replace(bF,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b_(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b_(a,b);return a},ajaxSettings:{url:bV,isLocal:bJ.test(bW[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bZ(bT),ajaxTransport:bZ(bU),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?cb(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cc(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bH.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bG,"").replace(bL,bW[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bP),d.crossDomain==null&&(r=bR.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bW[1]&&r[2]==bW[2]&&(r[3]||(r[1]==="http:"?80:443))==(bW[3]||(bW[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bT,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bK.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bM.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bQ,"$1_="+x);d.url=y+(y===d.url?(bM.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bX+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bU,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)ca(g,a[g],c,e);return d.join("&").replace(bD,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cd=f.now(),ce=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cd++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ce.test(b.url)||e&&ce.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ce,l),b.url===j&&(e&&(k=k.replace(ce,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cf=a.ActiveXObject?function(){for(var a in ch)ch[a](0,1)}:!1,cg=0,ch;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ci()||cj()}:ci,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cf&&delete ch[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cg,cf&&(ch||(ch={},f(a).unload(cf)),ch[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var ck={},cl,cm,cn=/^(?:toggle|show|hide)$/,co=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cp,cq=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cr;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g<h;g++)d=this[g],d.style&&(e=d.style.display,!f._data(d,"olddisplay")&&e==="none"&&(e=d.style.display=""),e===""&&f.css(d,"display")==="none"&&f._data(d,"olddisplay",cv(d.nodeName)));for(g=0;g<h;g++){d=this[g];if(d.style){e=d.style.display;if(e===""||e==="none")d.style.display=f._data(d,"olddisplay")||""}}return this},hide:function(a,b,c){if(a||a===0)return this.animate(cu("hide",3),a,b,c);var d,e,g=0,h=this.length;for(;g<h;g++)d=this[g],d.style&&(e=f.css(d,"display"),e!=="none"&&!f._data(d,"olddisplay")&&f._data(d,"olddisplay",e));for(g=0;g<h;g++)this[g].style&&(this[g].style.display="none");return this},_toggle:f.fn.toggle,toggle:function(a,b,c){var d=typeof a=="boolean";f.isFunction(a)&&f.isFunction(b)?this._toggle.apply(this,arguments):a==null||d?this.each(function(){var b=d?a:f(this).is(":hidden");f(this)[b?"show":"hide"]()}):this.animate(cu("toggle",3),a,b,c);return this},fadeTo:function(a,b,c,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){function g(){e.queue===!1&&f._mark(this);var b=f.extend({},e),c=this.nodeType===1,d=c&&f(this).is(":hidden"),g,h,i,j,k,l,m,n,o;b.animatedProperties={};for(i in a){g=f.camelCase(i),i!==g&&(a[g]=a[i],delete a[i]),h=a[g],f.isArray(h)?(b.animatedProperties[g]=h[1],h=a[g]=h[0]):b.animatedProperties[g]=b.specialEasing&&b.specialEasing[g]||b.easing||"swing";if(h==="hide"&&d||h==="show"&&!d)return b.complete.call(this);c&&(g==="height"||g==="width")&&(b.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY],f.css(this,"display")==="inline"&&f.css(this,"float")==="none"&&(!f.support.inlineBlockNeedsLayout||cv(this.nodeName)==="inline"?this.style.display="inline-block":this.style.zoom=1))}b.overflow!=null&&(this.style.overflow="hidden");for(i in a)j=new f.fx(this,b,i),h=a[i],cn.test(h)?(o=f._data(this,"toggle"+i)||(h==="toggle"?d?"show":"hide":0),o?(f._data(this,"toggle"+i,o==="show"?"hide":"show"),j[o]()):j[h]()):(k=co.exec(h),l=j.cur(),k?(m=parseFloat(k[2]),n=k[3]||(f.cssNumber[i]?"":"px"),n!=="px"&&(f.style(this,i,(m||1)+n),l=(m||1)/j.cur()*l,f.style(this,i,l+n)),k[1]&&(m=(k[1]==="-="?-1:1)*m+l),j.custom(l,m,n)):j.custom(l,h,""));return!0}var e=f.speed(b,c,d);if(f.isEmptyObject(a))return this.each(e.complete,[!1]);a=f.extend({},a);return e.queue===!1?this.each(g):this.queue(e.queue,g)},stop:function(a,c,d){typeof a!="string"&&(d=c,c=a,a=b),c&&a!==!1&&this.queue(a||"fx",[]);return this.each(function(){function h(a,b,c){var e=b[c];f.removeData(a,c,!0),e.stop(d)}var b,c=!1,e=f.timers,g=f._data(this);d||f._unmark(!0,this);if(a==null)for(b in g)g[b]&&g[b].stop&&b.indexOf(".run")===b.length-4&&h(this,g,b);else g[b=a+".run"]&&g[b].stop&&h(this,g,b);for(b=e.length;b--;)e[b].elem===this&&(a==null||e[b].queue===a)&&(d?e[b](!0):e[b].saveState(),c=!0,e.splice(b,1));(!d||!c)&&f.dequeue(this,a)})}}),f.each({slideDown:cu("show",1),slideUp:cu("hide",1),slideToggle:cu("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){f.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),f.extend({speed:function(a,b,c){var d=a&&typeof a=="object"?f.extend({},a):{complete:c||!c&&b||f.isFunction(a)&&a,duration:a,easing:c&&b||b&&!f.isFunction(b)&&b};d.duration=f.fx.off?0:typeof d.duration=="number"?d.duration:d.duration in f.fx.speeds?f.fx.speeds[d.duration]:f.fx.speeds._default;if(d.queue==null||d.queue===!0)d.queue="fx";d.old=d.complete,d.complete=function(a){f.isFunction(d.old)&&d.old.call(this),d.queue?f.dequeue(this,d.queue):a!==!1&&f._unmark(this)};return d},easing:{linear:function(a,b,c,d){return c+d*a},swing:function(a,b,c,d){return(-Math.cos(a*Math.PI)/2+.5)*d+c}},timers:[],fx:function(a,b,c){this.options=b,this.elem=a,this.prop=c,b.orig=b.orig||{}}}),f.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this),(f.fx.step[this.prop]||f.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a,b=f.css(this.elem,this.prop);return isNaN(a=parseFloat(b))?!b||b==="auto"?0:b:a},custom:function(a,c,d){function h(a){return e.step(a)}var e=this,g=f.fx;this.startTime=cr||cs(),this.end=c,this.now=this.start=a,this.pos=this.state=0,this.unit=d||this.unit||(f.cssNumber[this.prop]?"":"px"),h.queue=this.options.queue,h.elem=this.elem,h.saveState=function(){e.options.hide&&f._data(e.elem,"fxshow"+e.prop)===b&&f._data(e.elem,"fxshow"+e.prop,e.start)},h()&&f.timers.push(h)&&!cp&&(cp=setInterval(g.tick,g.interval))},show:function(){var a=f._data(this.elem,"fxshow"+this.prop);this.options.orig[this.prop]=a||f.style(this.elem,this.prop),this.options.show=!0,a!==b?this.custom(this.cur(),a):this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur()),f(this.elem).show()},hide:function(){this.options.orig[this.prop]=f._data(this.elem,"fxshow"+this.prop)||f.style(this.elem,this.prop),this.options.hide=!0,this.custom(this.cur(),0)},step:function(a){var b,c,d,e=cr||cs(),g=!0,h=this.elem,i=this.options;if(a||e>=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c<b.length;c++)a=b[c],!a()&&b[c]===a&&b.splice(c--,1);b.length||f.fx.stop()},interval:13,stop:function(){clearInterval(cp),cp=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){f.style(a.elem,"opacity",a.now)},_default:function(a){a.elem.style&&a.elem.style[a.prop]!=null?a.elem.style[a.prop]=a.now+a.unit:a.elem[a.prop]=a.now}}}),f.each(["width","height"],function(a,b){f.fx.step[b]=function(a){f.style(a.elem,b,Math.max(0,a.now)+a.unit)}}),f.expr&&f.expr.filters&&(f.expr.filters.animated=function(a){return f.grep(f.timers,function(b){return a===b.elem}).length});var cw=/^t(?:able|d|h)$/i,cx=/^(?:body|html)$/i;"getBoundingClientRect"in c.documentElement?f.fn.offset=function(a){var b=this[0],c;if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);try{c=b.getBoundingClientRect()}catch(d){}var e=b.ownerDocument,g=e.documentElement;if(!c||!f.contains(g,b))return c?{top:c.top,left:c.left}:{top:0,left:0};var h=e.body,i=cy(e),j=g.clientTop||h.clientTop||0,k=g.clientLeft||h.clientLeft||0,l=i.pageYOffset||f.support.boxModel&&g.scrollTop||h.scrollTop,m=i.pageXOffset||f.support.boxModel&&g.scrollLeft||h.scrollLeft,n=c.top+l-j,o=c.left+m-k;return{top:n,left:o}}:f.fn.offset=function(a){var b=this[0];if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);var c,d=b.offsetParent,e=b,g=b.ownerDocument,h=g.documentElement,i=g.body,j=g.defaultView,k=j?j.getComputedStyle(b,null):b.currentStyle,l=b.offsetTop,m=b.offsetLeft;while((b=b.parentNode)&&b!==i&&b!==h){if(f.support.fixedPosition&&k.position==="fixed")break;c=j?j.getComputedStyle(b,null):b.currentStyle,l-=b.scrollTop,m-=b.scrollLeft,b===d&&(l+=b.offsetTop,m+=b.offsetLeft,f.support.doesNotAddBorder&&(!f.support.doesAddBorderForTableAndCells||!cw.test(b.nodeName))&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),e=d,d=b.offsetParent),f.support.subtractsBorderForOverflowNotVisible&&c.overflow!=="visible"&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),k=c}if(k.position==="relative"||k.position==="static")l+=i.offsetTop,m+=i.offsetLeft;f.support.fixedPosition&&k.position==="fixed"&&(l+=Math.max(h.scrollTop,i.scrollTop),m+=Math.max(h.scrollLeft,i.scrollLeft));return{top:l,left:m}},f.offset={bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;f.support.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(f.css(a,"marginTop"))||0,c+=parseFloat(f.css(a,"marginLeft"))||0);return{top:b,left:c}},setOffset:function(a,b,c){var d=f.css(a,"position");d==="static"&&(a.style.position="relative");var e=f(a),g=e.offset(),h=f.css(a,"top"),i=f.css(a,"left"),j=(d==="absolute"||d==="fixed")&&f.inArray("auto",[h,i])>-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,d,"padding")):this[d]():null},f.fn["outer"+c]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,d,a?"margin":"border")):this[d]():null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNumeric(j)?j:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window); diff --git a/simulation/js/jquery_files/jquery.jqplot.min.js b/simulation/js/jquery_files/jquery.jqplot.min.js new file mode 100644 index 0000000..f1e8f4b --- /dev/null +++ b/simulation/js/jquery_files/jquery.jqplot.min.js @@ -0,0 +1,533 @@ + + +/** + * jqPlot + * Pure JavaScript plotting plugin using jQuery + * + * Version: 1.0.0r1095 + * + * Copyright (c) 2009-2011 Chris Leonello + * jqPlot is currently available for use in all personal or commercial projects + * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL + * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can + * choose the license that best suits your project and use it accordingly. + * + * Although not required, the author would appreciate an email letting him + * know of any substantial use of jqPlot. You can reach the author at: + * chris at jqplot dot com or see http://www.jqplot.com/info.php . + * + * If you are feeling kind and generous, consider supporting the project by + * making a donation at: http://www.jqplot.com/donate.php . + * + * sprintf functions contained in jqplot.sprintf.js by Ash Searle: + * + * version 2007.04.27 + * author Ash Searle + * http://hexmen.com/blog/2007/03/printf-sprintf/ + * http://hexmen.com/js/sprintf.js + * The author (Ash Searle) has placed this code in the public domain: + * "This code is unrestricted: you are free to use it however you like." + * + * included jsDate library by Chris Leonello: + * + * Copyright (c) 2010-2011 Chris Leonello + * + * jsDate is currently available for use in all personal or commercial projects + * under both the MIT and GPL version 2.0 licenses. This means that you can + * choose the license that best suits your project and use it accordingly. + * + * jsDate borrows many concepts and ideas from the Date Instance + * Methods by Ken Snyder along with some parts of Ken's actual code. + * + * Ken's origianl Date Instance Methods and copyright notice: + * + * Ken Snyder (ken d snyder at gmail dot com) + * 2008-09-10 + * version 2.0.2 (http://kendsnyder.com/sandbox/date/) + * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/) + * + * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js. + * Larry has generously given permission to adapt his code for inclusion + * into jqPlot. + * + * Larry's original code can be found here: + * + * https://github.com/lsiden/export-jqplot-to-png + * + * + */ +(function(H){ +var r; H.fn.emptyForce = function(){ +for (var ab = 0, ac; (ac = H(this)[ab]) != null; ab++){ +if (ac.nodeType === 1){H.cleanData(ac.getElementsByTagName("*"))} +if (H.jqplot.use_excanvas){ac.outerHTML = ""} +else{ +while (ac.firstChild){ac.removeChild(ac.firstChild)}}ac = null +}return H(this)}; + H.fn.removeChildForce = function(ab){ + while (ab.firstChild){ + this.removeChildForce(ab.firstChild); ab.removeChild(ab.firstChild)}}; + H.fn.jqplot = function(){ + var ab = []; var ad = []; + for (var ae = 0, ac = arguments.length; ae < ac; ae++){ + if (H.isArray(arguments[ae])){ab.push(arguments[ae])} + else{ + if (H.isPlainObject(arguments[ae])){ + ad.push(arguments[ae])}}} + return this.each(function(ah){ + var am, al, ak = H(this), ag = ab.length, af = ad.length, aj, ai; + if (ah < ag){aj = ab[ah]} + else{aj = ag?ab[ag - 1]:null} + if (ah < af){ai = ad[ah]} + else{ai = af?ad[af - 1]:null}am = ak.attr("id"); + if (am === r){am = "jqplot_target_" + H.jqplot.targetCounter++; ak.attr("id", am)}al = H.jqplot(am, aj, ai); ak.data("jqplot", al)})}; + H.jqplot = function(ah, ae, ac){var ad = null, ab = null; + if (arguments.length === 3){ad = ae; ab = ac} + else{ + if (arguments.length === 2){ + if (H.isArray(ae)){ad = ae} + else{if + (H.isPlainObject(ae)){ab = ae}}}} + if (ad === null && ab !== null && ab.data){ad = ab.data} + var ag = new N(); H("#" + ah).removeClass("jqplot-error"); + if (H.jqplot.config.catchErrors){ + try{ag.init(ah, ad, ab); ag.draw(); + ag.themeEngine.init.call(ag); + return ag} catch (af){ + var ai = H.jqplot.config.errorMessage || af.message; H("#" + ah).append('<div class="jqplot-error-message">' + ai + "</div>"); + H("#" + ah).addClass("jqplot-error"); + document.getElementById(ah).style.background = H.jqplot.config.errorBackground; + document.getElementById(ah).style.border = H.jqplot.config.errorBorder; + document.getElementById(ah).style.fontFamily = H.jqplot.config.errorFontFamily; + document.getElementById(ah).style.fontSize = H.jqplot.config.errorFontSize; + document.getElementById(ah).style.fontStyle = H.jqplot.config.errorFontStyle; + document.getElementById(ah).style.fontWeight = H.jqplot.config.errorFontWeight}} + else{ag.init(ah, ad, ab); + ag.draw(); + ag.themeEngine.init.call(ag); + return ag}}; H.jqplot.version = "1.0.0"; + H.jqplot.revision = "1095"; + H.jqplot.targetCounter = 1; + H.jqplot.CanvasManager = function(){ + if (typeof H.jqplot.CanvasManager.canvases == "undefined"){ + H.jqplot.CanvasManager.canvases = []; H.jqplot.CanvasManager.free = []} + var ab = []; + this.getCanvas = function(){ + var ae; + var ad = true; if (!H.jqplot.use_excanvas){ + for (var af = 0, ac = H.jqplot.CanvasManager.canvases.length; af < ac; af++){ + if (H.jqplot.CanvasManager.free[af] === true){ + ad = false; + ae = H.jqplot.CanvasManager.canvases[af]; + H.jqplot.CanvasManager.free[af] = false; + ab.push(af); + break}}}if (ad){ae = document.createElement("canvas"); + ab.push(H.jqplot.CanvasManager.canvases.length); H.jqplot.CanvasManager.canvases.push(ae); H.jqplot.CanvasManager.free.push(false)} + return ae}; + this.initCanvas = function(ac){ + if (H.jqplot.use_excanvas){ + return window.G_vmlCanvasManager.initElement(ac)} + return ac}; + this.freeAllCanvases = function(){ + for (var ad = 0, ac = ab.length; ad < ac; ad++){ + this.freeCanvas(ab[ad]) + }ab = []}; + this.freeCanvas = function(ac){ + if (H.jqplot.use_excanvas && window.G_vmlCanvasManager.uninitElement !== r){ + window.G_vmlCanvasManager.uninitElement(H.jqplot.CanvasManager.canvases[ac]); + H.jqplot.CanvasManager.canvases[ac] = null} + else{var ad = H.jqplot.CanvasManager.canvases[ac]; + ad.getContext("2d").clearRect(0, 0, ad.width, ad.height); + H(ad).unbind().removeAttr("class").removeAttr("style"); + H(ad).css({left:"", top:"", position:""}); ad.width = 0; ad.height = 0; + H.jqplot.CanvasManager.free[ac] = true}}}; + H.jqplot.log = function(){ + if (window.console){window.console.log.apply(window.console, arguments)}}; + H.jqplot.config = { + addDomReference:false, enablePlugins:false, defaultHeight:300, + defaultWidth:400, UTCAdjust:false, + timezoneOffset:new Date(new Date().getTimezoneOffset() * 60000), + errorMessage:"", errorBackground:"", errorBorder:"", errorFontFamily:"", + errorFontSize:"", errorFontStyle:"", errorFontWeight:"", catchErrors:false, defaultTickFormatString:"%.1f", + defaultColors:["#4bb2c5", "#EAA228", "#c5b47f", "#579575", "#839557", "#958c12", "#953579", "#4b5de4", "#d8b83f", "#ff5800", + "#0085cc", "#c747a3", "#cddf54", "#FBD178", "#26B4E3", "#bd70c7"], + defaultNegativeColors:["#498991", "#C08840", "#9F9274", "#546D61", "#646C4A", + "#6F6621", "#6E3F5F", "#4F64B0", "#A89050", "#C45923", "#187399", "#945381", "#959E5C", "#C7AF7B", "#478396", "#907294"], + dashLength:4, gapLength:4, dotGapLength:2.5, srcLocation:"jqplot/src/", pluginLocation:"jqplot/src/plugins/"}; + H.jqplot.arrayMax = function(ab){return Math.max.apply(Math, ab)}; + H.jqplot.arrayMin = function(ab){ + return Math.min.apply(Math, ab)}; + H.jqplot.enablePlugins = H.jqplot.config.enablePlugins; + H.jqplot.support_canvas = function(){ + if (typeof H.jqplot.support_canvas.result == "undefined"){ + H.jqplot.support_canvas.result = !!document.createElement("canvas").getContext} + return H.jqplot.support_canvas.result}; + H.jqplot.support_canvas_text = function(){ + if (typeof H.jqplot.support_canvas_text.result == "undefined"){ + if (window.G_vmlCanvasManager !== r && window.G_vmlCanvasManager._version > 887){ + H.jqplot.support_canvas_text.result = true + } else{ + H.jqplot.support_canvas_text.result = !!(document.createElement("canvas").getContext && typeof document.createElement("canvas").getContext("2d").fillText == "function")}} + return H.jqplot.support_canvas_text.result}; + H.jqplot.use_excanvas = (H.browser.msie && !H.jqplot.support_canvas())?true:false; + H.jqplot.preInitHooks = []; + H.jqplot.postInitHooks = []; + H.jqplot.preParseOptionsHooks = []; + H.jqplot.postParseOptionsHooks = []; + H.jqplot.preDrawHooks = []; + H.jqplot.postDrawHooks = []; + H.jqplot.preDrawSeriesHooks = []; + H.jqplot.postDrawSeriesHooks = []; + H.jqplot.preDrawLegendHooks = []; + H.jqplot.addLegendRowHooks = []; + H.jqplot.preSeriesInitHooks = []; + H.jqplot.postSeriesInitHooks = []; + H.jqplot.preParseSeriesOptionsHooks = []; + H.jqplot.postParseSeriesOptionsHooks = []; + H.jqplot.eventListenerHooks = []; + H.jqplot.preDrawSeriesShadowHooks = []; + H.jqplot.postDrawSeriesShadowHooks = []; + H.jqplot.ElemContainer = function(){ + this._elem; + this._plotWidth; + this._plotHeight; + this._plotDimensions = {height:null, width:null}}; + H.jqplot.ElemContainer.prototype.createElement = function(ae, ag, ac, ad, ah){ + this._offsets = ag; var ab = ac || "jqplot"; + var af = document.createElement(ae); + this._elem = H(af); + this._elem.addClass(ab); + this._elem.css(ad); + this._elem.attr(ah); + af = null; + return this._elem}; H.jqplot.ElemContainer.prototype.getWidth = function(){ +if (this._elem){return this._elem.outerWidth(true)} else{return null}}; + H.jqplot.ElemContainer.prototype.getHeight = function(){if (this._elem){ + return this._elem.outerHeight(true)} else{return null}}; + H.jqplot.ElemContainer.prototype.getPosition = function(){if (this._elem){return this._elem.position()} + else{return{top:null, left:null, bottom:null, right:null}}}; + H.jqplot.ElemContainer.prototype.getTop = function(){ + return this.getPosition().top}; + H.jqplot.ElemContainer.prototype.getLeft = function(){return this.getPosition().left}; + H.jqplot.ElemContainer.prototype.getBottom = function(){return this._elem.css("bottom")}; + H.jqplot.ElemContainer.prototype.getRight = function(){return this._elem.css("right")}; + function s(ab){H.jqplot.ElemContainer.call(this); this.name = ab; this._series = []; this.show = false; + this.tickRenderer = H.jqplot.AxisTickRenderer; + this.tickOptions = {}; + this.labelRenderer = H.jqplot.AxisLabelRenderer; + this.labelOptions = {}; + this.label = null; this.showLabel = true; this.min = null; + this.max = null; this.autoscale = false; + this.pad = 1.2; + this.padMax = null; + this.padMin = null; + this.ticks = []; + this.numberTicks; this.tickInterval; + this.renderer = H.jqplot.LinearAxisRenderer; + this.rendererOptions = {}; + this.showTicks = true; + this.showTickMarks = true; + this.showMinorTicks = true; + this.drawMajorGridlines = true; + this.drawMinorGridlines = false; + this.drawMajorTickMarks = true; + this.drawMinorTickMarks = true; + this.useSeriesColor = false; this.borderWidth = null; this.borderColor = null; + this.scaleToHiddenSeries = false; + this._dataBounds = {min:null, max:null}; this._intervalStats = []; this._offsets = {min:null, max:null}; this._ticks = []; this._label = null; + this.syncTicks = null; this.tickSpacing = 75; this._min = null; this._max = null; this._tickInterval = null; this._numberTicks = null; + this.__ticks = null; this._options = {}}s.prototype = new H.jqplot.ElemContainer(); s.prototype.constructor = s; + s.prototype.init = function(){if (H.isFunction(this.renderer)){this.renderer = new this.renderer()}this.tickOptions.axis = this.name; + if (this.tickOptions.showMark == null){this.tickOptions.showMark = this.showTicks} + if (this.tickOptions.showMark == null){ + this.tickOptions.showMark = this.showTickMarks}if (this.tickOptions.showLabel == null){this.tickOptions.showLabel = this.showTicks} + if (this.label == null || this.label == ""){this.showLabel = false} else{this.labelOptions.label = this.label} + if (this.showLabel == false){this.labelOptions.show = false}if (this.pad == 0){this.pad = 1}if (this.padMax == 0){this.padMax = 1} + if (this.padMin == 0){this.padMin = 1}if (this.padMax == null){this.padMax = (this.pad - 1) / 2 + 1} + if (this.padMin == null){this.padMin = (this.pad - 1) / 2 + 1}this.pad = this.padMax + this.padMin - 1; + if (this.min != null || this.max != null){this.autoscale = false} + if (this.syncTicks == null && this.name.indexOf("y") > - 1){this.syncTicks = true} else{if (this.syncTicks == null){ + this.syncTicks = false}}this.renderer.init.call(this, this.rendererOptions)}; + s.prototype.draw = function(ab, ac){if (this.__ticks){ + this.__ticks = null}return this.renderer.draw.call(this, ab, ac)}; s.prototype.set = function(){ +this.renderer.set.call(this)}; s.prototype.pack = function(ac, ab){ +if (this.show){this.renderer.pack.call(this, ac, ab)}if (this._min == null){this._min = this.min; this._max = this.max; + this._tickInterval = this.tickInterval; this._numberTicks = this.numberTicks; + this.__ticks = this._ticks}}; + s.prototype.reset = function(){this.renderer.reset.call(this)}; + s.prototype.resetScale = function(ab){ + H.extend(true, this, {min:null, max:null, numberTicks:null, tickInterval:null, _ticks:[], ticks:[]}, ab); + this.resetDataBounds()}; s.prototype.resetDataBounds = function(){var ai = this._dataBounds; ai.min = null; ai.max = null; + var ac, aj, ag; var ad = (this.show)?true:false; for (var af = 0; af < this._series.length; af++){aj = this._series[af]; + if (aj.show || this.scaleToHiddenSeries){ag = aj._plotData; + if (aj._type === "line" && aj.renderer.bands.show && this.name.charAt(0) !== "x"){ +ag = [[0, aj.renderer.bands._min], [1, aj.renderer.bands._max]]}var ab = 1, ah = 1; + if (aj._type != null && aj._type == "ohlc"){ab = 3; ah = 2} +for (var ae = 0, ac = ag.length; ae < ac; ae++){ +if (this.name == "xaxis" || this.name == "x2axis"){ +if ((ag[ae][0] != null && ag[ae][0] < ai.min) || ai.min == null){ +ai.min = ag[ae][0]}if ((ag[ae][0] != null && ag[ae][0] > ai.max) || ai.max == null){ai.max = ag[ae][0]}} +else{if ((ag[ae][ab] != null && ag[ae][ab] < ai.min) || ai.min == null){ai.min = ag[ae][ab]} +if ((ag[ae][ah] != null && ag[ae][ah] > ai.max) || ai.max == null){ai.max = ag[ae][ah]}}} +if (ad && aj.renderer.constructor !== H.jqplot.BarRenderer){ad = false} +else{if (ad && this._options.hasOwnProperty("forceTickAt0") && this._options.forceTickAt0 == false){ +ad = false} else{if (ad && aj.renderer.constructor === H.jqplot.BarRenderer){ +if (aj.barDirection == "vertical" && this.name != "xaxis" && this.name != "x2axis"){ +if (this._options.pad != null || this._options.padMin != null){ad = false}} +else{if (aj.barDirection == "horizontal" && (this.name == "xaxis" || this.name == "x2axis")){ +if (this._options.pad != null || this._options.padMin != null){ad = false}}}}}}}} +if (ad && this.renderer.constructor === H.jqplot.LinearAxisRenderer && ai.min >= 0){this.padMin = 1; + this.forceTickAt0 = true}}; + function n(ab){H.jqplot.ElemContainer.call(this); this.show = false; this.location = "ne"; this.labels = []; + this.showLabels = true; this.showSwatches = true; this.placement = "insideGrid"; this.xoffset = 0; this.yoffset = 0; + this.border; this.background; this.textColor; this.fontFamily; this.fontSize; this.rowSpacing = "0.5em"; + this.renderer = H.jqplot.TableLegendRenderer; this.rendererOptions = {}; this.preDraw = false; this.marginTop = null; + this.marginRight = null; this.marginBottom = null; this.marginLeft = null; this.escapeHtml = false; this._series = []; + H.extend(true, this, ab)}n.prototype = new H.jqplot.ElemContainer(); n.prototype.constructor = n; + n.prototype.setOptions = function(ab){ + H.extend(true, this, ab); + if (this.placement == "inside"){this.placement = "insideGrid"}if (this.xoffset > 0){ + if (this.placement == "insideGrid"){ + switch (this.location){case"nw":case"w":case"sw":if (this.marginLeft == null){ + this.marginLeft = this.xoffset + "px"}this.marginRight = "0px"; break; + case"ne":case"e":case"se":default:if (this.marginRight == null){this.marginRight = this.xoffset + "px"}this.marginLeft = "0px"; break}} + else{if (this.placement == "outside"){ + switch (this.location){case"nw":case"w":case"sw":if (this.marginRight == null){this.marginRight = this.xoffset + "px"} + this.marginLeft = "0px"; break; case"ne":case"e":case"se":default:if (this.marginLeft == null){ + this.marginLeft = this.xoffset + "px"}this.marginRight = "0px"; break}}} + this.xoffset = 0}if (this.yoffset > 0){if (this.placement == "outside"){switch (this.location){ + case"sw":case"s":case"se":if (this.marginTop == null){this.marginTop = this.yoffset + "px"} + this.marginBottom = "0px"; break; case"ne":case"n":case"nw":default:if (this.marginBottom == null){ + this.marginBottom = this.yoffset + "px"}this.marginTop = "0px"; break}} + else{if (this.placement == "insideGrid"){switch (this.location){case"sw":case"s":case"se":if (this.marginBottom == null){ + this.marginBottom = this.yoffset + "px"}this.marginTop = "0px"; break; case"ne":case"n":case"nw":default:if (this.marginTop == null){ + this.marginTop = this.yoffset + "px"}this.marginBottom = "0px"; break}}}this.yoffset = 0}}; + n.prototype.init = function(){if (H.isFunction(this.renderer)){ + this.renderer = new this.renderer()}this.renderer.init.call(this, this.rendererOptions)}; + n.prototype.draw = function(ac, ad){for (var ab = 0; ab < H.jqplot.preDrawLegendHooks.length; ab++){H.jqplot.preDrawLegendHooks[ab].call(this, ac)} + return this.renderer.draw.call(this, ac, ad)}; n.prototype.pack = function(ab){this.renderer.pack.call(this, ab)}; + function u(ab){H.jqplot.ElemContainer.call(this); this.text = ab; this.show = true; this.fontFamily; this.fontSize; this.textAlign; + this.textColor; this.renderer = H.jqplot.DivTitleRenderer; this.rendererOptions = {}; + this.escapeHtml = false}u.prototype = new H.jqplot.ElemContainer(); u.prototype.constructor = u; + u.prototype.init = function(){if (H.isFunction(this.renderer)){this.renderer = new this.renderer()}this.renderer.init.call(this, this.rendererOptions)}; + u.prototype.draw = function(ab){return this.renderer.draw.call(this, ab)}; u.prototype.pack = function(){this.renderer.pack.call(this)}; + function O(){H.jqplot.ElemContainer.call(this); this.show = true; this.xaxis = "xaxis"; this._xaxis; this.yaxis = "yaxis"; this._yaxis; + this.gridBorderWidth = 2; this.renderer = H.jqplot.LineRenderer; this.rendererOptions = {}; this.data = []; this.gridData = []; + this.label = ""; this.showLabel = true; this.color; this.negativeColor; this.lineWidth = 2.5; this.lineJoin = "round"; + this.lineCap = "round"; this.linePattern = "solid"; this.shadow = true; this.shadowAngle = 45; this.shadowOffset = 1.25; + this.shadowDepth = 3; this.shadowAlpha = "0.1"; this.breakOnNull = false; this.markerRenderer = H.jqplot.MarkerRenderer; + this.markerOptions = {}; this.showLine = true; this.showMarker = true; this.index; this.fill = false; this.fillColor; + this.fillAlpha; this.fillAndStroke = false; this.disableStack = false; this._stack = false; this.neighborThreshold = 4; + this.fillToZero = false; this.fillToValue = 0; this.fillAxis = "y"; this.useNegativeColors = true; this._stackData = []; + this._plotData = []; this._plotValues = {x:[], y:[]}; this._intervals = {x:{}, y:{}}; this._prevPlotData = []; this._prevGridData = []; + this._stackAxis = "y"; this._primaryAxis = "_xaxis"; this.canvas = new H.jqplot.GenericCanvas(); + this.shadowCanvas = new H.jqplot.GenericCanvas(); this.plugins = {}; this._sumy = 0; this._sumx = 0; this._type = ""} +O.prototype = new H.jqplot.ElemContainer(); O.prototype.constructor = O; + O.prototype.init = function(ad, ah, af){ + this.index = ad; this.gridBorderWidth = ah; var ag = this.data; var ac = [], ae; + for (ae = 0; ae < ag.length; ae++){if (!this.breakOnNull){if (ag[ae] == null || ag[ae][0] == null || ag[ae][1] == null){continue} + else{ac.push(ag[ae])}} else{ac.push(ag[ae])}}this.data = ac; if (!this.color){this.color = af.colorGenerator.get(this.index)} + if (!this.negativeColor){this.negativeColor = af.negativeColorGenerator.get(this.index)}if (!this.fillColor){this.fillColor = this.color} + if (this.fillAlpha){var ab = H.jqplot.normalize2rgb(this.fillColor); var ab = H.jqplot.getColorComponents(ab); + this.fillColor = "rgba(" + ab[0] + "," + ab[1] + "," + ab[2] + "," + this.fillAlpha + ")"} + if (H.isFunction(this.renderer)){this.renderer = new this.renderer()}this.renderer.init.call(this, this.rendererOptions, af); + this.markerRenderer = new this.markerRenderer(); + if (!this.markerOptions.color){this.markerOptions.color = this.color} + if (this.markerOptions.show == null){ + this.markerOptions.show = this.showMarker}this.showMarker = this.markerOptions.show; + this.markerRenderer.init(this.markerOptions)}; + O.prototype.draw = function(ah, ae, ag){var ac = (ae == r)?{}:ae; ah = (ah == r)?this.canvas._ctx:ah; + var ab, af, ad; for (ab = 0; ab < H.jqplot.preDrawSeriesHooks.length; ab++){H.jqplot.preDrawSeriesHooks[ab].call(this, ah, ac)} + if (this.show){this.renderer.setGridData.call(this, ag); + if (!ac.preventJqPlotSeriesDrawTrigger){H(ah.canvas).trigger("jqplotSeriesDraw", [this.data, this.gridData])}af = []; + if (ac.data){af = ac.data} else{if (!this._stack){af = this.data} + else{af = this._plotData}}ad = ac.gridData || this.renderer.makeGridData.call(this, af, ag); + if (this._type === "line" && this.renderer.smooth && this.renderer._smoothedData.length){ad = this.renderer._smoothedData} + this.renderer.draw.call(this, ah, ad, ac, ag)}for (ab = 0; ab < H.jqplot.postDrawSeriesHooks.length; ab++) + {H.jqplot.postDrawSeriesHooks[ab].call(this, ah, ac, ag)}ah = ae = ag = ab = af = ad = null}; + O.prototype.drawShadow = function(ah, ae, ag){var ac = (ae == r)?{}:ae; ah = (ah == r)?this.shadowCanvas._ctx:ah; + var ab, af, ad; for (ab = 0; ab < H.jqplot.preDrawSeriesShadowHooks.length; ab++){ + H.jqplot.preDrawSeriesShadowHooks[ab].call(this, ah, ac)} + if (this.shadow){this.renderer.setGridData.call(this, ag); af = []; + if (ac.data){af = ac.data} else{if (!this._stack){af = this.data} + else{af = this._plotData}}ad = ac.gridData || this.renderer.makeGridData.call(this, af, ag); + this.renderer.drawShadow.call(this, ah, ad, ac)}for (ab = 0; ab < H.jqplot.postDrawSeriesShadowHooks.length; ab++){ + H.jqplot.postDrawSeriesShadowHooks[ab].call(this, ah, ac)}ah = ae = ag = ab = af = ad = null}; + O.prototype.toggleDisplay = function(ac, ae){var ab, ad; if (ac.data.series){ab = ac.data.series} + else{ab = this} + if (ac.data.speed){ad = ac.data.speed}if (ad){if (ab.canvas._elem.is(":hidden") || !ab.show){ab.show = true; + ab.canvas._elem.removeClass("jqplot-series-hidden"); + if (ab.shadowCanvas._elem){ab.shadowCanvas._elem.fadeIn(ad)}ab.canvas._elem.fadeIn(ad, ae); + ab.canvas._elem.nextAll(".jqplot-point-label.jqplot-series-" + ab.index).fadeIn(ad)} + else{ab.show = false; ab.canvas._elem.addClass("jqplot-series-hidden"); + if (ab.shadowCanvas._elem){ab.shadowCanvas._elem.fadeOut(ad)}ab.canvas._elem.fadeOut(ad, ae); + ab.canvas._elem.nextAll(".jqplot-point-label.jqplot-series-" + ab.index).fadeOut(ad)}} + else{if (ab.canvas._elem.is(":hidden") || !ab.show){ab.show = true; + ab.canvas._elem.removeClass("jqplot-series-hidden"); + if (ab.shadowCanvas._elem){ab.shadowCanvas._elem.show()}ab.canvas._elem.show(0, ae); + ab.canvas._elem.nextAll(".jqplot-point-label.jqplot-series-" + ab.index).show()} + else{ab.show = false; ab.canvas._elem.addClass("jqplot-series-hidden"); + if (ab.shadowCanvas._elem){ab.shadowCanvas._elem.hide()}ab.canvas._elem.hide(0, ae); + ab.canvas._elem.nextAll(".jqplot-point-label.jqplot-series-" + ab.index).hide()}}}; + function I(){H.jqplot.ElemContainer.call(this); this.drawGridlines = true; this.gridLineColor = "#cccccc"; + this.gridLineWidth = 1; this.background = "#fffdf6"; this.borderColor = "#999999"; + this.borderWidth = 2; this.drawBorder = true; this.shadow = true; this.shadowAngle = 45; this.shadowOffset = 1.5; + this.shadowWidth = 3; + this.shadowDepth = 3; this.shadowColor = null; this.shadowAlpha = "0.07"; this._left; this._top; + this._right; this._bottom; this._width; this._height; this._axes = []; + this.renderer = H.jqplot.CanvasGridRenderer; + this.rendererOptions = {}; this._offsets = {top:null, bottom:null, left:null, right:null}}I.prototype = new H.jqplot.ElemContainer(); + I.prototype.constructor = I; I.prototype.init = function(){if (H.isFunction(this.renderer)){ + this.renderer = new this.renderer()}this.renderer.init.call(this, this.rendererOptions)}; + I.prototype.createElement = function(ab, ac){this._offsets = ab; + return this.renderer.createElement.call(this, ac)}; + I.prototype.draw = function(){this.renderer.draw.call(this)}; + H.jqplot.GenericCanvas = function(){H.jqplot.ElemContainer.call(this); this._ctx}; + H.jqplot.GenericCanvas.prototype = new H.jqplot.ElemContainer(); + H.jqplot.GenericCanvas.prototype.constructor = H.jqplot.GenericCanvas; + H.jqplot.GenericCanvas.prototype.createElement = function(af, ad, ac, ag){this._offsets = af; var ab = "jqplot"; + if (ad != r){ab = ad}var ae; ae = ag.canvasManager.getCanvas(); + if (ac != null){this._plotDimensions = ac}ae.width = this._plotDimensions.width - this._offsets.left - this._offsets.right; + ae.height = this._plotDimensions.height - this._offsets.top - this._offsets.bottom; this._elem = H(ae); + this._elem.css({position:"absolute", left:this._offsets.left, top:this._offsets.top}); + this._elem.addClass(ab); ae = ag.canvasManager.initCanvas(ae); ae = null; return this._elem}; + H.jqplot.GenericCanvas.prototype.setContext = function(){this._ctx = this._elem.get(0).getContext("2d"); + return this._ctx}; H.jqplot.GenericCanvas.prototype.resetCanvas = function(){if (this._elem){ +if (H.jqplot.use_excanvas && window.G_vmlCanvasManager.uninitElement !== r){window.G_vmlCanvasManager.uninitElement(this._elem.get(0))} +this._elem.emptyForce()}this._ctx = null}; + H.jqplot.HooksManager = function(){this.hooks = []; this.args = []}; + H.jqplot.HooksManager.prototype.addOnce = function(ae, ac){ac = ac || []; + var af = false; for (var ad = 0, ab = this.hooks.length; ad < ab; ad++){ + if (this.hooks[ad] == ae){af = true}}if (!af){this.hooks.push(ae); + this.args.push(ac)}}; H.jqplot.HooksManager.prototype.add = function(ac, ab){ab = ab || []; + this.hooks.push(ac); this.args.push(ab)}; H.jqplot.EventListenerManager = function(){this.hooks = []}; + H.jqplot.EventListenerManager.prototype.addOnce = function(af, ae){var ag = false, ad, ac; + for (var ac = 0, ab = this.hooks.length; ac < ab; ac++){ad = this.hooks[ac]; + if (ad[0] == af && ad[1] == ae){ag = true}}if (!ag){this.hooks.push([af, ae])}}; + H.jqplot.EventListenerManager.prototype.add = function(ac, ab){this.hooks.push([ac, ab])}; + var Q = ["yMidAxis", "xaxis", "yaxis", "x2axis", "y2axis", "y3axis", "y4axis", "y5axis", "y6axis", "y7axis", "y8axis", "y9axis"]; + function N(){this.animate = false; + this.animateReplot = false; + this.axes = {xaxis:new s("xaxis"), yaxis:new s("yaxis"), x2axis:new s("x2axis"), + y2axis:new s("y2axis"), y3axis:new s("y3axis"), y4axis:new s("y4axis"), + y5axis:new s("y5axis"), y6axis:new s("y6axis"), y7axis:new s("y7axis"), + y8axis:new s("y8axis"), y9axis:new s("y9axis"), yMidAxis:new s("yMidAxis")}; + this.baseCanvas = new H.jqplot.GenericCanvas(); this.captureRightClick = false; + this.data = []; + this.dataRenderer; this.dataRendererOptions; + this.defaults = {axesDefaults:{}, axes:{xaxis:{}, yaxis:{}, x2axis:{}, y2axis:{}, y3axis:{}, y4axis:{}, + y5axis:{}, y6axis:{}, y7axis:{}, y8axis:{}, + y9axis:{}, yMidAxis:{}}, seriesDefaults:{}, series:[]}; + this.defaultAxisStart = 1; this.drawIfHidden = false; this.eventCanvas = new H.jqplot.GenericCanvas(); + this.fillBetween = {series1:null, series2:null, color:null, baseSeries:0, fill:true}; this.fontFamily; + this.fontSize; this.grid = new I(); this.legend = new n(); + this.negativeSeriesColors = H.jqplot.config.defaultNegativeColors; + this.noDataIndicator = {show:false, indicator:"Loading Data...", axes:{xaxis:{min:0, max:10, tickInterval:2, show:true}, + yaxis:{min:0, max:12, tickInterval:3, show:true}}}; + this.options = {}; this.previousSeriesStack = []; this.plugins = {}; this.series = []; + this.seriesStack = []; this.seriesColors = H.jqplot.config.defaultColors; this.sortData = true; + this.stackSeries = false; this.syncXTicks = true; this.syncYTicks = true; this.target = null; this.targetId = null; + this.textColor; this.title = new u(); this._drawCount = 0; this._sumy = 0; this._sumx = 0; this._stackData = []; this._plotData = []; + this._width = null; this._height = null; this._plotDimensions = {height:null, width:null}; + this._gridPadding = {top:null, right:null, bottom:null, left:null}; + this._defaultGridPadding = {top:10, right:10, bottom:23, left:10}; + this._addDomReference = H.jqplot.config.addDomReference; this.preInitHooks = new H.jqplot.HooksManager(); + this.postInitHooks = new H.jqplot.HooksManager(); this.preParseOptionsHooks = new H.jqplot.HooksManager(); + this.postParseOptionsHooks = new H.jqplot.HooksManager(); this.preDrawHooks = new H.jqplot.HooksManager(); + this.postDrawHooks = new H.jqplot.HooksManager(); this.preDrawSeriesHooks = new H.jqplot.HooksManager(); + this.postDrawSeriesHooks = new H.jqplot.HooksManager(); this.preDrawLegendHooks = new H.jqplot.HooksManager(); + this.addLegendRowHooks = new H.jqplot.HooksManager(); this.preSeriesInitHooks = new H.jqplot.HooksManager(); + this.postSeriesInitHooks = new H.jqplot.HooksManager(); this.preParseSeriesOptionsHooks = new H.jqplot.HooksManager(); + this.postParseSeriesOptionsHooks = new H.jqplot.HooksManager(); this.eventListenerHooks = new H.jqplot.EventListenerManager(); + this.preDrawSeriesShadowHooks = new H.jqplot.HooksManager(); this.postDrawSeriesShadowHooks = new H.jqplot.HooksManager(); + this.colorGenerator = new H.jqplot.ColorGenerator(); this.negativeColorGenerator = new H.jqplot.ColorGenerator(); + this.canvasManager = new H.jqplot.CanvasManager(); this.themeEngine = new H.jqplot.ThemeEngine(); + var ad = 0; this.init = function(ao, al, aq){aq = aq || {}; + for (var am = 0; am < H.jqplot.preInitHooks.length; am++){ + H.jqplot.preInitHooks[am].call(this, ao, al, aq)} + for (var am = 0; am < this.preInitHooks.hooks.length; am++){ + this.preInitHooks.hooks[am].call(this, ao, al, aq)} + this.targetId = "#" + ao; this.target = H("#" + ao); + if (this._addDomReference){this.target.data("jqplot", this)}this.target.removeClass("jqplot-error"); + if (!this.target.get(0)){throw"No plot target specified"}if (this.target.css("position") == "static"){ + this.target.css("position", "relative")}if (!this.target.hasClass("jqplot-target")){this.target.addClass("jqplot-target")} + if (!this.target.height()){var an; if (aq && aq.height){an = parseInt(aq.height, 10)} + else{if (this.target.attr("data-height")){an = parseInt(this.target.attr("data-height"), 10)} + else{an = parseInt(H.jqplot.config.defaultHeight, 10)}}this._height = an; + this.target.css("height", an + "px")} + else{this._height = an = this.target.height()}if (!this.target.width()){ + var ap; if (aq && aq.width){ap = parseInt(aq.width, 10)} + else{if (this.target.attr("data-width")){ap = parseInt(this.target.attr("data-width"), 10)} + else{ap = parseInt(H.jqplot.config.defaultWidth, 10)}}this._width = ap; + this.target.css("width", ap + "px")} else{this._width = ap = this.target.width()} + for (var am = 0, aj = Q.length; am < aj; am++){this.axes[Q[am]] = new s(Q[am])}this._plotDimensions.height = this._height; + this._plotDimensions.width = this._width; this.grid._plotDimensions = this._plotDimensions; + this.title._plotDimensions = this._plotDimensions; this.baseCanvas._plotDimensions = this._plotDimensions; + this.eventCanvas._plotDimensions = this._plotDimensions; this.legend._plotDimensions = this._plotDimensions; + if (this._height <= 0 || this._width <= 0 || !this._height || !this._width){throw"Canvas dimension not set"} + if (aq.dataRenderer && H.isFunction(aq.dataRenderer)){if (aq.dataRendererOptions){this.dataRendererOptions = aq.dataRendererOptions} + this.dataRenderer = aq.dataRenderer; al = this.dataRenderer(al, this, this.dataRendererOptions)} + if (aq.noDataIndicator && H.isPlainObject(aq.noDataIndicator)){H.extend(true, this.noDataIndicator, aq.noDataIndicator)} + if (al == null || H.isArray(al) == false || al.length == 0 || H.isArray(al[0]) == false || al[0].length == 0){ + if (this.noDataIndicator.show == false){throw"No Data"} else{for (var af in this.noDataIndicator.axes){ + for (var ah in this.noDataIndicator.axes[af]){this.axes[af][ah] = this.noDataIndicator.axes[af][ah]}} + this.postDrawHooks.add(function(){var ax = this.eventCanvas.getHeight(); var au = this.eventCanvas.getWidth(); + var at = H('<div class="jqplot-noData-container" style="position:absolute;"></div>'); this.target.append(at); + at.height(ax); at.width(au); at.css("top", this.eventCanvas._offsets.top); at.css("left", this.eventCanvas._offsets.left); + var aw = H('<div class="jqplot-noData-contents" style="text-align:center; position:relative; margin-left:auto; margin-right:auto;"></div>'); + at.append(aw); aw.html(this.noDataIndicator.indicator); var av = aw.height(); + var ar = aw.width(); aw.height(av); aw.width(ar); + aw.css("top", (ax - av) / 2 + "px")})}}this.data = H.extend(true, [], al); this.parseOptions(aq); + if (this.textColor){this.target.css("color", this.textColor)}if (this.fontFamily){this.target.css("font-family", this.fontFamily)} + if (this.fontSize){this.target.css("font-size", this.fontSize)}this.title.init(); this.legend.init(); + this._sumy = 0; this._sumx = 0; for (var am = 0; am < this.series.length; am++){this.seriesStack.push(am); + this.previousSeriesStack.push(am); this.series[am].shadowCanvas._plotDimensions = this._plotDimensions; + this.series[am].canvas._plotDimensions = this._plotDimensions; + for (var ak = 0; ak < H.jqplot.preSeriesInitHooks.length; ak++){ + H.jqplot.preSeriesInitHooks[ak].call(this.series[am], ao, this.data, this.options.seriesDefaults, this.options.series[am], this)} + for (var ak = 0; ak < this.preSeriesInitHooks.hooks.length; ak++){ + this.preSeriesInitHooks.hooks[ak].call(this.series[am], ao, this.data, this.options.seriesDefaults, this.options.series[am], this)} + this.populatePlotData(this.series[am], am); this.series[am]._plotDimensions = this._plotDimensions; this.series[am].init(am, this.grid.borderWidth, this); for (var ak = 0; ak < H.jqplot.postSeriesInitHooks.length; ak++){H.jqplot.postSeriesInitHooks[ak].call(this.series[am], ao, this.data, this.options.seriesDefaults, this.options.series[am], this)}for (var ak = 0; ak < this.postSeriesInitHooks.hooks.length; ak++){this.postSeriesInitHooks.hooks[ak].call(this.series[am], ao, this.data, this.options.seriesDefaults, this.options.series[am], this)}this._sumy += this.series[am]._sumy; this._sumx += this.series[am]._sumx}var ag, ai; for (var am = 0, aj = Q.length; am < aj; am++){ag = Q[am]; ai = this.axes[ag]; ai._plotDimensions = this._plotDimensions; ai.init(); if (this.axes[ag].borderColor == null){if (ag.charAt(0) !== "x" && ai.useSeriesColor === true && ai.show){ai.borderColor = ai._series[0].color} else{ai.borderColor = this.grid.borderColor}}}if (this.sortData){ab(this.series)}this.grid.init(); this.grid._axes = this.axes; this.legend._series = this.series; for (var am = 0; am < H.jqplot.postInitHooks.length; am++){H.jqplot.postInitHooks[am].call(this, ao, this.data, aq)}for (var am = 0; am < this.postInitHooks.hooks.length; am++){this.postInitHooks.hooks[am].call(this, ao, this.data, aq)}}; this.resetAxesScale = function(ak, ag){var ai = ag || {}; var aj = ak || this.axes; if (aj === true){aj = this.axes}if (H.isArray(aj)){for (var ah = 0; ah < aj.length; ah++){this.axes[aj[ah]].resetScale(ai[aj[ah]])}} else{if (typeof (aj) === "object"){for (var af in aj){this.axes[af].resetScale(ai[af])}}}}; this.reInitialize = function(an, af){var ar = H.extend(true, {}, this.options, af); var ap = this.targetId.substr(1); var al = (an == null)?this.data:an; for (var ao = 0; ao < H.jqplot.preInitHooks.length; ao++){H.jqplot.preInitHooks[ao].call(this, ap, al, ar)}for (var ao = 0; ao < this.preInitHooks.hooks.length; ao++){this.preInitHooks.hooks[ao].call(this, ap, al, ar)}this._height = this.target.height(); this._width = this.target.width(); if (this._height <= 0 || this._width <= 0 || !this._height || !this._width){throw"Target dimension not set"}this._plotDimensions.height = this._height; this._plotDimensions.width = this._width; this.grid._plotDimensions = this._plotDimensions; this.title._plotDimensions = this._plotDimensions; this.baseCanvas._plotDimensions = this._plotDimensions; this.eventCanvas._plotDimensions = this._plotDimensions; this.legend._plotDimensions = this._plotDimensions; var ag, aq, am, ai; for (var ao = 0, ak = Q.length; ao < ak; ao++){ag = Q[ao]; ai = this.axes[ag]; aq = ai._ticks; for (var am = 0, aj = aq.length; am < aj; am++){var ah = aq[am]._elem; if (ah){if (H.jqplot.use_excanvas && window.G_vmlCanvasManager.uninitElement !== r){window.G_vmlCanvasManager.uninitElement(ah.get(0))}ah.emptyForce(); ah = null; aq._elem = null}}aq = null; delete ai.ticks; delete ai._ticks; this.axes[ag] = new s(ag); + this.axes[ag]._plotWidth = this._width; this.axes[ag]._plotHeight = this._height} + if (an){if (ar.dataRenderer && H.isFunction(ar.dataRenderer)){ + if (ar.dataRendererOptions){this.dataRendererOptions = ar.dataRendererOptions}this.dataRenderer = ar.dataRenderer; + an = this.dataRenderer(an, this, this.dataRendererOptions)}this.data = H.extend(true, [], an)}if (af){this.parseOptions(ar)}this.title._plotWidth = this._width; + if (this.textColor){this.target.css("color", this.textColor)}if (this.fontFamily){this.target.css("font-family", this.fontFamily)}if (this.fontSize){this.target.css("font-size", this.fontSize)}this.title.init(); this.legend.init(); this._sumy = 0; this._sumx = 0; this.seriesStack = []; this.previousSeriesStack = []; for (var ao = 0, ak = this.series.length; ao < ak; ao++){this.seriesStack.push(ao); this.previousSeriesStack.push(ao); this.series[ao].shadowCanvas._plotDimensions = this._plotDimensions; this.series[ao].canvas._plotDimensions = this._plotDimensions; for (var am = 0; am < H.jqplot.preSeriesInitHooks.length; am++){H.jqplot.preSeriesInitHooks[am].call(this.series[ao], ap, this.data, this.options.seriesDefaults, this.options.series[ao], this)}for (var am = 0; am < this.preSeriesInitHooks.hooks.length; am++){this.preSeriesInitHooks.hooks[am].call(this.series[ao], ap, this.data, this.options.seriesDefaults, this.options.series[ao], this)}this.populatePlotData(this.series[ao], ao); this.series[ao]._plotDimensions = this._plotDimensions; this.series[ao].init(ao, this.grid.borderWidth, this); for (var am = 0; am < H.jqplot.postSeriesInitHooks.length; am++){H.jqplot.postSeriesInitHooks[am].call(this.series[ao], ap, this.data, this.options.seriesDefaults, this.options.series[ao], this)}for (var am = 0; am < this.postSeriesInitHooks.hooks.length; am++){this.postSeriesInitHooks.hooks[am].call(this.series[ao], ap, this.data, this.options.seriesDefaults, this.options.series[ao], this)}this._sumy += this.series[ao]._sumy; this._sumx += this.series[ao]._sumx}for (var ao = 0, ak = Q.length; ao < ak; ao++){ag = Q[ao]; ai = this.axes[ag]; ai._plotDimensions = this._plotDimensions; ai.init(); if (ai.borderColor == null){if (ag.charAt(0) !== "x" && ai.useSeriesColor === true && ai.show){ai.borderColor = ai._series[0].color} else{ai.borderColor = this.grid.borderColor}}}if (this.sortData){ab(this.series)}this.grid.init(); this.grid._axes = this.axes; this.legend._series = this.series; for (var ao = 0, ak = H.jqplot.postInitHooks.length; ao < ak; ao++){H.jqplot.postInitHooks[ao].call(this, ap, this.data, ar)}for (var ao = 0, ak = this.postInitHooks.hooks.length; ao < ak; ao++){this.postInitHooks.hooks[ao].call(this, ap, this.data, ar)}}; this.quickInit = function(){this._height = this.target.height(); this._width = this.target.width(); if (this._height <= 0 || this._width <= 0 || !this._height || !this._width){throw"Target dimension not set"}this._plotDimensions.height = this._height; this._plotDimensions.width = this._width; this.grid._plotDimensions = this._plotDimensions; this.title._plotDimensions = this._plotDimensions; this.baseCanvas._plotDimensions = this._plotDimensions; this.eventCanvas._plotDimensions = this._plotDimensions; this.legend._plotDimensions = this._plotDimensions; for (var ak in this.axes){this.axes[ak]._plotWidth = this._width; this.axes[ak]._plotHeight = this._height}this.title._plotWidth = this._width; if (this.textColor){this.target.css("color", this.textColor)}if (this.fontFamily){this.target.css("font-family", this.fontFamily)}if (this.fontSize){this.target.css("font-size", this.fontSize)}this._sumy = 0; this._sumx = 0; for (var ai = 0; ai < this.series.length; ai++){this.populatePlotData(this.series[ai], ai); if (this.series[ai]._type === "line" && this.series[ai].renderer.bands.show){this.series[ai].renderer.initBands.call(this.series[ai], this.series[ai].renderer.options, this)}this.series[ai]._plotDimensions = this._plotDimensions; this.series[ai].canvas._plotDimensions = this._plotDimensions; this._sumy += this.series[ai]._sumy; this._sumx += this.series[ai]._sumx}var ag; for (var af = 0; af < 12; af++){ag = Q[af]; var ah = this.axes[ag]._ticks; for (var ai = 0; ai < ah.length; ai++){var aj = ah[ai]._elem; if (aj){if (H.jqplot.use_excanvas && window.G_vmlCanvasManager.uninitElement !== r){window.G_vmlCanvasManager.uninitElement(aj.get(0))}aj.emptyForce(); aj = null; ah._elem = null}}ah = null; this.axes[ag]._plotDimensions = this._plotDimensions; this.axes[ag]._ticks = []}if (this.sortData){ab(this.series)}this.grid._axes = this.axes; this.legend._series = this.series}; function ab(aj){var an, ao, ap, af, am; for (var ak = 0; ak < aj.length; ak++){var ag; var al = [aj[ak].data, aj[ak]._stackData, aj[ak]._plotData, aj[ak]._prevPlotData]; for (var ah = 0; ah < 4; ah++){ag = true; an = al[ah]; if (aj[ak]._stackAxis == "x"){for (var ai = 0; ai < an.length; ai++){if (typeof (an[ai][1]) != "number"){ag = false; break}}if (ag){an.sort(function(ar, aq){return ar[1] - aq[1]})}} else{for (var ai = 0; ai < an.length; ai++){if (typeof (an[ai][0]) != "number"){ag = false; break}}if (ag){an.sort(function(ar, aq){return ar[0] - aq[0]})}}}}}this.populatePlotData = function(aj, ak){this._plotData = []; this._stackData = []; aj._stackData = []; aj._plotData = []; var an = {x:[], y:[]}; if (this.stackSeries && !aj.disableStack){aj._stack = true; var al = aj._stackAxis == "x"?0:1; var am = al?0:1; var ao = H.extend(true, [], aj.data); var ap = H.extend(true, [], aj.data); for (var ah = 0; ah < ak; ah++){var af = this.series[ah].data; for (var ag = 0; ag < af.length; ag++){ao[ag][0] += af[ag][0]; ao[ag][1] += af[ag][1]; ap[ag][al] += af[ag][al]}}for (var ai = 0; ai < ap.length; ai++){an.x.push(ap[ai][0]); an.y.push(ap[ai][1])}this._plotData.push(ap); this._stackData.push(ao); aj._stackData = ao; aj._plotData = ap; aj._plotValues = an} else{for (var ai = 0; ai < aj.data.length; ai++){an.x.push(aj.data[ai][0]); an.y.push(aj.data[ai][1])}this._stackData.push(aj.data); this.series[ak]._stackData = aj.data; this._plotData.push(aj.data); aj._plotData = aj.data; aj._plotValues = an}if (ak > 0){aj._prevPlotData = this.series[ak - 1]._plotData}aj._sumy = 0; aj._sumx = 0; for (ai = aj.data.length - 1; ai > - 1; ai--){aj._sumy += aj.data[ai][1]; aj._sumx += aj.data[ai][0]}}; this.getNextSeriesColor = (function(ag){var af = 0; var ah = ag.seriesColors; return function(){if (af < ah.length){return ah[af++]} else{af = 0; return ah[af++]}}})(this); this.parseOptions = function(aq){for (var al = 0; al < this.preParseOptionsHooks.hooks.length; al++){this.preParseOptionsHooks.hooks[al].call(this, aq)}for (var al = 0; al < H.jqplot.preParseOptionsHooks.length; al++){H.jqplot.preParseOptionsHooks[al].call(this, aq)}this.options = H.extend(true, {}, this.defaults, aq); var af = this.options; this.animate = af.animate; this.animateReplot = af.animateReplot; this.stackSeries = af.stackSeries; if (H.isPlainObject(af.fillBetween)){var ap = ["series1", "series2", "color", "baseSeries", "fill"], am; for (var al = 0, aj = ap.length; al < aj; al++){am = ap[al]; if (af.fillBetween[am] != null){this.fillBetween[am] = af.fillBetween[am]}}}if (af.seriesColors){this.seriesColors = af.seriesColors}if (af.negativeSeriesColors){this.negativeSeriesColors = af.negativeSeriesColors}if (af.captureRightClick){this.captureRightClick = af.captureRightClick}this.defaultAxisStart = (aq && aq.defaultAxisStart != null)?aq.defaultAxisStart:this.defaultAxisStart; this.colorGenerator.setColors(this.seriesColors); this.negativeColorGenerator.setColors(this.negativeSeriesColors); H.extend(true, this._gridPadding, af.gridPadding); this.sortData = (af.sortData != null)?af.sortData:this.sortData; for (var al = 0; al < 12; al++){var ag = Q[al]; var ai = this.axes[ag]; ai._options = H.extend(true, {}, af.axesDefaults, af.axes[ag]); H.extend(true, ai, af.axesDefaults, af.axes[ag]); ai._plotWidth = this._width; ai._plotHeight = this._height}var ao = function(av, at, aw){var ar = []; var au; at = at || "vertical"; if (!H.isArray(av[0])){for (au = 0; au < av.length; au++){if (at == "vertical"){ar.push([aw + au, av[au]])} else{ar.push([av[au], aw + au])}}} else{H.extend(true, ar, av)}return ar}; var an = 0; this.series = []; for (var al = 0; al < this.data.length; al++){var ap = new O(); for (var ak = 0; ak < H.jqplot.preParseSeriesOptionsHooks.length; ak++){H.jqplot.preParseSeriesOptionsHooks[ak].call(ap, this.options.seriesDefaults, this.options.series[al])}for (var ak = 0; ak < this.preParseSeriesOptionsHooks.hooks.length; ak++){this.preParseSeriesOptionsHooks.hooks[ak].call(ap, this.options.seriesDefaults, this.options.series[al])}H.extend(true, ap, {seriesColors:this.seriesColors, negativeSeriesColors:this.negativeSeriesColors}, this.options.seriesDefaults, this.options.series[al], {rendererOptions:{animation:{show:this.animate}}}); var ah = "vertical"; if (ap.renderer === H.jqplot.BarRenderer && ap.rendererOptions && ap.rendererOptions.barDirection == "horizontal" && ap.transposeData === true){ah = "horizontal"}ap.data = ao(this.data[al], ah, this.defaultAxisStart); switch (ap.xaxis){case"xaxis":ap._xaxis = this.axes.xaxis; break; case"x2axis":ap._xaxis = this.axes.x2axis; break; default:break}ap._yaxis = this.axes[ap.yaxis]; ap._xaxis._series.push(ap); ap._yaxis._series.push(ap); if (ap.show){ap._xaxis.show = true; ap._yaxis.show = true} else{if (ap._xaxis.scaleToHiddenSeries){ap._xaxis.show = true}if (ap._yaxis.scaleToHiddenSeries){ap._yaxis.show = true}}if (!ap.label){ap.label = "Series " + (al + 1).toString()}this.series.push(ap); for (var ak = 0; ak < H.jqplot.postParseSeriesOptionsHooks.length; ak++){H.jqplot.postParseSeriesOptionsHooks[ak].call(this.series[al], this.options.seriesDefaults, this.options.series[al])}for (var ak = 0; ak < this.postParseSeriesOptionsHooks.hooks.length; ak++){this.postParseSeriesOptionsHooks.hooks[ak].call(this.series[al], this.options.seriesDefaults, this.options.series[al])}}H.extend(true, this.grid, this.options.grid); for (var al = 0, aj = Q.length; al < aj; al++){var ag = Q[al]; var ai = this.axes[ag]; if (ai.borderWidth == null){ai.borderWidth = this.grid.borderWidth}}if (typeof this.options.title == "string"){this.title.text = this.options.title} else{if (typeof this.options.title == "object"){H.extend(true, this.title, this.options.title)}}this.title._plotWidth = this._width; this.legend.setOptions(this.options.legend); for (var al = 0; al < H.jqplot.postParseOptionsHooks.length; al++){H.jqplot.postParseOptionsHooks[al].call(this, aq)}for (var al = 0; al < this.postParseOptionsHooks.hooks.length; al++){this.postParseOptionsHooks.hooks[al].call(this, aq)}}; this.destroy = function(){this.canvasManager.freeAllCanvases(); if (this.eventCanvas && this.eventCanvas._elem){this.eventCanvas._elem.unbind()}this.target.empty(); this.target[0].innerHTML = ""}; this.replot = function(ag){var ah = ag || {}; var aj = ah.data || null; var af = (ah.clear === false)?false:true; var ai = ah.resetAxes || false; delete ah.data; delete ah.clear; delete ah.resetAxes; this.target.trigger("jqplotPreReplot"); if (af){this.destroy()}if (aj || !H.isEmptyObject(ah)){this.reInitialize(aj, ah)} else{this.quickInit()}if (ai){this.resetAxesScale(ai, ah.axes)}this.draw(); this.target.trigger("jqplotPostReplot")}; this.redraw = function(af){af = (af != null)?af:true; this.target.trigger("jqplotPreRedraw"); if (af){this.canvasManager.freeAllCanvases(); this.eventCanvas._elem.unbind(); this.target.empty()}for (var ah in this.axes){this.axes[ah]._ticks = []}for (var ag = 0; ag < this.series.length; ag++){this.populatePlotData(this.series[ag], ag)}this._sumy = 0; this._sumx = 0; for (ag = 0; ag < this.series.length; ag++){this._sumy += this.series[ag]._sumy; this._sumx += this.series[ag]._sumx}this.draw(); this.target.trigger("jqplotPostRedraw")}; this.draw = function(){if (this.drawIfHidden || this.target.is(":visible")){this.target.trigger("jqplotPreDraw"); var aB, az, ay, ai; for (aB = 0, ay = H.jqplot.preDrawHooks.length; aB < ay; aB++){H.jqplot.preDrawHooks[aB].call(this)}for (aB = 0, ay = this.preDrawHooks.length; aB < ay; aB++){this.preDrawHooks.hooks[aB].apply(this, this.preDrawSeriesHooks.args[aB])}this.target.append(this.baseCanvas.createElement({left:0, right:0, top:0, bottom:0}, "jqplot-base-canvas", null, this)); this.baseCanvas.setContext(); this.target.append(this.title.draw()); this.title.pack({top:0, left:0}); var aF = this.legend.draw({}, this); var af = {top:0, left:0, bottom:0, right:0}; if (this.legend.placement == "outsideGrid"){this.target.append(aF); switch (this.legend.location){case"n":af.top += this.legend.getHeight(); break; case"s":af.bottom += this.legend.getHeight(); break; case"ne":case"e":case"se":af.right += this.legend.getWidth(); break; case"nw":case"w":case"sw":af.left += this.legend.getWidth(); break; default:af.right += this.legend.getWidth(); break}aF = aF.detach()}var al = this.axes; var aG; for (aB = 0; aB < 12; aB++){aG = Q[aB]; this.target.append(al[aG].draw(this.baseCanvas._ctx, this)); al[aG].set()}if (al.yaxis.show){af.left += al.yaxis.getWidth()}var aA = ["y2axis", "y3axis", "y4axis", "y5axis", "y6axis", "y7axis", "y8axis", "y9axis"]; var ar = [0, 0, 0, 0, 0, 0, 0, 0]; var av = 0; var au; for (au = 0; au < 8; au++){if (al[aA[au]].show){av += al[aA[au]].getWidth(); ar[au] = av}}af.right += av; if (al.x2axis.show){af.top += al.x2axis.getHeight()}if (this.title.show){af.top += this.title.getHeight()}if (al.xaxis.show){af.bottom += al.xaxis.getHeight()}if (this.options.gridDimensions && H.isPlainObject(this.options.gridDimensions)){var am = parseInt(this.options.gridDimensions.width, 10) || 0; var aC = parseInt(this.options.gridDimensions.height, 10) || 0; var ah = (this._width - af.left - af.right - am) / 2; var aE = (this._height - af.top - af.bottom - aC) / 2; if (aE >= 0 && ah >= 0){af.top += aE; af.bottom += aE; af.left += ah; af.right += ah}}var ag = ["top", "bottom", "left", "right"]; for (var au in ag){if (this._gridPadding[ag[au]] == null && af[ag[au]] > 0){this._gridPadding[ag[au]] = af[ag[au]]} else{if (this._gridPadding[ag[au]] == null){this._gridPadding[ag[au]] = this._defaultGridPadding[ag[au]]}}}var at = this._gridPadding; if (this.legend.placement === "outsideGrid"){at = {top:this.title.getHeight(), left:0, right:0, bottom:0}; if (this.legend.location === "s"){at.left = this._gridPadding.left; at.right = this._gridPadding.right}}al.xaxis.pack({position:"absolute", bottom:this._gridPadding.bottom - al.xaxis.getHeight(), left:0, width:this._width}, {min:this._gridPadding.left, max:this._width - this._gridPadding.right}); + al.yaxis.pack({position:"absolute", top:0, left:this._gridPadding.left - al.yaxis.getWidth(), height:this._height}, {min:this._height - this._gridPadding.bottom, max:this._gridPadding.top}); al.x2axis.pack({position:"absolute", top:this._gridPadding.top - al.x2axis.getHeight(), left:0, width:this._width}, {min:this._gridPadding.left, max:this._width - this._gridPadding.right}); for (aB = 8; aB > 0; aB--){al[aA[aB - 1]].pack({position:"absolute", top:0, right:this._gridPadding.right - ar[aB - 1]}, {min:this._height - this._gridPadding.bottom, max:this._gridPadding.top})}var an = (this._width - this._gridPadding.left - this._gridPadding.right) / 2 + this._gridPadding.left - al.yMidAxis.getWidth() / 2; al.yMidAxis.pack({position:"absolute", top:0, left:an, zIndex:9, textAlign:"center"}, {min:this._height - this._gridPadding.bottom, max:this._gridPadding.top}); this.target.append(this.grid.createElement(this._gridPadding, this)); this.grid.draw(); var ak = this.series; var aD = ak.length; for (aB = 0, ay = aD; aB < ay; aB++){az = this.seriesStack[aB]; this.target.append(ak[az].shadowCanvas.createElement(this._gridPadding, "jqplot-series-shadowCanvas", null, this)); ak[az].shadowCanvas.setContext(); ak[az].shadowCanvas._elem.data("seriesIndex", az)}for (aB = 0, ay = aD; aB < ay; aB++){az = this.seriesStack[aB]; this.target.append(ak[az].canvas.createElement(this._gridPadding, "jqplot-series-canvas", null, this)); ak[az].canvas.setContext(); ak[az].canvas._elem.data("seriesIndex", az)}this.target.append(this.eventCanvas.createElement(this._gridPadding, "jqplot-event-canvas", null, this)); this.eventCanvas.setContext(); this.eventCanvas._ctx.fillStyle = "rgba(0,0,0,0)"; this.eventCanvas._ctx.fillRect(0, 0, this.eventCanvas._ctx.canvas.width, this.eventCanvas._ctx.canvas.height); this.bindCustomEvents(); if (this.legend.preDraw){this.eventCanvas._elem.before(aF); this.legend.pack(at); if (this.legend._elem){this.drawSeries({legendInfo:{location:this.legend.location, placement:this.legend.placement, width:this.legend.getWidth(), height:this.legend.getHeight(), xoffset:this.legend.xoffset, yoffset:this.legend.yoffset}})} else{this.drawSeries()}} else{this.drawSeries(); if (aD){H(ak[aD - 1].canvas._elem).after(aF)}this.legend.pack(at)}for (var aB = 0, ay = H.jqplot.eventListenerHooks.length; aB < ay; aB++){this.eventCanvas._elem.bind(H.jqplot.eventListenerHooks[aB][0], {plot:this}, H.jqplot.eventListenerHooks[aB][1])}for (var aB = 0, ay = this.eventListenerHooks.hooks.length; aB < ay; aB++){this.eventCanvas._elem.bind(this.eventListenerHooks.hooks[aB][0], {plot:this}, this.eventListenerHooks.hooks[aB][1])}var aq = this.fillBetween; if (aq.fill && aq.series1 !== aq.series2 && aq.series1 < aD && aq.series2 < aD && ak[aq.series1]._type === "line" && ak[aq.series2]._type === "line"){this.doFillBetweenLines()}for (var aB = 0, ay = H.jqplot.postDrawHooks.length; aB < ay; aB++){H.jqplot.postDrawHooks[aB].call(this)}for (var aB = 0, ay = this.postDrawHooks.hooks.length; aB < ay; aB++){this.postDrawHooks.hooks[aB].apply(this, this.postDrawHooks.args[aB])}if (this.target.is(":visible")){this._drawCount += 1}var ao, ap, aw, aj; for (aB = 0, ay = aD; aB < ay; aB++){ao = ak[aB]; ap = ao.renderer; aw = ".jqplot-point-label.jqplot-series-" + aB; if (ap.animation && ap.animation._supported && ap.animation.show && (this._drawCount < 2 || this.animateReplot)){aj = this.target.find(aw); aj.stop(true, true).hide(); ao.canvas._elem.stop(true, true).hide(); ao.shadowCanvas._elem.stop(true, true).hide(); ao.canvas._elem.jqplotEffect("blind", {mode:"show", direction:ap.animation.direction}, ap.animation.speed); ao.shadowCanvas._elem.jqplotEffect("blind", {mode:"show", direction:ap.animation.direction}, ap.animation.speed); aj.fadeIn(ap.animation.speed * 0.8)}}aj = null; this.target.trigger("jqplotPostDraw", [this])}}; N.prototype.doFillBetweenLines = function(){var ah = this.fillBetween; var aq = ah.series1; var ao = ah.series2; var ap = (aq < ao)?aq:ao; var an = (ao > aq)?ao:aq; var al = this.series[ap]; var ak = this.series[an]; if (ak.renderer.smooth){var aj = ak.renderer._smoothedData.slice(0).reverse()} else{var aj = ak.gridData.slice(0).reverse()}if (al.renderer.smooth){var am = al.renderer._smoothedData.concat(aj)} else{var am = al.gridData.concat(aj)}var ai = (ah.color !== null)?ah.color:this.series[aq].fillColor; var ar = (ah.baseSeries !== null)?ah.baseSeries:ap; var ag = this.series[ar].renderer.shapeRenderer; var af = {fillStyle:ai, fill:true, closePath:true}; ag.draw(al.shadowCanvas._ctx, am, af)}; this.bindCustomEvents = function(){this.eventCanvas._elem.bind("click", {plot:this}, this.onClick); this.eventCanvas._elem.bind("dblclick", {plot:this}, this.onDblClick); this.eventCanvas._elem.bind("mousedown", {plot:this}, this.onMouseDown); this.eventCanvas._elem.bind("mousemove", {plot:this}, this.onMouseMove); this.eventCanvas._elem.bind("mouseenter", {plot:this}, this.onMouseEnter); this.eventCanvas._elem.bind("mouseleave", {plot:this}, this.onMouseLeave); if (this.captureRightClick){this.eventCanvas._elem.bind("mouseup", {plot:this}, this.onRightClick); this.eventCanvas._elem.get(0).oncontextmenu = function(){return false}} else{this.eventCanvas._elem.bind("mouseup", {plot:this}, this.onMouseUp)}}; function ac(ao){var am = ao.data.plot; var ai = am.eventCanvas._elem.offset(); var al = {x:ao.pageX - ai.left, y:ao.pageY - ai.top}; var aj = {xaxis:null, yaxis:null, x2axis:null, y2axis:null, y3axis:null, y4axis:null, y5axis:null, y6axis:null, y7axis:null, y8axis:null, y9axis:null, yMidAxis:null}; var ak = ["xaxis", "yaxis", "x2axis", "y2axis", "y3axis", "y4axis", "y5axis", "y6axis", "y7axis", "y8axis", "y9axis", "yMidAxis"]; var af = am.axes; var ag, ah; for (ag = 11; ag > 0; ag--){ah = ak[ag - 1]; if (af[ah].show){aj[ah] = af[ah].series_p2u(al[ah.charAt(0)])}}return{offsets:ai, gridPos:al, dataPos:aj}}function ae(af, ag){var ak = ag.series; var aQ, aO, aN, aI, aJ, aD, aC, ap, an, at, au, aE; var aM, aR, aK, al, aB, aG, aP; var ah, aH; for (aN = ag.seriesStack.length - 1; aN >= 0; aN--){aQ = ag.seriesStack[aN]; aI = ak[aQ]; aP = aI._highlightThreshold; switch (aI.renderer.constructor){case H.jqplot.BarRenderer:aD = af.x; aC = af.y; for (aO = 0; aO < aI._barPoints.length; aO++){aB = aI._barPoints[aO]; aK = aI.gridData[aO]; if (aD > aB[0][0] && aD < aB[2][0] && aC > aB[2][1] && aC < aB[0][1]){return{seriesIndex:aI.index, pointIndex:aO, gridData:aK, data:aI.data[aO], points:aI._barPoints[aO]}}}break; case H.jqplot.PyramidRenderer:aD = af.x; aC = af.y; for (aO = 0; aO < aI._barPoints.length; aO++){aB = aI._barPoints[aO]; aK = aI.gridData[aO]; if (aD > aB[0][0] + aP[0][0] && aD < aB[2][0] + aP[2][0] && aC > aB[2][1] && aC < aB[0][1]){return{seriesIndex:aI.index, pointIndex:aO, gridData:aK, data:aI.data[aO], points:aI._barPoints[aO]}}}break; case H.jqplot.DonutRenderer:at = aI.startAngle / 180 * Math.PI; aD = af.x - aI._center[0]; aC = af.y - aI._center[1]; aJ = Math.sqrt(Math.pow(aD, 2) + Math.pow(aC, 2)); if (aD > 0 && - aC >= 0){ap = 2 * Math.PI - Math.atan( - aC / aD)} else{if (aD > 0 && - aC < 0){ap = - Math.atan( - aC / aD)} else{if (aD < 0){ap = Math.PI - Math.atan( - aC / aD)} else{if (aD == 0 && - aC > 0){ap = 3 * Math.PI / 2} else{if (aD == 0 && - aC < 0){ap = Math.PI / 2} else{if (aD == 0 && aC == 0){ap = 0}}}}}}if (at){ap -= at; if (ap < 0){ap += 2 * Math.PI} else{if (ap > 2 * Math.PI){ap -= 2 * Math.PI}}}an = aI.sliceMargin / 180 * Math.PI; if (aJ < aI._radius && aJ > aI._innerRadius){for (aO = 0; aO < aI.gridData.length; aO++){au = (aO > 0)?aI.gridData[aO - 1][1] + an:an; aE = aI.gridData[aO][1]; if (ap > au && ap < aE){return{seriesIndex:aI.index, pointIndex:aO, gridData:aI.gridData[aO], data:aI.data[aO]}}}}break; case H.jqplot.PieRenderer:at = aI.startAngle / 180 * Math.PI; aD = af.x - aI._center[0]; aC = af.y - aI._center[1]; aJ = Math.sqrt(Math.pow(aD, 2) + Math.pow(aC, 2)); if (aD > 0 && - aC >= 0){ap = 2 * Math.PI - Math.atan( - aC / aD)} else{if (aD > 0 && - aC < 0){ap = - Math.atan( - aC / aD)} else{if (aD < 0){ap = Math.PI - Math.atan( - aC / aD)} else{if (aD == 0 && - aC > 0){ap = 3 * Math.PI / 2} else{if (aD == 0 && - aC < 0){ap = Math.PI / 2} else{if (aD == 0 && aC == 0){ap = 0}}}}}}if (at){ap -= at; if (ap < 0){ap += 2 * Math.PI} else{if (ap > 2 * Math.PI){ap -= 2 * Math.PI}}}an = aI.sliceMargin / 180 * Math.PI; if (aJ < aI._radius){for (aO = 0; aO < aI.gridData.length; aO++){au = (aO > 0)?aI.gridData[aO - 1][1] + an:an; aE = aI.gridData[aO][1]; if (ap > au && ap < aE){return{seriesIndex:aI.index, pointIndex:aO, gridData:aI.gridData[aO], data:aI.data[aO]}}}}break; case H.jqplot.BubbleRenderer:aD = af.x; aC = af.y; var az = null; if (aI.show){for (var aO = 0; aO < aI.gridData.length; aO++){aK = aI.gridData[aO]; aR = Math.sqrt((aD - aK[0]) * (aD - aK[0]) + (aC - aK[1]) * (aC - aK[1])); if (aR <= aK[2] && (aR <= aM || aM == null)){aM = aR; az = {seriesIndex:aQ, pointIndex:aO, gridData:aK, data:aI.data[aO]}}}if (az != null){return az}}break; case H.jqplot.FunnelRenderer:aD = af.x; aC = af.y; var aF = aI._vertices, aj = aF[0], ai = aF[aF.length - 1], am, ay, ar; function aL(aU, aW, aV){var aT = (aW[1] - aV[1]) / (aW[0] - aV[0]); var aS = aW[1] - aT * aW[0]; var aX = aU + aW[1]; return[(aX - aS) / aT, aX]}am = aL(aC, aj[0], ai[3]); ay = aL(aC, aj[1], ai[2]); for (aO = 0; aO < aF.length; aO++){ar = aF[aO]; if (aC >= ar[0][1] && aC <= ar[3][1] && aD >= am[0] && aD <= ay[0]){return{seriesIndex:aI.index, pointIndex:aO, gridData:null, data:aI.data[aO]}}}break; case H.jqplot.LineRenderer:aD = af.x; aC = af.y; aJ = aI.renderer; if (aI.show){if ((aI.fill || (aI.renderer.bands.show && aI.renderer.bands.fill)) && (!ag.plugins.highlighter || !ag.plugins.highlighter.show)){var aq = false; if (aD > aI._boundingBox[0][0] && aD < aI._boundingBox[1][0] && aC > aI._boundingBox[1][1] && aC < aI._boundingBox[0][1]){var ax = aI._areaPoints.length; var aA; var aO = ax - 1; for (var aA = 0; aA < ax; aA++){var aw = [aI._areaPoints[aA][0], aI._areaPoints[aA][1]]; var av = [aI._areaPoints[aO][0], aI._areaPoints[aO][1]]; if (aw[1] < aC && av[1] >= aC || av[1] < aC && aw[1] >= aC){if (aw[0] + (aC - aw[1]) / (av[1] - aw[1]) * (av[0] - aw[0]) < aD){aq = !aq}}aO = aA}}if (aq){return{seriesIndex:aQ, pointIndex:null, gridData:aI.gridData, data:aI.data, points:aI._areaPoints}}break} else{aH = aI.markerRenderer.size / 2 + aI.neighborThreshold; ah = (aH > 0)?aH:0; for (var aO = 0; aO < aI.gridData.length; aO++){aK = aI.gridData[aO]; if (aJ.constructor == H.jqplot.OHLCRenderer){if (aJ.candleStick){var ao = aI._yaxis.series_u2p; if (aD >= aK[0] - aJ._bodyWidth / 2 && aD <= aK[0] + aJ._bodyWidth / 2 && aC >= ao(aI.data[aO][2]) && aC <= ao(aI.data[aO][3])){return{seriesIndex:aQ, pointIndex:aO, gridData:aK, data:aI.data[aO]}}} else{if (!aJ.hlc){var ao = aI._yaxis.series_u2p; if (aD >= aK[0] - aJ._tickLength && aD <= aK[0] + aJ._tickLength && aC >= ao(aI.data[aO][2]) && aC <= ao(aI.data[aO][3])){return{seriesIndex:aQ, pointIndex:aO, gridData:aK, data:aI.data[aO]}}} else{var ao = aI._yaxis.series_u2p; if (aD >= aK[0] - aJ._tickLength && aD <= aK[0] + aJ._tickLength && aC >= ao(aI.data[aO][1]) && aC <= ao(aI.data[aO][2])){return{seriesIndex:aQ, pointIndex:aO, gridData:aK, data:aI.data[aO]}}}}} else{if (aK[0] != null && aK[1] != null){aR = Math.sqrt((aD - aK[0]) * (aD - aK[0]) + (aC - aK[1]) * (aC - aK[1])); + if (aR <= ah && (aR <= aM || aM == null)){aM = aR; return{seriesIndex:aQ, pointIndex:aO, gridData:aK, data:aI.data[aO]}}}}}}}break; + default:aD = af.x; aC = af.y; aJ = aI.renderer; + if (aI.show){aH = aI.markerRenderer.size / 2 + aI.neighborThreshold; ah = (aH > 0)?aH:0; + for (var aO = 0; aO < aI.gridData.length; aO++){ + aK = aI.gridData[aO]; if (aJ.constructor == H.jqplot.OHLCRenderer){ + if (aJ.candleStick){var ao = aI._yaxis.series_u2p; if (aD >= aK[0] - aJ._bodyWidth / 2 && aD <= aK[0] + aJ._bodyWidth / 2 && aC >= ao(aI.data[aO][2]) && aC <= ao(aI.data[aO][3])){return{seriesIndex:aQ, pointIndex:aO, gridData:aK, data:aI.data[aO]}}} else{if (!aJ.hlc){var ao = aI._yaxis.series_u2p; if (aD >= aK[0] - aJ._tickLength && aD <= aK[0] + aJ._tickLength && aC >= ao(aI.data[aO][2]) && aC <= ao(aI.data[aO][3])){return{seriesIndex:aQ, pointIndex:aO, gridData:aK, data:aI.data[aO]}}} else{var ao = aI._yaxis.series_u2p; if (aD >= aK[0] - aJ._tickLength && aD <= aK[0] + aJ._tickLength && aC >= ao(aI.data[aO][1]) && aC <= ao(aI.data[aO][2])){return{seriesIndex:aQ, pointIndex:aO, gridData:aK, data:aI.data[aO]}}}}} else{aR = Math.sqrt((aD - aK[0]) * (aD - aK[0]) + (aC - aK[1]) * (aC - aK[1])); if (aR <= ah && (aR <= aM || aM == null)){aM = aR; return{seriesIndex:aQ, pointIndex:aO, gridData:aK, data:aI.data[aO]}}}}}break}}return null}this.onClick = function(ah){var ag = ac(ah); var aj = ah.data.plot; var ai = ae(ag.gridPos, aj); var af = H.Event("jqplotClick"); af.pageX = ah.pageX; af.pageY = ah.pageY; H(this).trigger(af, [ag.gridPos, ag.dataPos, ai, aj])}; this.onDblClick = function(ah){var ag = ac(ah); var aj = ah.data.plot; var ai = ae(ag.gridPos, aj); var af = H.Event("jqplotDblClick"); af.pageX = ah.pageX; af.pageY = ah.pageY; H(this).trigger(af, [ag.gridPos, ag.dataPos, ai, aj])}; this.onMouseDown = function(ah){var ag = ac(ah); var aj = ah.data.plot; var ai = ae(ag.gridPos, aj); var af = H.Event("jqplotMouseDown"); af.pageX = ah.pageX; af.pageY = ah.pageY; H(this).trigger(af, [ag.gridPos, ag.dataPos, ai, aj])}; this.onMouseUp = function(ah){var ag = ac(ah); var af = H.Event("jqplotMouseUp"); af.pageX = ah.pageX; af.pageY = ah.pageY; H(this).trigger(af, [ag.gridPos, ag.dataPos, null, ah.data.plot])}; this.onRightClick = function(ah){var ag = ac(ah); var aj = ah.data.plot; var ai = ae(ag.gridPos, aj); if (aj.captureRightClick){if (ah.which == 3){var af = H.Event("jqplotRightClick"); af.pageX = ah.pageX; af.pageY = ah.pageY; H(this).trigger(af, [ag.gridPos, ag.dataPos, ai, aj])} else{var af = H.Event("jqplotMouseUp"); af.pageX = ah.pageX; af.pageY = ah.pageY; H(this).trigger(af, [ag.gridPos, ag.dataPos, ai, aj])}}}; this.onMouseMove = function(ah){var ag = ac(ah); var aj = ah.data.plot; var ai = ae(ag.gridPos, aj); var af = H.Event("jqplotMouseMove"); af.pageX = ah.pageX; af.pageY = ah.pageY; H(this).trigger(af, [ag.gridPos, ag.dataPos, ai, aj])}; this.onMouseEnter = function(ah){var ag = ac(ah); var ai = ah.data.plot; var af = H.Event("jqplotMouseEnter"); af.pageX = ah.pageX; af.pageY = ah.pageY; af.relatedTarget = ah.relatedTarget; H(this).trigger(af, [ag.gridPos, ag.dataPos, null, ai])}; this.onMouseLeave = function(ah){var ag = ac(ah); var ai = ah.data.plot; var af = H.Event("jqplotMouseLeave"); af.pageX = ah.pageX; af.pageY = ah.pageY; af.relatedTarget = ah.relatedTarget; H(this).trigger(af, [ag.gridPos, ag.dataPos, null, ai])}; this.drawSeries = function(ah, af){var aj, ai, ag; af = (typeof (ah) === "number" && af == null)?ah:af; ah = (typeof (ah) === "object")?ah:{}; if (af != r){ai = this.series[af]; ag = ai.shadowCanvas._ctx; ag.clearRect(0, 0, ag.canvas.width, ag.canvas.height); ai.drawShadow(ag, ah, this); ag = ai.canvas._ctx; ag.clearRect(0, 0, ag.canvas.width, ag.canvas.height); ai.draw(ag, ah, this); if (ai.renderer.constructor == H.jqplot.BezierCurveRenderer){if (af < this.series.length - 1){this.drawSeries(af + 1)}}} else{for (aj = 0; aj < this.series.length; aj++){ai = this.series[aj]; ag = ai.shadowCanvas._ctx; ag.clearRect(0, 0, ag.canvas.width, ag.canvas.height); ai.drawShadow(ag, ah, this); ag = ai.canvas._ctx; ag.clearRect(0, 0, ag.canvas.width, ag.canvas.height); ai.draw(ag, ah, this)}}ah = af = aj = ai = ag = null}; this.moveSeriesToFront = function(ag){ag = parseInt(ag, 10); var aj = H.inArray(ag, this.seriesStack); if (aj == - 1){return}if (aj == this.seriesStack.length - 1){this.previousSeriesStack = this.seriesStack.slice(0); return}var af = this.seriesStack[this.seriesStack.length - 1]; var ai = this.series[ag].canvas._elem.detach(); var ah = this.series[ag].shadowCanvas._elem.detach(); this.series[af].shadowCanvas._elem.after(ah); this.series[af].canvas._elem.after(ai); this.previousSeriesStack = this.seriesStack.slice(0); this.seriesStack.splice(aj, 1); this.seriesStack.push(ag)}; this.moveSeriesToBack = function(ag){ag = parseInt(ag, 10); var aj = H.inArray(ag, this.seriesStack); if (aj == 0 || aj == - 1){return}var af = this.seriesStack[0]; var ai = this.series[ag].canvas._elem.detach(); var ah = this.series[ag].shadowCanvas._elem.detach(); this.series[af].shadowCanvas._elem.before(ah); this.series[af].canvas._elem.before(ai); this.previousSeriesStack = this.seriesStack.slice(0); this.seriesStack.splice(aj, 1); this.seriesStack.unshift(ag)}; this.restorePreviousSeriesOrder = function(){var al, ak, aj, ai, ah, af, ag; if (this.seriesStack == this.previousSeriesStack){return}for (al = 1; al < this.previousSeriesStack.length; al++){af = this.previousSeriesStack[al]; ag = this.previousSeriesStack[al - 1]; aj = this.series[af].canvas._elem.detach(); ai = this.series[af].shadowCanvas._elem.detach(); this.series[ag].shadowCanvas._elem.after(ai); this.series[ag].canvas._elem.after(aj)}ah = this.seriesStack.slice(0); this.seriesStack = this.previousSeriesStack.slice(0); this.previousSeriesStack = ah}; this.restoreOriginalSeriesOrder = function(){var aj, ai, af = [], ah, ag; for (aj = 0; aj < this.series.length; aj++){af.push(aj)}if (this.seriesStack == af){return}this.previousSeriesStack = this.seriesStack.slice(0); this.seriesStack = af; for (aj = 1; aj < this.seriesStack.length; aj++){ah = this.series[aj].canvas._elem.detach(); ag = this.series[aj].shadowCanvas._elem.detach(); this.series[aj - 1].shadowCanvas._elem.after(ag); this.series[aj - 1].canvas._elem.after(ah)}}; this.activateTheme = function(af){this.themeEngine.activate(this, af)}}H.jqplot.computeHighlightColors = function(ac){var ae; if (H.isArray(ac)){ae = []; for (var ag = 0; ag < ac.length; ag++){var af = H.jqplot.getColorComponents(ac[ag]); var ab = [af[0], af[1], af[2]]; var ah = ab[0] + ab[1] + ab[2]; for (var ad = 0; ad < 3; ad++){ab[ad] = (ah > 660)?ab[ad] * 0.85:0.73 * ab[ad] + 90; ab[ad] = parseInt(ab[ad], 10); (ab[ad] > 255)?255:ab[ad]}ab[3] = 0.3 + 0.35 * af[3]; ae.push("rgba(" + ab[0] + "," + ab[1] + "," + ab[2] + "," + ab[3] + ")")}} else{var af = H.jqplot.getColorComponents(ac); var ab = [af[0], af[1], af[2]]; var ah = ab[0] + ab[1] + ab[2]; for (var ad = 0; ad < 3; ad++){ab[ad] = (ah > 660)?ab[ad] * 0.85:0.73 * ab[ad] + 90; ab[ad] = parseInt(ab[ad], 10); (ab[ad] > 255)?255:ab[ad]}ab[3] = 0.3 + 0.35 * af[3]; ae = "rgba(" + ab[0] + "," + ab[1] + "," + ab[2] + "," + ab[3] + ")"}return ae}; H.jqplot.ColorGenerator = function(ac){ac = ac || H.jqplot.config.defaultColors; var ab = 0; this.next = function(){if (ab < ac.length){return ac[ab++]} else{ab = 0; return ac[ab++]}}; this.previous = function(){if (ab > 0){return ac[ab--]} else{ab = ac.length - 1; return ac[ab]}}; this.get = function(ae){var ad = ae - ac.length * Math.floor(ae / ac.length); return ac[ad]}; this.setColors = function(ad){ac = ad}; this.reset = function(){ab = 0}; this.getIndex = function(){return ab}; this.setIndex = function(ad){ab = ad}}; H.jqplot.hex2rgb = function(ad, ab){ad = ad.replace("#", ""); if (ad.length == 3){ad = ad.charAt(0) + ad.charAt(0) + ad.charAt(1) + ad.charAt(1) + ad.charAt(2) + ad.charAt(2)}var ac; ac = "rgba(" + parseInt(ad.slice(0, 2), 16) + ", " + parseInt(ad.slice(2, 4), 16) + ", " + parseInt(ad.slice(4, 6), 16); if (ab){ac += ", " + ab}ac += ")"; return ac}; H.jqplot.rgb2hex = function(ag){var ad = /rgba?\( *([0-9]{1,3}\.?[0-9]*%?) *, *([0-9]{1,3}\.?[0-9]*%?) *, *([0-9]{1,3}\.?[0-9]*%?) *(?:, *[0-9.]*)?\)/; var ab = ag.match(ad); var af = "#"; for (var ae = 1; ae < 4; ae++){var ac; + if (ab[ae].search(/%/) != - 1){ac = parseInt(255 * ab[ae] / 100, 10).toString(16); + if (ac.length == 1){ac = "0" + ac}} else{ac = parseInt(ab[ae], 10).toString(16); if (ac.length == 1){ac = "0" + ac}}af += ac}return af}; + H.jqplot.normalize2rgb = function(ac, ab){if (ac.search(/^ *rgba?\(/) != - 1){return ac} + else{if (ac.search(/^ *#?[0-9a-fA-F]?[0-9a-fA-F]/) != - 1){return H.jqplot.hex2rgb(ac, ab)} else{throw"invalid color spec"}}}; + H.jqplot.getColorComponents = function(ag){ag = H.jqplot.colorKeywordMap[ag] || ag; var ae = H.jqplot.normalize2rgb(ag); + var ad = /rgba?\( *([0-9]{1,3}\.?[0-9]*%?) *, *([0-9]{1,3}\.?[0-9]*%?) *, *([0-9]{1,3}\.?[0-9]*%?) *,? *([0-9.]* *)?\)/; + var ab = ae.match(ad); var ac = []; for (var af = 1; af < 4; af++){if (ab[af].search(/%/) != - 1){ac[af - 1] = parseInt(255 * ab[af] / 100, 10)} + else{ac[af - 1] = parseInt(ab[af], 10)}}ac[3] = parseFloat(ab[4])?parseFloat(ab[4]):1; + return ac}; H.jqplot.colorKeywordMap = {aliceblue:"rgb(240, 248, 255)", antiquewhite:"rgb(250, 235, 215)", aqua:"rgb( 0, 255, 255)", aquamarine:"rgb(127, 255, 212)", azure:"rgb(240, 255, 255)", beige:"rgb(245, 245, 220)", bisque:"rgb(255, 228, 196)", black:"rgb( 0, 0, 0)", blanchedalmond:"rgb(255, 235, 205)", blue:"rgb( 0, 0, 255)", blueviolet:"rgb(138, 43, 226)", brown:"rgb(165, 42, 42)", burlywood:"rgb(222, 184, 135)", cadetblue:"rgb( 95, 158, 160)", chartreuse:"rgb(127, 255, 0)", chocolate:"rgb(210, 105, 30)", coral:"rgb(255, 127, 80)", cornflowerblue:"rgb(100, 149, 237)", cornsilk:"rgb(255, 248, 220)", crimson:"rgb(220, 20, 60)", cyan:"rgb( 0, 255, 255)", darkblue:"rgb( 0, 0, 139)", darkcyan:"rgb( 0, 139, 139)", darkgoldenrod:"rgb(184, 134, 11)", darkgray:"rgb(169, 169, 169)", darkgreen:"rgb( 0, 100, 0)", darkgrey:"rgb(169, 169, 169)", darkkhaki:"rgb(189, 183, 107)", darkmagenta:"rgb(139, 0, 139)", darkolivegreen:"rgb( 85, 107, 47)", darkorange:"rgb(255, 140, 0)", darkorchid:"rgb(153, 50, 204)", darkred:"rgb(139, 0, 0)", darksalmon:"rgb(233, 150, 122)", darkseagreen:"rgb(143, 188, 143)", darkslateblue:"rgb( 72, 61, 139)", darkslategray:"rgb( 47, 79, 79)", darkslategrey:"rgb( 47, 79, 79)", darkturquoise:"rgb( 0, 206, 209)", darkviolet:"rgb(148, 0, 211)", deeppink:"rgb(255, 20, 147)", deepskyblue:"rgb( 0, 191, 255)", dimgray:"rgb(105, 105, 105)", dimgrey:"rgb(105, 105, 105)", dodgerblue:"rgb( 30, 144, 255)", firebrick:"rgb(178, 34, 34)", floralwhite:"rgb(255, 250, 240)", forestgreen:"rgb( 34, 139, 34)", fuchsia:"rgb(255, 0, 255)", gainsboro:"rgb(220, 220, 220)", ghostwhite:"rgb(248, 248, 255)", gold:"rgb(255, 215, 0)", goldenrod:"rgb(218, 165, 32)", gray:"rgb(128, 128, 128)", grey:"rgb(128, 128, 128)", green:"rgb( 0, 128, 0)", greenyellow:"rgb(173, 255, 47)", honeydew:"rgb(240, 255, 240)", hotpink:"rgb(255, 105, 180)", indianred:"rgb(205, 92, 92)", indigo:"rgb( 75, 0, 130)", ivory:"rgb(255, 255, 240)", khaki:"rgb(240, 230, 140)", lavender:"rgb(230, 230, 250)", lavenderblush:"rgb(255, 240, 245)", lawngreen:"rgb(124, 252, 0)", lemonchiffon:"rgb(255, 250, 205)", lightblue:"rgb(173, 216, 230)", lightcoral:"rgb(240, 128, 128)", lightcyan:"rgb(224, 255, 255)", lightgoldenrodyellow:"rgb(250, 250, 210)", lightgray:"rgb(211, 211, 211)", lightgreen:"rgb(144, 238, 144)", lightgrey:"rgb(211, 211, 211)", lightpink:"rgb(255, 182, 193)", lightsalmon:"rgb(255, 160, 122)", lightseagreen:"rgb( 32, 178, 170)", lightskyblue:"rgb(135, 206, 250)", lightslategray:"rgb(119, 136, 153)", lightslategrey:"rgb(119, 136, 153)", lightsteelblue:"rgb(176, 196, 222)", lightyellow:"rgb(255, 255, 224)", lime:"rgb( 0, 255, 0)", limegreen:"rgb( 50, 205, 50)", linen:"rgb(250, 240, 230)", magenta:"rgb(255, 0, 255)", maroon:"rgb(128, 0, 0)", mediumaquamarine:"rgb(102, 205, 170)", mediumblue:"rgb( 0, 0, 205)", mediumorchid:"rgb(186, 85, 211)", mediumpurple:"rgb(147, 112, 219)", mediumseagreen:"rgb( 60, 179, 113)", mediumslateblue:"rgb(123, 104, 238)", mediumspringgreen:"rgb( 0, 250, 154)", mediumturquoise:"rgb( 72, 209, 204)", mediumvioletred:"rgb(199, 21, 133)", midnightblue:"rgb( 25, 25, 112)", mintcream:"rgb(245, 255, 250)", mistyrose:"rgb(255, 228, 225)", moccasin:"rgb(255, 228, 181)", navajowhite:"rgb(255, 222, 173)", navy:"rgb( 0, 0, 128)", oldlace:"rgb(253, 245, 230)", olive:"rgb(128, 128, 0)", olivedrab:"rgb(107, 142, 35)", orange:"rgb(255, 165, 0)", orangered:"rgb(255, 69, 0)", orchid:"rgb(218, 112, 214)", palegoldenrod:"rgb(238, 232, 170)", palegreen:"rgb(152, 251, 152)", paleturquoise:"rgb(175, 238, 238)", palevioletred:"rgb(219, 112, 147)", papayawhip:"rgb(255, 239, 213)", peachpuff:"rgb(255, 218, 185)", peru:"rgb(205, 133, 63)", pink:"rgb(255, 192, 203)", plum:"rgb(221, 160, 221)", powderblue:"rgb(176, 224, 230)", purple:"rgb(128, 0, 128)", red:"rgb(255, 0, 0)", rosybrown:"rgb(188, 143, 143)", royalblue:"rgb( 65, 105, 225)", saddlebrown:"rgb(139, 69, 19)", salmon:"rgb(250, 128, 114)", sandybrown:"rgb(244, 164, 96)", seagreen:"rgb( 46, 139, 87)", seashell:"rgb(255, 245, 238)", sienna:"rgb(160, 82, 45)", silver:"rgb(192, 192, 192)", skyblue:"rgb(135, 206, 235)", slateblue:"rgb(106, 90, 205)", slategray:"rgb(112, 128, 144)", slategrey:"rgb(112, 128, 144)", snow:"rgb(255, 250, 250)", springgreen:"rgb( 0, 255, 127)", steelblue:"rgb( 70, 130, 180)", tan:"rgb(210, 180, 140)", teal:"rgb( 0, 128, 128)", thistle:"rgb(216, 191, 216)", tomato:"rgb(255, 99, 71)", turquoise:"rgb( 64, 224, 208)", violet:"rgb(238, 130, 238)", wheat:"rgb(245, 222, 179)", white:"rgb(255, 255, 255)", whitesmoke:"rgb(245, 245, 245)", yellow:"rgb(255, 255, 0)", yellowgreen:"rgb(154, 205, 50)"}; H.jqplot.AxisLabelRenderer = function(ab){H.jqplot.ElemContainer.call(this); this.axis; this.show = true; this.label = ""; this.fontFamily = null; this.fontSize = null; this.textColor = null; this._elem; this.escapeHTML = false; H.extend(true, this, ab)}; H.jqplot.AxisLabelRenderer.prototype = new H.jqplot.ElemContainer(); H.jqplot.AxisLabelRenderer.prototype.constructor = H.jqplot.AxisLabelRenderer; H.jqplot.AxisLabelRenderer.prototype.init = function(ab){H.extend(true, this, ab)}; H.jqplot.AxisLabelRenderer.prototype.draw = function(ab, ac){if (this._elem){this._elem.emptyForce(); this._elem = null}this._elem = H('<div style="position:absolute;" class="jqplot-' + this.axis + '-label"></div>'); if (Number(this.label)){this._elem.css("white-space", "nowrap")}if (!this.escapeHTML){this._elem.html(this.label)} else{this._elem.text(this.label)}if (this.fontFamily){this._elem.css("font-family", this.fontFamily)}if (this.fontSize){this._elem.css("font-size", this.fontSize)}if (this.textColor){this._elem.css("color", this.textColor)}return this._elem}; H.jqplot.AxisLabelRenderer.prototype.pack = function(){}; H.jqplot.AxisTickRenderer = function(ab){H.jqplot.ElemContainer.call(this); this.mark = "outside"; this.axis; this.showMark = true; this.showGridline = true; this.isMinorTick = false; this.size = 4; this.markSize = 6; this.show = true; this.showLabel = true; this.label = null; this.value = null; this._styles = {}; this.formatter = H.jqplot.DefaultTickFormatter; this.prefix = ""; this.suffix = ""; this.formatString = ""; this.fontFamily; this.fontSize; this.textColor; this.escapeHTML = false; this._elem; this._breakTick = false; H.extend(true, this, ab)}; H.jqplot.AxisTickRenderer.prototype.init = function(ab){H.extend(true, this, ab)}; H.jqplot.AxisTickRenderer.prototype = new H.jqplot.ElemContainer(); H.jqplot.AxisTickRenderer.prototype.constructor = H.jqplot.AxisTickRenderer; H.jqplot.AxisTickRenderer.prototype.setTick = function(ab, ad, ac){this.value = ab; this.axis = ad; if (ac){this.isMinorTick = true}return this}; H.jqplot.AxisTickRenderer.prototype.draw = function(){if (this.label === null){this.label = this.prefix + this.formatter(this.formatString, this.value) + this.suffix}var ac = {position:"absolute"}; if (Number(this.label)){ac.whitSpace = "nowrap"}if (this._elem){this._elem.emptyForce(); this._elem = null}this._elem = H(document.createElement("div")); this._elem.addClass("jqplot-" + this.axis + "-tick"); if (!this.escapeHTML){this._elem.html(this.label)} else{this._elem.text(this.label)}this._elem.css(ac); for (var ab in this._styles){this._elem.css(ab, this._styles[ab])}if (this.fontFamily){this._elem.css("font-family", this.fontFamily)}if (this.fontSize){this._elem.css("font-size", this.fontSize)}if (this.textColor){this._elem.css("color", this.textColor)}if (this._breakTick){this._elem.addClass("jqplot-breakTick")}return this._elem}; H.jqplot.DefaultTickFormatter = function(ab, ac){if (typeof ac == "number"){if (!ab){ab = H.jqplot.config.defaultTickFormatString}return H.jqplot.sprintf(ab, ac)} else{return String(ac)}}; H.jqplot.PercentTickFormatter = function(ab, ac){if (typeof ac == "number"){ac = 100 * ac; if (!ab){ab = H.jqplot.config.defaultTickFormatString}return H.jqplot.sprintf(ab, ac)} else{return String(ac)}}; H.jqplot.AxisTickRenderer.prototype.pack = function(){}; H.jqplot.CanvasGridRenderer = function(){this.shadowRenderer = new H.jqplot.ShadowRenderer()}; H.jqplot.CanvasGridRenderer.prototype.init = function(ac){this._ctx; H.extend(true, this, ac); var ab = {lineJoin:"miter", lineCap:"round", fill:false, isarc:false, angle:this.shadowAngle, offset:this.shadowOffset, alpha:this.shadowAlpha, depth:this.shadowDepth, lineWidth:this.shadowWidth, closePath:false, strokeStyle:this.shadowColor}; this.renderer.shadowRenderer.init(ab)}; H.jqplot.CanvasGridRenderer.prototype.createElement = function(ae){var ad; if (this._elem){if (H.jqplot.use_excanvas && window.G_vmlCanvasManager.uninitElement !== r){ad = this._elem.get(0); window.G_vmlCanvasManager.uninitElement(ad); ad = null}this._elem.emptyForce(); this._elem = null}ad = ae.canvasManager.getCanvas(); var ab = this._plotDimensions.width; var ac = this._plotDimensions.height; ad.width = ab; ad.height = ac; this._elem = H(ad); this._elem.addClass("jqplot-grid-canvas"); this._elem.css({position:"absolute", left:0, top:0}); ad = ae.canvasManager.initCanvas(ad); this._top = this._offsets.top; this._bottom = ac - this._offsets.bottom; this._left = this._offsets.left; this._right = ab - this._offsets.right; this._width = this._right - this._left; this._height = this._bottom - this._top; ad = null; return this._elem}; H.jqplot.CanvasGridRenderer.prototype.draw = function(){this._ctx = this._elem.get(0).getContext("2d"); var am = this._ctx; var ap = this._axes; am.save(); am.clearRect(0, 0, this._plotDimensions.width, this._plotDimensions.height); am.fillStyle = this.backgroundColor || this.background; am.fillRect(this._left, this._top, this._width, this._height); am.save(); am.lineJoin = "miter"; am.lineCap = "butt"; am.lineWidth = this.gridLineWidth; am.strokeStyle = this.gridLineColor; var at, ar, aj, ak; var ag = ["xaxis", "yaxis", "x2axis", "y2axis"]; for (var aq = 4; aq > 0; aq--){var aw = ag[aq - 1]; var ab = ap[aw]; var au = ab._ticks; var al = au.length; if (ab.show){if (ab.drawBaseline){var av = {}; if (ab.baselineWidth !== null){av.lineWidth = ab.baselineWidth}if (ab.baselineColor !== null){av.strokeStyle = ab.baselineColor}switch (aw){case"xaxis":ai(this._left, this._bottom, this._right, this._bottom, av); break; case"yaxis":ai(this._left, this._bottom, this._left, this._top, av); break; case"x2axis":ai(this._left, this._bottom, this._right, this._bottom, av); break; case"y2axis":ai(this._right, this._bottom, this._right, this._top, av); break}}for (var an = al; an > 0; an--){var ah = au[an - 1]; if (ah.show){var ae = Math.round(ab.u2p(ah.value)) + 0.5; switch (aw){case"xaxis":if (ah.showGridline && this.drawGridlines && ((!ah.isMinorTick && ab.drawMajorGridlines) || (ah.isMinorTick && ab.drawMinorGridlines))){ai(ae, this._top, ae, this._bottom)}if (ah.showMark && ah.mark && ((!ah.isMinorTick && ab.drawMajorTickMarks) || (ah.isMinorTick && ab.drawMinorTickMarks))){aj = ah.markSize; ak = ah.mark; var ae = Math.round(ab.u2p(ah.value)) + 0.5; switch (ak){case"outside":at = this._bottom; ar = this._bottom + aj; break; case"inside":at = this._bottom - aj; ar = this._bottom; break; case"cross":at = this._bottom - aj; ar = this._bottom + aj; break; default:at = this._bottom; ar = this._bottom + aj; break}if (this.shadow){this.renderer.shadowRenderer.draw(am, [[ae, at], [ae, ar]], {lineCap:"butt", lineWidth:this.gridLineWidth, offset:this.gridLineWidth * 0.75, depth:2, fill:false, closePath:false})}ai(ae, at, ae, ar)}break; case"yaxis":if (ah.showGridline && this.drawGridlines && ((!ah.isMinorTick && ab.drawMajorGridlines) || (ah.isMinorTick && ab.drawMinorGridlines))){ai(this._right, ae, this._left, ae)}if (ah.showMark && ah.mark && ((!ah.isMinorTick && ab.drawMajorTickMarks) || (ah.isMinorTick && ab.drawMinorTickMarks))){aj = ah.markSize; ak = ah.mark; var ae = Math.round(ab.u2p(ah.value)) + 0.5; switch (ak){case"outside":at = this._left - aj; ar = this._left; break; case"inside":at = this._left; ar = this._left + aj; break; case"cross":at = this._left - aj; ar = this._left + aj; break; default:at = this._left - aj; ar = this._left; break}if (this.shadow){this.renderer.shadowRenderer.draw(am, [[at, ae], [ar, ae]], {lineCap:"butt", lineWidth:this.gridLineWidth * 1.5, offset:this.gridLineWidth * 0.75, fill:false, closePath:false})}ai(at, ae, ar, ae, {strokeStyle:ab.borderColor})}break; case"x2axis":if (ah.showGridline && this.drawGridlines && ((!ah.isMinorTick && ab.drawMajorGridlines) || (ah.isMinorTick && ab.drawMinorGridlines))){ai(ae, this._bottom, ae, this._top)}if (ah.showMark && ah.mark && ((!ah.isMinorTick && ab.drawMajorTickMarks) || (ah.isMinorTick && ab.drawMinorTickMarks))){aj = ah.markSize; ak = ah.mark; var ae = Math.round(ab.u2p(ah.value)) + 0.5; switch (ak){case"outside":at = this._top - aj; ar = this._top; break; case"inside":at = this._top; ar = this._top + aj; break; case"cross":at = this._top - aj; ar = this._top + aj; break; default:at = this._top - aj; ar = this._top; break}if (this.shadow){this.renderer.shadowRenderer.draw(am, [[ae, at], [ae, ar]], {lineCap:"butt", lineWidth:this.gridLineWidth, offset:this.gridLineWidth * 0.75, depth:2, fill:false, closePath:false})}ai(ae, at, ae, ar)}break; case"y2axis":if (ah.showGridline && this.drawGridlines && ((!ah.isMinorTick && ab.drawMajorGridlines) || (ah.isMinorTick && ab.drawMinorGridlines))){ai(this._left, ae, this._right, ae)} +if (ah.showMark && ah.mark && ((!ah.isMinorTick && ab.drawMajorTickMarks) || (ah.isMinorTick && ab.drawMinorTickMarks))){ +aj = ah.markSize; ak = ah.mark; var ae = Math.round(ab.u2p(ah.value)) + 0.5; + switch (ak){case"outside":at = this._right; ar = this._right + aj; + break; case"inside":at = this._right - aj; ar = this._right; break; + case"cross":at = this._right - aj; ar = this._right + aj; + break; default:at = this._right; ar = this._right + aj; break} +if (this.shadow){this.renderer.shadowRenderer.draw(am, [[at, ae], [ar, ae]], { +lineCap:"butt", lineWidth:this.gridLineWidth * 1.5, offset:this.gridLineWidth * 0.75, fill:false, closePath:false})} +ai(at, ae, ar, ae, {strokeStyle:ab.borderColor})}break; default:break}}}ah = null}ab = null; au = null} +ag = ["y3axis", "y4axis", "y5axis", "y6axis", "y7axis", "y8axis", "y9axis", "yMidAxis"]; + for (var aq = 7; aq > 0; aq--){var ab = ap[ag[aq - 1]]; + var au = ab._ticks; if (ab.show){var ac = au[ab.numberTicks - 1]; + var af = au[0]; var ad = ab.getLeft(); + var ao = [[ad, ac.getTop() + ac.getHeight() / 2], [ad, af.getTop() + af.getHeight() / 2 + 1]]; + if (this.shadow){this.renderer.shadowRenderer.draw(am, ao, {lineCap:"butt", fill:false, closePath:false})}ai(ao[0][0], ao[0][1], ao[1][0], ao[1][1], {lineCap:"butt", strokeStyle:ab.borderColor, lineWidth:ab.borderWidth}); for (var an = au.length; an > 0; an--){var ah = au[an - 1]; aj = ah.markSize; ak = ah.mark; var ae = Math.round(ab.u2p(ah.value)) + 0.5; if (ah.showMark && ah.mark){switch (ak){case"outside":at = ad; ar = ad + aj; break; case"inside":at = ad - aj; ar = ad; break; case"cross":at = ad - aj; ar = ad + aj; break; default:at = ad; ar = ad + aj; break}ao = [[at, ae], [ar, ae]]; if (this.shadow){this.renderer.shadowRenderer.draw(am, ao, {lineCap:"butt", lineWidth:this.gridLineWidth * 1.5, offset:this.gridLineWidth * 0.75, fill:false, closePath:false})}ai(at, ae, ar, ae, {strokeStyle:ab.borderColor})}ah = null}af = null}ab = null; au = null}am.restore(); function ai(aB, aA, ay, ax, az){am.save(); az = az || {}; if (az.lineWidth == null || az.lineWidth != 0){H.extend(true, am, az); am.beginPath(); am.moveTo(aB, aA); am.lineTo(ay, ax); am.stroke(); am.restore()}}if (this.shadow){var ao = [[this._left, this._bottom], [this._right, this._bottom], [this._right, this._top]]; this.renderer.shadowRenderer.draw(am, ao)}if (this.borderWidth != 0 && this.drawBorder){ai(this._left, this._top, this._right, this._top, {lineCap:"round", strokeStyle:ap.x2axis.borderColor, lineWidth:ap.x2axis.borderWidth}); ai(this._right, this._top, this._right, this._bottom, {lineCap:"round", strokeStyle:ap.y2axis.borderColor, lineWidth:ap.y2axis.borderWidth}); ai(this._right, this._bottom, this._left, this._bottom, {lineCap:"round", strokeStyle:ap.xaxis.borderColor, lineWidth:ap.xaxis.borderWidth}); ai(this._left, this._bottom, this._left, this._top, {lineCap:"round", strokeStyle:ap.yaxis.borderColor, lineWidth:ap.yaxis.borderWidth})}am.restore(); am = null; ap = null}; H.jqplot.DivTitleRenderer = function(){}; H.jqplot.DivTitleRenderer.prototype.init = function(ab){H.extend(true, this, ab)}; H.jqplot.DivTitleRenderer.prototype.draw = function(){if (this._elem){this._elem.emptyForce(); this._elem = null}var ae = this.renderer; var ad = document.createElement("div"); this._elem = H(ad); this._elem.addClass("jqplot-title"); if (!this.text){this.show = false; this._elem.height(0); this._elem.width(0)} else{if (this.text){var ab; if (this.color){ab = this.color} else{if (this.textColor){ab = this.textColor}}var ac = {position:"absolute", top:"0px", left:"0px"}; if (this._plotWidth){ac.width = this._plotWidth + "px"}if (this.fontSize){ac.fontSize = this.fontSize}if (typeof this.textAlign === "string"){ac.textAlign = this.textAlign} else{ac.textAlign = "center"}if (ab){ac.color = ab}if (this.paddingBottom){ac.paddingBottom = this.paddingBottom}if (this.fontFamily){ac.fontFamily = this.fontFamily}this._elem.css(ac); if (this.escapeHtml){this._elem.text(this.text)} else{this._elem.html(this.text)}}}ad = null; return this._elem}; H.jqplot.DivTitleRenderer.prototype.pack = function(){}; var o = 0.1; H.jqplot.LinePattern = function(ap, ak){var aj = {dotted:[o, H.jqplot.config.dotGapLength], dashed:[H.jqplot.config.dashLength, H.jqplot.config.gapLength], solid:null}; if (typeof ak === "string"){if (ak[0] === "." || ak[0] === "-"){var aq = ak; ak = []; for (var ai = 0, af = aq.length; ai < af; ai++){if (aq[ai] === "."){ak.push(o)} else{if (aq[ai] === "-"){ak.push(H.jqplot.config.dashLength)} else{continue}}ak.push(H.jqplot.config.gapLength)}} else{ak = aj[ak]}}if (!(ak && ak.length)){return ap}var ae = 0; var al = ak[0]; var an = 0; var am = 0; var ah = 0; var ab = 0; var ao = function(ar, at){ap.moveTo(ar, at); an = ar; am = at; ah = ar; ab = at}; var ad = function(ar, ay){var aw = ap.lineWidth; var au = ar - an; var at = ay - am; var av = Math.sqrt(au * au + at * at); if ((av > 0) && (aw > 0)){au /= av; at /= av; while (true){var ax = aw * al; if (ax < av){an += ax * au; am += ax * at; if ((ae & 1) == 0){ap.lineTo(an, am)} else{ap.moveTo(an, am)}av -= ax; ae++; if (ae >= ak.length){ae = 0}al = ak[ae]} else{an = ar; am = ay; if ((ae & 1) == 0){ap.lineTo(an, am)} else{ap.moveTo(an, am)}al -= av / aw; break}}}}; var ac = function(){ap.beginPath()}; var ag = function(){ad(ah, ab)}; return{moveTo:ao, lineTo:ad, beginPath:ac, closePath:ag}}; H.jqplot.LineRenderer = function(){this.shapeRenderer = new H.jqplot.ShapeRenderer(); this.shadowRenderer = new H.jqplot.ShadowRenderer()}; H.jqplot.LineRenderer.prototype.init = function(ac, ah){ac = ac || {}; this._type = "line"; this.renderer.animation = {show:false, direction:"left", speed:2500, _supported:true}; this.renderer.smooth = false; this.renderer.tension = null; this.renderer.constrainSmoothing = true; this.renderer._smoothedData = []; this.renderer._smoothedPlotData = []; this.renderer._hiBandGridData = []; this.renderer._lowBandGridData = []; this.renderer._hiBandSmoothedData = []; this.renderer._lowBandSmoothedData = []; this.renderer.bandData = []; this.renderer.bands = {show:false, hiData:[], lowData:[], color:this.color, showLines:false, fill:true, fillColor:null, _min:null, _max:null, interval:"3%"}; var af = {highlightMouseOver:ac.highlightMouseOver, highlightMouseDown:ac.highlightMouseDown, highlightColor:ac.highlightColor}; delete (ac.highlightMouseOver); delete (ac.highlightMouseDown); delete (ac.highlightColor); H.extend(true, this.renderer, ac); this.renderer.options = ac; if (this.renderer.bandData.length > 1 && (!ac.bands || ac.bands.show == null)){this.renderer.bands.show = true} else{if (ac.bands && ac.bands.show == null && ac.bands.interval != null){this.renderer.bands.show = true}}if (this.fill){this.renderer.bands.show = false}if (this.renderer.bands.show){this.renderer.initBands.call(this, this.renderer.options, ah)}if (this._stack){this.renderer.smooth = false}var ag = {lineJoin:this.lineJoin, lineCap:this.lineCap, fill:this.fill, isarc:false, strokeStyle:this.color, fillStyle:this.fillColor, lineWidth:this.lineWidth, linePattern:this.linePattern, closePath:this.fill}; this.renderer.shapeRenderer.init(ag); var ad = ac.shadowOffset; if (ad == null){if (this.lineWidth > 2.5){ad = 1.25 * (1 + (Math.atan((this.lineWidth / 2.5)) / 0.785398163 - 1) * 0.6)} else{ad = 1.25 * Math.atan((this.lineWidth / 2.5)) / 0.785398163}}var ab = {lineJoin:this.lineJoin, lineCap:this.lineCap, fill:this.fill, isarc:false, angle:this.shadowAngle, offset:ad, alpha:this.shadowAlpha, depth:this.shadowDepth, lineWidth:this.lineWidth, linePattern:this.linePattern, closePath:this.fill}; this.renderer.shadowRenderer.init(ab); this._areaPoints = []; this._boundingBox = [[], []]; if (!this.isTrendline && this.fill || this.renderer.bands.show){this.highlightMouseOver = true; this.highlightMouseDown = false; this.highlightColor = null; if (af.highlightMouseDown && af.highlightMouseOver == null){af.highlightMouseOver = false}H.extend(true, this, {highlightMouseOver:af.highlightMouseOver, highlightMouseDown:af.highlightMouseDown, highlightColor:af.highlightColor}); if (!this.highlightColor){var ae = (this.renderer.bands.show)?this.renderer.bands.fillColor:this.fillColor; this.highlightColor = H.jqplot.computeHighlightColors(ae)}if (this.highlighter){this.highlighter.show = false}}if (!this.isTrendline && ah){ah.plugins.lineRenderer = {}; ah.postInitHooks.addOnce(v); ah.postDrawHooks.addOnce(Z); ah.eventListenerHooks.addOnce("jqplotMouseMove", g); ah.eventListenerHooks.addOnce("jqplotMouseDown", d); ah.eventListenerHooks.addOnce("jqplotMouseUp", Y); ah.eventListenerHooks.addOnce("jqplotClick", f); ah.eventListenerHooks.addOnce("jqplotRightClick", p)}}; H.jqplot.LineRenderer.prototype.initBands = function(ae, ao){var af = ae.bandData || []; var ah = this.renderer.bands; ah.hiData = []; ah.lowData = []; var av = this.data; ah._max = null; ah._min = null; if (af.length == 2){if (H.isArray(af[0][0])){var ai; var ab = 0, al = 0; for (var ap = 0, am = af[0].length; ap < am; ap++){ai = af[0][ap]; if ((ai[1] != null && ai[1] > ah._max) || ah._max == null){ah._max = ai[1]}if ((ai[1] != null && ai[1] < ah._min) || ah._min == null){ah._min = ai[1]}}for (var ap = 0, am = af[1].length; ap < am; ap++){ai = af[1][ap]; if ((ai[1] != null && ai[1] > ah._max) || ah._max == null){ah._max = ai[1]; al = 1}if ((ai[1] != null && ai[1] < ah._min) || ah._min == null){ah._min = ai[1]; ab = 1}}if (al === ab){ah.show = false}ah.hiData = af[al]; ah.lowData = af[ab]} else{if (af[0].length === av.length && af[1].length === av.length){var ad = (af[0][0] > af[1][0])?0:1; var aw = (ad)?0:1; for (var ap = 0, am = av.length; ap < am; ap++){ah.hiData.push([av[ap][0], af[ad][ap]]); ah.lowData.push([av[ap][0], af[aw][ap]])}} else{ah.show = false}}} else{if (af.length > 2 && !H.isArray(af[0][0])){var ad = (af[0][0] > af[0][1])?0:1; var aw = (ad)?0:1; for (var ap = 0, am = af.length; ap < am; ap++){ah.hiData.push([av[ap][0], af[ap][ad]]); ah.lowData.push([av[ap][0], af[ap][aw]])}} else{var ak = ah.interval; var au = null; var at = null; var ac = null; var an = null; if (H.isArray(ak)){au = ak[0]; at = ak[1]} else{au = ak}if (isNaN(au)){if (au.charAt(au.length - 1) === "%"){ac = "multiply"; au = parseFloat(au) / 100 + 1}} else{au = parseFloat(au); ac = "add"}if (at !== null && isNaN(at)){if (at.charAt(at.length - 1) === "%"){an = "multiply"; at = parseFloat(at) / 100 + 1}} else{if (at !== null){at = parseFloat(at); an = "add"}}if (au !== null){if (at === null){at = - au; an = ac; if (an === "multiply"){at += 2}}if (au < at){var aq = au; au = at; at = aq; aq = ac; ac = an; an = aq}for (var ap = 0, am = av.length; ap < am; ap++){switch (ac){case"add":ah.hiData.push([av[ap][0], av[ap][1] + au]); break; case"multiply":ah.hiData.push([av[ap][0], av[ap][1] * au]); break}switch (an){case"add":ah.lowData.push([av[ap][0], av[ap][1] + at]); break; case"multiply":ah.lowData.push([av[ap][0], av[ap][1] * at]); break}}} else{ah.show = false}}}var ag = ah.hiData; var aj = ah.lowData; for (var ap = 0, am = ag.length; ap < am; ap++){if ((ag[ap][1] != null && ag[ap][1] > ah._max) || ah._max == null){ah._max = ag[ap][1]}}for (var ap = 0, am = aj.length; ap < am; ap++){if ((aj[ap][1] != null && aj[ap][1] < ah._min) || ah._min == null){ah._min = aj[ap][1]}}if (ah.fillColor === null){var ar = H.jqplot.getColorComponents(ah.color); ar[3] = ar[3] * 0.5; ah.fillColor = "rgba(" + ar[0] + ", " + ar[1] + ", " + ar[2] + ", " + ar[3] + ")"}}; function G(ac, ab){return(3.4182054 + ab) * Math.pow(ac, - 0.3534992)}function k(ad, ac){var ab = Math.sqrt(Math.pow((ac[0] - ad[0]), 2) + Math.pow((ac[1] - ad[1]), 2)); return 5.7648 * Math.log(ab) + 7.4456}function w(ab){var ac = (Math.exp(2 * ab) - 1) / (Math.exp(2 * ab) + 1); return ac}function F(aD){var am = this.renderer.smooth; var ax = this.canvas.getWidth(); var ah = this._xaxis.series_p2u; var aA = this._yaxis.series_p2u; var az = null; var ag = null; var at = aD.length / ax; var ad = []; var ar = []; if (!isNaN(parseFloat(am))){az = parseFloat(am)} else{az = G(at, 0.5)}var ap = []; var ae = []; for (var ay = 0, au = aD.length; ay < au; ay++){ap.push(aD[ay][1]); ae.push(aD[ay][0])}function ao(aE, aF){if (aE - aF == 0){return Math.pow(10, 10)} else{return aE - aF}}var aq, al, ak, aj; var ab = aD.length - 1; for (var af = 1, av = aD.length; af < av; af++){var ac = []; var an = []; for (var aw = 0; aw < 2; aw++){var ay = af - 1 + aw; if (ay == 0 || ay == ab){ac[aw] = Math.pow(10, 10)} else{if (ap[ay + 1] - ap[ay] == 0 || ap[ay] - ap[ay - 1] == 0){ac[aw] = 0} else{if (((ae[ay + 1] - ae[ay]) / (ap[ay + 1] - ap[ay]) + (ae[ay] - ae[ay - 1]) / (ap[ay] - ap[ay - 1])) == 0){ac[aw] = 0} else{if ((ap[ay + 1] - ap[ay]) * (ap[ay] - ap[ay - 1]) < 0){ac[aw] = 0} else{ac[aw] = 2 / (ao(ae[ay + 1], ae[ay]) / (ap[ay + 1] - ap[ay]) + ao(ae[ay], ae[ay - 1]) / (ap[ay] - ap[ay - 1]))}}}}}if (af == 1){ac[0] = 3 / 2 * (ap[1] - ap[0]) / ao(ae[1], ae[0]) - ac[1] / 2} else{if (af == ab){ac[1] = 3 / 2 * (ap[ab] - ap[ab - 1]) / ao(ae[ab], ae[ab - 1]) - ac[0] / 2}}an[0] = - 2 * (ac[1] + 2 * ac[0]) / ao(ae[af], ae[af - 1]) + 6 * (ap[af] - ap[af - 1]) / Math.pow(ao(ae[af], ae[af - 1]), 2); an[1] = 2 * (2 * ac[1] + ac[0]) / ao(ae[af], ae[af - 1]) - 6 * (ap[af] - ap[af - 1]) / Math.pow(ao(ae[af], ae[af - 1]), 2); aj = 1 / 6 * (an[1] - an[0]) / ao(ae[af], ae[af - 1]); ak = 1 / 2 * (ae[af] * an[0] - ae[af - 1] * an[1]) / ao(ae[af], ae[af - 1]); al = (ap[af] - ap[af - 1] - ak * (Math.pow(ae[af], 2) - Math.pow(ae[af - 1], 2)) - aj * (Math.pow(ae[af], 3) - Math.pow(ae[af - 1], 3))) / ao(ae[af], ae[af - 1]); aq = ap[af - 1] - al * ae[af - 1] - ak * Math.pow(ae[af - 1], 2) - aj * Math.pow(ae[af - 1], 3); var aC = (ae[af] - ae[af - 1]) / az; var aB, ai; for (var aw = 0, au = az; aw < au; aw++){aB = []; ai = ae[af - 1] + aw * aC; aB.push(ai); aB.push(aq + al * ai + ak * Math.pow(ai, 2) + aj * Math.pow(ai, 3)); ad.push(aB); ar.push([ah(aB[0]), aA(aB[1])])}}ad.push(aD[ay]); ar.push([ah(aD[ay][0]), aA(aD[ay][1])]); return[ad, ar]}function B(aj){var ai = this.renderer.smooth; var aO = this.renderer.tension; var ab = this.canvas.getWidth(); var aB = this._xaxis.series_p2u; var ak = this._yaxis.series_p2u; var aC = null; var aD = null; var aN = null; var aI = null; var aG = null; var am = null; var aL = null; var ag = null; var aE, aF, ax, aw, au, ar; var ae, ac, ao, an; var av, at, aH; var ap = []; var ad = []; var af = aj.length / ab; var aM, aq, az, aA, ay; var al = []; var ah = []; if (!isNaN(parseFloat(ai))){aC = parseFloat(ai)} else{aC = G(af, 0.5)}if (!isNaN(parseFloat(aO))){aO = parseFloat(aO)}for (var aK = 0, aJ = aj.length - 1; aK < aJ; aK++){if (aO === null){am = Math.abs((aj[aK + 1][1] - aj[aK][1]) / (aj[aK + 1][0] - aj[aK][0])); aM = 0.3; aq = 0.6; az = (aq - aM) / 2; aA = 2.5; ay = - 1.4; ag = am / aA + ay; aI = az * w(ag) - az * w(ay) + aM; if (aK > 0){aL = Math.abs((aj[aK][1] - aj[aK - 1][1]) / (aj[aK][0] - aj[aK - 1][0]))}ag = aL / aA + ay; aG = az * w(ag) - az * w(ay) + aM; aN = (aI + aG) / 2} else{aN = aO}for (aE = 0; aE < aC; aE++){aF = aE / aC; ax = (1 + 2 * aF) * Math.pow((1 - aF), 2); aw = aF * Math.pow((1 - aF), 2); au = Math.pow(aF, 2) * (3 - 2 * aF); ar = Math.pow(aF, 2) * (aF - 1); if (aj[aK - 1]){ae = aN * (aj[aK + 1][0] - aj[aK - 1][0]); ac = aN * (aj[aK + 1][1] - aj[aK - 1][1])} else{ae = aN * (aj[aK + 1][0] - aj[aK][0]); ac = aN * (aj[aK + 1][1] - aj[aK][1])}if (aj[aK + 2]){ao = aN * (aj[aK + 2][0] - aj[aK][0]); an = aN * (aj[aK + 2][1] - aj[aK][1])} else{ao = aN * (aj[aK + 1][0] - aj[aK][0]); an = aN * (aj[aK + 1][1] - aj[aK][1])}av = ax * aj[aK][0] + au * aj[aK + 1][0] + aw * ae + ar * ao; at = ax * aj[aK][1] + au * aj[aK + 1][1] + aw * ac + ar * an; aH = [av, at]; al.push(aH); ah.push([aB(av), ak(at)])}}al.push(aj[aJ]); ah.push([aB(aj[aJ][0]), ak(aj[aJ][1])]); return[al, ah]}H.jqplot.LineRenderer.prototype.setGridData = function(aj){var af = this._xaxis.series_u2p; var ab = this._yaxis.series_u2p; var ag = this._plotData; var ak = this._prevPlotData; this.gridData = []; this._prevGridData = []; this.renderer._smoothedData = []; this.renderer._smoothedPlotData = []; this.renderer._hiBandGridData = []; this.renderer._lowBandGridData = []; this.renderer._hiBandSmoothedData = []; this.renderer._lowBandSmoothedData = []; var ae = this.renderer.bands; var ac = false; for (var ah = 0, ad = ag.length; ah < ad; ah++){if (ag[ah][0] != null && ag[ah][1] != null){this.gridData.push([af.call(this._xaxis, ag[ah][0]), ab.call(this._yaxis, ag[ah][1])])} else{if (ag[ah][0] == null){ac = true; this.gridData.push([null, ab.call(this._yaxis, ag[ah][1])])} else{if (ag[ah][1] == null){ac = true; this.gridData.push([af.call(this._xaxis, ag[ah][0]), null])}}}if (ak[ah] != null && ak[ah][0] != null && ak[ah][1] != null){this._prevGridData.push([af.call(this._xaxis, ak[ah][0]), ab.call(this._yaxis, ak[ah][1])])} else{if (ak[ah] != null && ak[ah][0] == null){this._prevGridData.push([null, ab.call(this._yaxis, ak[ah][1])])} else{if (ak[ah] != null && ak[ah][0] != null && ak[ah][1] == null){this._prevGridData.push([af.call(this._xaxis, ak[ah][0]), null])}}}}if (ac){this.renderer.smooth = false; if (this._type === "line"){ae.show = false}}if (this._type === "line" && ae.show){for (var ah = 0, ad = ae.hiData.length; ah < ad; ah++){this.renderer._hiBandGridData.push([af.call(this._xaxis, ae.hiData[ah][0]), ab.call(this._yaxis, ae.hiData[ah][1])])}for (var ah = 0, ad = ae.lowData.length; ah < ad; ah++){this.renderer._lowBandGridData.push([af.call(this._xaxis, ae.lowData[ah][0]), ab.call(this._yaxis, ae.lowData[ah][1])])}}if (this._type === "line" && this.renderer.smooth && this.gridData.length > 2){var ai; if (this.renderer.constrainSmoothing){ai = F.call(this, this.gridData); this.renderer._smoothedData = ai[0]; this.renderer._smoothedPlotData = ai[1]; if (ae.show){ai = F.call(this, this.renderer._hiBandGridData); this.renderer._hiBandSmoothedData = ai[0]; ai = F.call(this, this.renderer._lowBandGridData); this.renderer._lowBandSmoothedData = ai[0]}ai = null} else{ai = B.call(this, this.gridData); this.renderer._smoothedData = ai[0]; this.renderer._smoothedPlotData = ai[1]; if (ae.show){ai = B.call(this, this.renderer._hiBandGridData); this.renderer._hiBandSmoothedData = ai[0]; ai = B.call(this, this.renderer._lowBandGridData); this.renderer._lowBandSmoothedData = ai[0]}ai = null}}}; H.jqplot.LineRenderer.prototype.makeGridData = function(ai, ak){var ag = this._xaxis.series_u2p; var ab = this._yaxis.series_u2p; var al = []; var ad = []; this.renderer._smoothedData = []; this.renderer._smoothedPlotData = []; this.renderer._hiBandGridData = []; this.renderer._lowBandGridData = []; this.renderer._hiBandSmoothedData = []; this.renderer._lowBandSmoothedData = []; var af = this.renderer.bands; var ac = false; for (var ah = 0; ah < ai.length; ah++){if (ai[ah][0] != null && ai[ah][1] != null){al.push([ag.call(this._xaxis, ai[ah][0]), ab.call(this._yaxis, ai[ah][1])])} else{if (ai[ah][0] == null){ac = true; al.push([null, ab.call(this._yaxis, ai[ah][1])])} else{if (ai[ah][1] == null){ac = true; al.push([ag.call(this._xaxis, ai[ah][0]), null])}}}}if (ac){this.renderer.smooth = false; if (this._type === "line"){af.show = false}}if (this._type === "line" && af.show){for (var ah = 0, ae = af.hiData.length; ah < ae; ah++){this.renderer._hiBandGridData.push([ag.call(this._xaxis, af.hiData[ah][0]), ab.call(this._yaxis, af.hiData[ah][1])])}for (var ah = 0, ae = af.lowData.length; ah < ae; ah++){this.renderer._lowBandGridData.push([ag.call(this._xaxis, af.lowData[ah][0]), ab.call(this._yaxis, af.lowData[ah][1])])}}if (this._type === "line" && this.renderer.smooth && al.length > 2){var aj; if (this.renderer.constrainSmoothing){aj = F.call(this, al); this.renderer._smoothedData = aj[0]; this.renderer._smoothedPlotData = aj[1]; if (af.show){aj = F.call(this, this.renderer._hiBandGridData); this.renderer._hiBandSmoothedData = aj[0]; aj = F.call(this, this.renderer._lowBandGridData); this.renderer._lowBandSmoothedData = aj[0]}aj = null} else{aj = B.call(this, al); this.renderer._smoothedData = aj[0]; this.renderer._smoothedPlotData = aj[1]; if (af.show){aj = B.call(this, this.renderer._hiBandGridData); this.renderer._hiBandSmoothedData = aj[0]; aj = B.call(this, this.renderer._lowBandGridData); this.renderer._lowBandSmoothedData = aj[0]}aj = null}}return al}; H.jqplot.LineRenderer.prototype.draw = function(aq, aC, ac, av){var aw; var ak = H.extend(true, {}, ac); var ae = (ak.shadow != r)?ak.shadow:this.shadow; var aD = (ak.showLine != r)?ak.showLine:this.showLine; var au = (ak.fill != r)?ak.fill:this.fill; var ab = (ak.fillAndStroke != r)?ak.fillAndStroke:this.fillAndStroke; var al, ar, ao, ay; aq.save(); if (aC.length){if (aD){if (au){if (this.fillToZero){var az = this.negativeColor; if (!this.useNegativeColors){az = ak.fillStyle}var ai = false; var aj = ak.fillStyle; if (ab){var aB = aC.slice(0)}if (this.index == 0 || !this._stack){var ap = []; var aF = (this.renderer.smooth)?this.renderer._smoothedPlotData:this._plotData; this._areaPoints = []; var aA = this._yaxis.series_u2p(this.fillToValue); var ad = this._xaxis.series_u2p(this.fillToValue); ak.closePath = true; if (this.fillAxis == "y"){ap.push([aC[0][0], aA]); this._areaPoints.push([aC[0][0], aA]); for (var aw = 0; aw < aC.length - 1; aw++){ap.push(aC[aw]); this._areaPoints.push(aC[aw]); if (aF[aw][1] * aF[aw + 1][1] < 0){if (aF[aw][1] < 0){ai = true; ak.fillStyle = az} else{ai = false; ak.fillStyle = aj}var ah = aC[aw][0] + (aC[aw + 1][0] - aC[aw][0]) * (aA - aC[aw][1]) / (aC[aw + 1][1] - aC[aw][1]); ap.push([ah, aA]); this._areaPoints.push([ah, aA]); if (ae){this.renderer.shadowRenderer.draw(aq, ap, ak)}this.renderer.shapeRenderer.draw(aq, ap, ak); ap = [[ah, aA]]}}if (aF[aC.length - 1][1] < 0){ai = true; ak.fillStyle = az} else{ai = false; ak.fillStyle = aj}ap.push(aC[aC.length - 1]); this._areaPoints.push(aC[aC.length - 1]); ap.push([aC[aC.length - 1][0], aA]); this._areaPoints.push([aC[aC.length - 1][0], aA])}if (ae){this.renderer.shadowRenderer.draw(aq, ap, ak)}this.renderer.shapeRenderer.draw(aq, ap, ak)} else{var an = this._prevGridData; for (var aw = an.length; aw > 0; aw--){aC.push(an[aw - 1])}if (ae){this.renderer.shadowRenderer.draw(aq, aC, ak)}this._areaPoints = aC; this.renderer.shapeRenderer.draw(aq, aC, ak)}} else{if (ab){var aB = aC.slice(0)}if (this.index == 0 || !this._stack){var af = aq.canvas.height; aC.unshift([aC[0][0], af]); var ax = aC.length; aC.push([aC[ax - 1][0], af])} else{var an = this._prevGridData; for (var aw = an.length; aw > 0; aw--){aC.push(an[aw - 1])}}this._areaPoints = aC; if (ae){this.renderer.shadowRenderer.draw(aq, aC, ak)}this.renderer.shapeRenderer.draw(aq, aC, ak)}if (ab){var at = H.extend(true, {}, ak, {fill:false, closePath:false}); this.renderer.shapeRenderer.draw(aq, aB, at); if (this.markerRenderer.show){if (this.renderer.smooth){aB = this.gridData}for (aw = 0; aw < aB.length; aw++){this.markerRenderer.draw(aB[aw][0], aB[aw][1], aq, ak.markerOptions)}}}} else{if (this.renderer.bands.show){var ag; var aE = H.extend(true, {}, ak); if (this.renderer.bands.showLines){ag = (this.renderer.smooth)?this.renderer._hiBandSmoothedData:this.renderer._hiBandGridData; this.renderer.shapeRenderer.draw(aq, ag, ak); ag = (this.renderer.smooth)?this.renderer._lowBandSmoothedData:this.renderer._lowBandGridData; this.renderer.shapeRenderer.draw(aq, ag, aE)}if (this.renderer.bands.fill){if (this.renderer.smooth){ag = this.renderer._hiBandSmoothedData.concat(this.renderer._lowBandSmoothedData.reverse())} else{ag = this.renderer._hiBandGridData.concat(this.renderer._lowBandGridData.reverse())}this._areaPoints = ag; aE.closePath = true; aE.fill = true; aE.fillStyle = this.renderer.bands.fillColor; this.renderer.shapeRenderer.draw(aq, ag, aE)}}if (ae){this.renderer.shadowRenderer.draw(aq, aC, ak)}this.renderer.shapeRenderer.draw(aq, aC, ak)}}var al = ao = ar = ay = null; for (aw = 0; aw < this._areaPoints.length; aw++){var am = this._areaPoints[aw]; if (al > am[0] || al == null){al = am[0]}if (ay < am[1] || ay == null){ay = am[1]}if (ao < am[0] || ao == null){ao = am[0]}if (ar > am[1] || ar == null){ar = am[1]}}if (this.type === "line" && this.renderer.bands.show){ay = this._yaxis.series_u2p(this.renderer.bands._min); ar = this._yaxis.series_u2p(this.renderer.bands._max)}this._boundingBox = [[al, ay], [ao, ar]]; if (this.markerRenderer.show && !au){if (this.renderer.smooth){aC = this.gridData}for (aw = 0; aw < aC.length; aw++){if (aC[aw][0] != null && aC[aw][1] != null){this.markerRenderer.draw(aC[aw][0], aC[aw][1], aq, ak.markerOptions)}}}}aq.restore()}; H.jqplot.LineRenderer.prototype.drawShadow = function(ab, ad, ac){}; function v(ae, ad, ab){for (var ac = 0; ac < this.series.length; ac++){if (this.series[ac].renderer.constructor == H.jqplot.LineRenderer){if (this.series[ac].highlightMouseOver){this.series[ac].highlightMouseDown = false}}}}function Z(){if (this.plugins.lineRenderer && this.plugins.lineRenderer.highlightCanvas){this.plugins.lineRenderer.highlightCanvas.resetCanvas(); this.plugins.lineRenderer.highlightCanvas = null}this.plugins.lineRenderer.highlightedSeriesIndex = null; this.plugins.lineRenderer.highlightCanvas = new H.jqplot.GenericCanvas(); this.eventCanvas._elem.before(this.plugins.lineRenderer.highlightCanvas.createElement(this._gridPadding, "jqplot-lineRenderer-highlight-canvas", this._plotDimensions, this)); this.plugins.lineRenderer.highlightCanvas.setContext(); this.eventCanvas._elem.bind("mouseleave", {plot:this}, function(ab){V(ab.data.plot)})}function X(ah, ag, ae, ad){var ac = ah.series[ag]; var ab = ah.plugins.lineRenderer.highlightCanvas; ab._ctx.clearRect(0, 0, ab._ctx.canvas.width, ab._ctx.canvas.height); ac._highlightedPoint = ae; ah.plugins.lineRenderer.highlightedSeriesIndex = ag; var af = {fillStyle:ac.highlightColor}; if (ac.type === "line" && ac.renderer.bands.show){af.fill = true; af.closePath = true}ac.renderer.shapeRenderer.draw(ab._ctx, ad, af); ab = null}function V(ad){var ab = ad.plugins.lineRenderer.highlightCanvas; ab._ctx.clearRect(0, 0, ab._ctx.canvas.width, ab._ctx.canvas.height); for (var ac = 0; ac < ad.series.length; ac++){ad.series[ac]._highlightedPoint = null}ad.plugins.lineRenderer.highlightedSeriesIndex = null; ad.target.trigger("jqplotDataUnhighlight"); ab = null}function g(af, ae, ai, ah, ag){if (ah){var ad = [ah.seriesIndex, ah.pointIndex, ah.data]; var ac = jQuery.Event("jqplotDataMouseOver"); ac.pageX = af.pageX; ac.pageY = af.pageY; ag.target.trigger(ac, ad); if (ag.series[ad[0]].highlightMouseOver && !(ad[0] == ag.plugins.lineRenderer.highlightedSeriesIndex)){var ab = jQuery.Event("jqplotDataHighlight"); ab.which = af.which; ab.pageX = af.pageX; ab.pageY = af.pageY; ag.target.trigger(ab, ad); X(ag, ah.seriesIndex, ah.pointIndex, ah.points)}} else{if (ah == null){V(ag)}}}function d(ae, ad, ah, ag, af){if (ag){var ac = [ag.seriesIndex, ag.pointIndex, ag.data]; if (af.series[ac[0]].highlightMouseDown && !(ac[0] == af.plugins.lineRenderer.highlightedSeriesIndex)){var ab = jQuery.Event("jqplotDataHighlight"); ab.which = ae.which; ab.pageX = ae.pageX; ab.pageY = ae.pageY; af.target.trigger(ab, ac); X(af, ag.seriesIndex, ag.pointIndex, ag.points)}} else{if (ag == null){V(af)}}}function Y(ad, ac, ag, af, ae){var ab = ae.plugins.lineRenderer.highlightedSeriesIndex; if (ab != null && ae.series[ab].highlightMouseDown){V(ae)}}function f(ae, ad, ah, ag, af){if (ag){var ac = [ag.seriesIndex, ag.pointIndex, ag.data]; var ab = jQuery.Event("jqplotDataClick"); ab.which = ae.which; ab.pageX = ae.pageX; ab.pageY = ae.pageY; af.target.trigger(ab, ac)}}function p(af, ae, ai, ah, ag){if (ah){var ad = [ah.seriesIndex, ah.pointIndex, ah.data]; var ab = ag.plugins.lineRenderer.highlightedSeriesIndex; if (ab != null && ag.series[ab].highlightMouseDown){V(ag)}var ac = jQuery.Event("jqplotDataRightClick"); ac.which = af.which; ac.pageX = af.pageX; ac.pageY = af.pageY; ag.target.trigger(ac, ad)}}H.jqplot.LinearAxisRenderer = function(){}; H.jqplot.LinearAxisRenderer.prototype.init = function(ab){this.breakPoints = null; this.breakTickLabel = "≈"; this.drawBaseline = true; this.baselineWidth = null; this.baselineColor = null; this.forceTickAt0 = false; this.forceTickAt100 = false; this.tickInset = 0; this.minorTicks = 0; this.alignTicks = false; this._autoFormatString = ""; this._overrideFormatString = false; this._scalefact = 1; H.extend(true, this, ab); if (this.breakPoints){if (!H.isArray(this.breakPoints)){this.breakPoints = null} else{if (this.breakPoints.length < 2 || this.breakPoints[1] <= this.breakPoints[0]){this.breakPoints = null}}}if (this.numberTicks != null && this.numberTicks < 2){this.numberTicks = 2}this.resetDataBounds()}; H.jqplot.LinearAxisRenderer.prototype.draw = function(ab, ai){if (this.show){this.renderer.createTicks.call(this, ai); var ah = 0; var ac; if (this._elem){this._elem.emptyForce(); this._elem = null}this._elem = H(document.createElement("div")); this._elem.addClass("jqplot-axis jqplot-" + this.name); this._elem.css("position", "absolute"); if (this.name == "xaxis" || this.name == "x2axis"){this._elem.width(this._plotDimensions.width)} else{this._elem.height(this._plotDimensions.height)}this.labelOptions.axis = this.name; this._label = new this.labelRenderer(this.labelOptions); if (this._label.show){var ag = this._label.draw(ab, ai); ag.appendTo(this._elem); ag = null}var af = this._ticks; var ae; for (var ad = 0; ad < af.length; ad++){ae = af[ad]; if (ae.show && ae.showLabel && (!ae.isMinorTick || this.showMinorTicks)){this._elem.append(ae.draw(ab, ai))}}ae = null; af = null}return this._elem}; H.jqplot.LinearAxisRenderer.prototype.reset = function(){this.min = this._options.min; this.max = this._options.max; this.tickInterval = this._options.tickInterval; this.numberTicks = this._options.numberTicks; this._autoFormatString = ""; if (this._overrideFormatString && this.tickOptions && this.tickOptions.formatString){this.tickOptions.formatString = ""}}; H.jqplot.LinearAxisRenderer.prototype.set = function(){var ai = 0; var ad; var ac = 0; var ah = 0; var ab = (this._label == null)?false:this._label.show; if (this.show){var ag = this._ticks; var af; for (var ae = 0; ae < ag.length; ae++){af = ag[ae]; if (!af._breakTick && af.show && af.showLabel && (!af.isMinorTick || this.showMinorTicks)){if (this.name == "xaxis" || this.name == "x2axis"){ad = af._elem.outerHeight(true)} else{ad = af._elem.outerWidth(true)}if (ad > ai){ai = ad}}}af = null; ag = null; if (ab){ac = this._label._elem.outerWidth(true); ah = this._label._elem.outerHeight(true)}if (this.name == "xaxis"){ai = ai + ah; this._elem.css({height:ai + "px", left:"0px", bottom:"0px"})} else{if (this.name == "x2axis"){ai = ai + ah; this._elem.css({height:ai + "px", left:"0px", top:"0px"})} else{if (this.name == "yaxis"){ai = ai + ac; this._elem.css({width:ai + "px", left:"0px", top:"0px"}); if (ab && this._label.constructor == H.jqplot.AxisLabelRenderer){this._label._elem.css("width", ac + "px")}} else{ai = ai + ac; this._elem.css({width:ai + "px", right:"0px", top:"0px"}); if (ab && this._label.constructor == H.jqplot.AxisLabelRenderer){this._label._elem.css("width", ac + "px")}}}}}}; H.jqplot.LinearAxisRenderer.prototype.createTicks = function(ad){var aN = this._ticks; var aE = this.ticks; var at = this.name; var av = this._dataBounds; var ab = (this.name.charAt(0) === "x")?this._plotDimensions.width:this._plotDimensions.height; var ah; var a0, aC; var aj, ai; var aY, aU; var aB = this.min; var aZ = this.max; var aQ = this.numberTicks; var a4 = this.tickInterval; var ag = 30; this._scalefact = (Math.max(ab, ag + 1) - ag) / 300; if (aE.length){for (aU = 0; aU < aE.length; aU++){var aI = aE[aU]; var aO = new this.tickRenderer(this.tickOptions); if (H.isArray(aI)){aO.value = aI[0]; if (this.breakPoints){if (aI[0] == this.breakPoints[0]){aO.label = this.breakTickLabel; aO._breakTick = true; aO.showGridline = false; aO.showMark = false} else{if (aI[0] > this.breakPoints[0] && aI[0] <= this.breakPoints[1]){aO.show = false; aO.showGridline = false; aO.label = aI[1]} else{aO.label = aI[1]}}} else{aO.label = aI[1]}aO.setTick(aI[0], this.name); this._ticks.push(aO)} else{if (H.isPlainObject(aI)){H.extend(true, aO, aI); aO.axis = this.name; this._ticks.push(aO)} else{aO.value = aI; if (this.breakPoints){if (aI == this.breakPoints[0]){aO.label = this.breakTickLabel; aO._breakTick = true; aO.showGridline = false; aO.showMark = false} else{if (aI > this.breakPoints[0] && aI <= this.breakPoints[1]){aO.show = false; aO.showGridline = false}}}aO.setTick(aI, this.name); this._ticks.push(aO)}}}this.numberTicks = aE.length; this.min = this._ticks[0].value; this.max = this._ticks[this.numberTicks - 1].value; this.tickInterval = (this.max - this.min) / (this.numberTicks - 1)} else{if (at == "xaxis" || at == "x2axis"){ab = this._plotDimensions.width} else{ab = this._plotDimensions.height}var aq = this.numberTicks; if (this.alignTicks){if (this.name === "x2axis" && ad.axes.xaxis.show){aq = ad.axes.xaxis.numberTicks} else{if (this.name.charAt(0) === "y" && this.name !== "yaxis" && this.name !== "yMidAxis" && ad.axes.yaxis.show){aq = ad.axes.yaxis.numberTicks}}}a0 = ((this.min != null)?this.min:av.min); aC = ((this.max != null)?this.max:av.max); var ao = aC - a0; var aM, ar; var am; if (this.tickOptions == null || !this.tickOptions.formatString){this._overrideFormatString = true}if (this.min == null || this.max == null && this.tickInterval == null && !this.autoscale){if (this.forceTickAt0){if (a0 > 0){a0 = 0}if (aC < 0){aC = 0}}if (this.forceTickAt100){if (a0 > 100){a0 = 100}if (aC < 100){aC = 100}}var ay = false, aV = false; if (this.min != null){ay = true} else{if (this.max != null){aV = true}}var aJ = H.jqplot.LinearTickGenerator(a0, aC, this._scalefact, aq, ay, aV); var ap = (this.min != null)?a0:a0 + ao * (this.padMin - 1); var aK = (this.max != null)?aC:aC - ao * (this.padMax - 1); if (a0 < ap || aC > aK){ap = (this.min != null)?a0:a0 - ao * (this.padMin - 1); aK = (this.max != null)?aC:aC + ao * (this.padMax - 1); aJ = H.jqplot.LinearTickGenerator(ap, aK, this._scalefact, aq, ay, aV)}this.min = aJ[0]; this.max = aJ[1]; this.numberTicks = aJ[2]; this._autoFormatString = aJ[3]; this.tickInterval = aJ[4]} else{if (a0 == aC){var ac = 0.05; if (a0 > 0){ac = Math.max(Math.log(a0) / Math.LN10, 0.05)}a0 -= ac; aC += ac}if (this.autoscale && this.min == null && this.max == null){var ae, af, al; var aw = false; var aH = false; var au = {min:null, max:null, average:null, stddev:null}; for (var aU = 0; aU < this._series.length; aU++){var aP = this._series[aU]; var ax = (aP.fillAxis == "x")?aP._xaxis.name:aP._yaxis.name; if (this.name == ax){var aL = aP._plotValues[aP.fillAxis]; var aA = aL[0]; var aW = aL[0]; for (var aT = 1; aT < aL.length; aT++){if (aL[aT] < aA){aA = aL[aT]} else{if (aL[aT] > aW){aW = aL[aT]}}}var an = (aW - aA) / aW; if (aP.renderer.constructor == H.jqplot.BarRenderer){if (aA >= 0 && (aP.fillToZero || an > 0.1)){aw = true} else{aw = false; if (aP.fill && aP.fillToZero && aA < 0 && aW > 0){aH = true} else{aH = false}}} else{if (aP.fill){if (aA >= 0 && (aP.fillToZero || an > 0.1)){aw = true} else{if (aA < 0 && aW > 0 && aP.fillToZero){aw = false; aH = true} else{aw = false; aH = false}}} else{if (aA < 0){aw = false}}}}}if (aw){this.numberTicks = 2 + Math.ceil((ab - (this.tickSpacing - 1)) / this.tickSpacing); this.min = 0; aB = 0; af = aC / (this.numberTicks - 1); am = Math.pow(10, Math.abs(Math.floor(Math.log(af) / Math.LN10))); if (af / am == parseInt(af / am, 10)){af += am}this.tickInterval = Math.ceil(af / am) * am; this.max = this.tickInterval * (this.numberTicks - 1)} else{if (aH){this.numberTicks = 2 + Math.ceil((ab - (this.tickSpacing - 1)) / this.tickSpacing); var aD = Math.ceil(Math.abs(a0) / ao * (this.numberTicks - 1)); var a3 = this.numberTicks - 1 - aD; af = Math.max(Math.abs(a0 / aD), Math.abs(aC / a3)); am = Math.pow(10, Math.abs(Math.floor(Math.log(af) / Math.LN10))); this.tickInterval = Math.ceil(af / am) * am; this.max = this.tickInterval * a3; this.min = - this.tickInterval * aD} else{if (this.numberTicks == null){if (this.tickInterval){this.numberTicks = 3 + Math.ceil(ao / this.tickInterval)} else{this.numberTicks = 2 + Math.ceil((ab - (this.tickSpacing - 1)) / this.tickSpacing)}}if (this.tickInterval == null){af = ao / (this.numberTicks - 1); if (af < 1){am = Math.pow(10, Math.abs(Math.floor(Math.log(af) / Math.LN10)))} else{am = 1}this.tickInterval = Math.ceil(af * am * this.pad) / am} else{am = 1 / this.tickInterval}ae = this.tickInterval * (this.numberTicks - 1); al = (ae - ao) / 2; if (this.min == null){this.min = Math.floor(am * (a0 - al)) / am}if (this.max == null){this.max = this.min + ae}}}var az = H.jqplot.getSignificantFigures(this.tickInterval); var aG; if (az.digitsLeft >= az.significantDigits){aG = "%d"} else{var am = Math.max(0, 5 - az.digitsLeft); am = Math.min(am, az.digitsRight); aG = "%." + am + "f"}this._autoFormatString = aG} else{aM = (this.min != null)?this.min:a0 - ao * (this.padMin - 1); ar = (this.max != null)?this.max:aC + ao * (this.padMax - 1); ao = ar - aM; if (this.numberTicks == null){if (this.tickInterval != null){this.numberTicks = Math.ceil((ar - aM) / this.tickInterval) + 1} else{if (ab > 100){this.numberTicks = parseInt(3 + (ab - 100) / 75, 10)} else{this.numberTicks = 2}}}if (this.tickInterval == null){this.tickInterval = ao / (this.numberTicks - 1)}if (this.max == null){ar = aM + this.tickInterval * (this.numberTicks - 1)}if (this.min == null){aM = ar - this.tickInterval * (this.numberTicks - 1)}var az = H.jqplot.getSignificantFigures(this.tickInterval); var aG; if (az.digitsLeft >= az.significantDigits){aG = "%d"} else{var am = Math.max(0, 5 - az.digitsLeft); am = Math.min(am, az.digitsRight); aG = "%." + am + "f"}this._autoFormatString = aG; this.min = aM; this.max = ar}if (this.renderer.constructor == H.jqplot.LinearAxisRenderer && this._autoFormatString == ""){ao = this.max - this.min; var a1 = new this.tickRenderer(this.tickOptions); var aF = a1.formatString || H.jqplot.config.defaultTickFormatString; var aF = aF.match(H.jqplot.sprintf.regex)[0]; var aX = 0; if (aF){if (aF.search(/[fFeEgGpP]/) > - 1){var aS = aF.match(/\%\.(\d{0,})?[eEfFgGpP]/); if (aS){aX = parseInt(aS[1], 10)} else{aX = 6}} else{if (aF.search(/[di]/) > - 1){aX = 0}}var ak = Math.pow(10, - aX); if (this.tickInterval < ak){if (aQ == null && a4 == null){this.tickInterval = ak; if (aZ == null && aB == null){this.min = Math.floor(this._dataBounds.min / ak) * ak; if (this.min == this._dataBounds.min){this.min = this._dataBounds.min - this.tickInterval}this.max = Math.ceil(this._dataBounds.max / ak) * ak; if (this.max == this._dataBounds.max){this.max = this._dataBounds.max + this.tickInterval}var aR = (this.max - this.min) / this.tickInterval; aR = aR.toFixed(11); aR = Math.ceil(aR); this.numberTicks = aR + 1} else{if (aZ == null){var aR = (this._dataBounds.max - this.min) / this.tickInterval; aR = aR.toFixed(11); this.numberTicks = Math.ceil(aR) + 2; this.max = this.min + this.tickInterval * (this.numberTicks - 1)} else{if (aB == null){var aR = (this.max - this._dataBounds.min) / this.tickInterval; aR = aR.toFixed(11); this.numberTicks = Math.ceil(aR) + 2; this.min = this.max - this.tickInterval * (this.numberTicks - 1)} else{this.numberTicks = Math.ceil((aZ - aB) / this.tickInterval) + 1; this.min = Math.floor(aB * Math.pow(10, aX)) / Math.pow(10, aX); this.max = Math.ceil(aZ * Math.pow(10, aX)) / Math.pow(10, aX); this.numberTicks = Math.ceil((this.max - this.min) / this.tickInterval) + 1}}}}}}}}if (this._overrideFormatString && this._autoFormatString != ""){this.tickOptions = this.tickOptions || {}; this.tickOptions.formatString = this._autoFormatString}var aO, a2; for (var aU = 0; aU < this.numberTicks; aU++){aY = this.min + aU * this.tickInterval; aO = new this.tickRenderer(this.tickOptions); aO.setTick(aY, this.name); this._ticks.push(aO); if (aU < this.numberTicks - 1){for (var aT = 0; aT < this.minorTicks; aT++){aY += this.tickInterval / (this.minorTicks + 1); a2 = H.extend(true, {}, this.tickOptions, {name:this.name, value:aY, label:"", isMinorTick:true}); aO = new this.tickRenderer(a2); this._ticks.push(aO)}}aO = null}}if (this.tickInset){this.min = this.min - this.tickInset * this.tickInterval; this.max = this.max + this.tickInset * this.tickInterval}aN = null}; H.jqplot.LinearAxisRenderer.prototype.resetTickValues = function(ad){if (H.isArray(ad) && ad.length == this._ticks.length){var ac; for (var ab = 0; ab < ad.length; ab++){ac = this._ticks[ab]; ac.value = ad[ab]; ac.label = ac.formatter(ac.formatString, ad[ab]); ac.label = ac.prefix + ac.label; ac._elem.html(ac.label)}ac = null; this.min = H.jqplot.arrayMin(ad); this.max = H.jqplot.arrayMax(ad); this.pack()}}; H.jqplot.LinearAxisRenderer.prototype.pack = function(ad, ac){ad = ad || {}; ac = ac || this._offsets; var ar = this._ticks; var an = this.max; var am = this.min; var ai = ac.max; var ag = ac.min; var ak = (this._label == null)?false:this._label.show; for (var al in ad){this._elem.css(al, ad[al])}this._offsets = ac; var ae = ai - ag; var af = an - am; if (this.breakPoints){af = af - this.breakPoints[1] + this.breakPoints[0]; this.p2u = function(au){return(au - ag) * af / ae + am}; this.u2p = function(au){if (au > this.breakPoints[0] && au < this.breakPoints[1]){au = this.breakPoints[0]}if (au <= this.breakPoints[0]){return(au - am) * ae / af + ag} else{return(au - this.breakPoints[1] + this.breakPoints[0] - am) * ae / af + ag}}; if (this.name.charAt(0) == "x"){this.series_u2p = function(au){if (au > this.breakPoints[0] && au < this.breakPoints[1]){au = this.breakPoints[0]}if (au <= this.breakPoints[0]){return(au - am) * ae / af} else{return(au - this.breakPoints[1] + this.breakPoints[0] - am) * ae / af}}; this.series_p2u = function(au){return au * af / ae + am}} else{this.series_u2p = function(au){if (au > this.breakPoints[0] && au < this.breakPoints[1]){au = this.breakPoints[0]}if (au >= this.breakPoints[1]){return(au - an) * ae / af} else{return(au + this.breakPoints[1] - this.breakPoints[0] - an) * ae / af}}; this.series_p2u = function(au){return au * af / ae + an}}} else{this.p2u = function(au){return(au - ag) * af / ae + am}; this.u2p = function(au){return(au - am) * ae / af + ag}; if (this.name == "xaxis" || this.name == "x2axis"){this.series_u2p = function(au){return(au - am) * ae / af}; this.series_p2u = function(au){return au * af / ae + am}} else{this.series_u2p = function(au){return(au - an) * ae / af}; this.series_p2u = function(au){return au * af / ae + an}}}if (this.show){if (this.name == "xaxis" || this.name == "x2axis"){for (var ao = 0; ao < ar.length; ao++){var aj = ar[ao]; if (aj.show && aj.showLabel){var ab; if (aj.constructor == H.jqplot.CanvasAxisTickRenderer && aj.angle){var aq = (this.name == "xaxis")?1: - 1; switch (aj.labelPosition){case"auto":if (aq * aj.angle < 0){ab = - aj.getWidth() + aj._textRenderer.height * Math.sin( - aj._textRenderer.angle) / 2} else{ab = - aj._textRenderer.height * Math.sin(aj._textRenderer.angle) / 2}break; case"end":ab = - aj.getWidth() + aj._textRenderer.height * Math.sin( - aj._textRenderer.angle) / 2; break; case"start":ab = - aj._textRenderer.height * Math.sin(aj._textRenderer.angle) / 2; break; case"middle":ab = - aj.getWidth() / 2 + aj._textRenderer.height * Math.sin( - aj._textRenderer.angle) / 2; break; default:ab = - aj.getWidth() / 2 + aj._textRenderer.height * Math.sin( - aj._textRenderer.angle) / 2; break}} else{ab = - aj.getWidth() / 2}var at = this.u2p(aj.value) + ab + "px"; aj._elem.css("left", at); aj.pack()}}if (ak){var ah = this._label._elem.outerWidth(true); this._label._elem.css("left", ag + ae / 2 - ah / 2 + "px"); if (this.name == "xaxis"){this._label._elem.css("bottom", "0px")} else{this._label._elem.css("top", "0px")}this._label.pack()}} else{for (var ao = 0; ao < ar.length; ao++){var aj = ar[ao]; if (aj.show && aj.showLabel){var ab; if (aj.constructor == H.jqplot.CanvasAxisTickRenderer && aj.angle){var aq = (this.name == "yaxis")?1: - 1; switch (aj.labelPosition){case"auto":case"end":if (aq * aj.angle < 0){ab = - aj._textRenderer.height * Math.cos( - aj._textRenderer.angle) / 2} else{ab = - aj.getHeight() + aj._textRenderer.height * Math.cos(aj._textRenderer.angle) / 2}break; case"start":if (aj.angle > 0){ab = - aj._textRenderer.height * Math.cos( - aj._textRenderer.angle) / 2} else{ab = - aj.getHeight() + aj._textRenderer.height * Math.cos(aj._textRenderer.angle) / 2}break; case"middle":ab = - aj.getHeight() / 2; break; default:ab = - aj.getHeight() / 2; break}} else{ab = - aj.getHeight() / 2}var at = this.u2p(aj.value) + ab + "px"; aj._elem.css("top", at); aj.pack()}}if (ak){var ap = this._label._elem.outerHeight(true); this._label._elem.css("top", ai - ae / 2 - ap / 2 + "px"); if (this.name == "yaxis"){this._label._elem.css("left", "0px")} else{this._label._elem.css("right", "0px")}this._label.pack()}}}ar = null}; function h(ac){var ab; ac = Math.abs(ac); if (ac >= 10){ab = "%d"} else{if (ac > 1){if (ac === parseInt(ac, 10)){ab = "%d"} else{ab = "%.1f"}} else{var ad = - Math.floor(Math.log(ac) / Math.LN10); ab = "%." + ad + "f"}}return ab}var a = [0.1, 0.2, 0.3, 0.4, 0.5, 0.8, 1, 2, 3, 4, 5]; var b = function(ac){var ab = a.indexOf(ac); if (ab > 0){return a[ab - 1]} else{return a[a.length - 1] / 100}}; var i = function(ac){var ab = a.indexOf(ac); if (ab < a.length - 1){return a[ab + 1]} else{return a[0] * 100}}; function c(af, an, am){var ak = Math.floor(am / 2); var ac = Math.ceil(am * 1.5); var ae = Number.MAX_VALUE; var ab = (an - af); var aq; var aj; var al; var ar = H.jqplot.getSignificantFigures; var ap; var ah; var ai; var ao; for (var ag = 0, ad = ac - ak + 1; ag < ad; ag++){ai = ak + ag; aq = ab / (ai - 1); aj = ar(aq); aq = Math.abs(am - ai) + aj.digitsRight; if (aq < ae){ae = aq; al = ai; ao = aj.digitsRight} else{if (aq === ae){if (aj.digitsRight < ao){al = ai; ao = aj.digitsRight}}}}ap = Math.max(ao, Math.max(ar(af).digitsRight, ar(an).digitsRight)); if (ap === 0){ah = "%d"} else{ah = "%." + ap + "f"}aq = ab / (al - 1); return[af, an, al, ah, aq]}function S(ac, af){af = af || 7; var ae = ac / (af - 1); var ad = Math.pow(10, Math.floor(Math.log(ae) / Math.LN10)); var ag = ae / ad; var ab; if (ad < 1){if (ag > 5){ab = 10 * ad} else{if (ag > 2){ab = 5 * ad} else{if (ag > 1){ab = 2 * ad} else{ab = ad}}}} else{if (ag > 5){ab = 10 * ad} else{if (ag > 4){ab = 5 * ad} else{if (ag > 3){ab = 4 * ad} else{if (ag > 2){ab = 3 * ad} else{if (ag > 1){ab = 2 * ad} else{ab = ad}}}}}}return ab}function M(ac, ab){ab = ab || 1; var ae = Math.floor(Math.log(ac) / Math.LN10); var ag = Math.pow(10, ae); var af = ac / ag; var ad; af = af / ab; if (af <= 0.38){ad = 0.1} else{if (af <= 1.6){ad = 0.2} else{if (af <= 4){ad = 0.5} else{if (af <= 8){ad = 1} else{if (af <= 16){ad = 2} else{ad = 5}}}}}return ad * ag}function t(ad, ac){var af = Math.floor(Math.log(ad) / Math.LN10); var ah = Math.pow(10, af); var ag = ad / ah; var ab; var ae; ag = ag / ac; if (ag <= 0.38){ae = 0.1} else{if (ag <= 1.6){ae = 0.2} else{if (ag <= 4){ae = 0.5} else{if (ag <= 8){ae = 1} else{if (ag <= 16){ae = 2} else{ae = 5}}}}}ab = ae * ah; return[ab, ae, ah]}H.jqplot.LinearTickGenerator = function(ah, ak, ad, ae, ai, al){ai = (ai === null)?false:ai; al = (al === null || ai)?false:al; if (ah === ak){ak = (ak)?0:1}ad = ad || 1; if (ak < ah){var am = ak; ak = ah; ah = am}var ac = []; var ap = M(ak - ah, ad); var ao = H.jqplot.getSignificantFigures; if (ae == null){if (!ai && !al){ac[0] = Math.floor(ah / ap) * ap; ac[1] = Math.ceil(ak / ap) * ap; ac[2] = Math.round((ac[1] - ac[0]) / ap + 1); ac[3] = h(ap); ac[4] = ap} else{if (ai){ac[0] = ah; ac[2] = Math.ceil((ak - ah) / ap + 1); ac[1] = ah + (ac[2] - 1) * ap; var an = ao(ah).digitsRight; var aj = ao(ap).digitsRight; if (an < aj){ac[3] = h(ap)} else{ac[3] = "%." + an + "f"}ac[4] = ap} else{if (al){ac[1] = ak; ac[2] = Math.ceil((ak - ah) / ap + 1); ac[0] = ak - (ac[2] - 1) * ap; var af = ao(ak).digitsRight; var aj = ao(ap).digitsRight; if (af < aj){ac[3] = h(ap)} else{ac[3] = "%." + af + "f"}ac[4] = ap}}}} else{var ag = []; ag[0] = Math.floor(ah / ap) * ap; ag[1] = Math.ceil(ak / ap) * ap; ag[2] = Math.round((ag[1] - ag[0]) / ap + 1); ag[3] = h(ap); ag[4] = ap; if (ag[2] === ae){ac = ag} else{var ab = S(ag[1] - ag[0], ae); ac[0] = ag[0]; ac[2] = ae; ac[4] = ab; ac[3] = h(ab); ac[1] = ac[0] + (ac[2] - 1) * ac[4]}}return ac}; H.jqplot.LinearTickGenerator.bestLinearInterval = M; H.jqplot.LinearTickGenerator.bestInterval = S; H.jqplot.LinearTickGenerator.bestLinearComponents = t; H.jqplot.LinearTickGenerator.bestConstrainedInterval = c; H.jqplot.MarkerRenderer = function(ab){this.show = true; this.style = "filledCircle"; this.lineWidth = 2; this.size = 9; this.color = "#666666"; this.shadow = true; this.shadowAngle = 45; this.shadowOffset = 1; this.shadowDepth = 3; this.shadowAlpha = "0.07"; this.shadowRenderer = new H.jqplot.ShadowRenderer(); this.shapeRenderer = new H.jqplot.ShapeRenderer(); H.extend(true, this, ab)}; H.jqplot.MarkerRenderer.prototype.init = function(ab){H.extend(true, this, ab); var ad = {angle:this.shadowAngle, offset:this.shadowOffset, alpha:this.shadowAlpha, lineWidth:this.lineWidth, depth:this.shadowDepth, closePath:true}; if (this.style.indexOf("filled") != - 1){ad.fill = true}if (this.style.indexOf("ircle") != - 1){ad.isarc = true; ad.closePath = false}this.shadowRenderer.init(ad); var ac = {fill:false, isarc:false, strokeStyle:this.color, fillStyle:this.color, lineWidth:this.lineWidth, closePath:true}; if (this.style.indexOf("filled") != - 1){ac.fill = true}if (this.style.indexOf("ircle") != - 1){ac.isarc = true; ac.closePath = false}this.shapeRenderer.init(ac)}; H.jqplot.MarkerRenderer.prototype.drawDiamond = function(ad, ac, ag, af, ai){var ab = 1.2; var aj = this.size / 2 / ab; var ah = this.size / 2 * ab; var ae = [[ad - aj, ac], [ad, ac + ah], [ad + aj, ac], [ad, ac - ah]]; if (this.shadow){this.shadowRenderer.draw(ag, ae)}this.shapeRenderer.draw(ag, ae, ai)}; H.jqplot.MarkerRenderer.prototype.drawPlus = function(ae, ad, ah, ag, ak){var ac = 1; var al = this.size / 2 * ac; var ai = this.size / 2 * ac; var aj = [[ae, ad - ai], [ae, ad + ai]]; var af = [[ae + al, ad], [ae - al, ad]]; var ab = H.extend(true, {}, this.options, {closePath:false}); if (this.shadow){this.shadowRenderer.draw(ah, aj, {closePath:false}); this.shadowRenderer.draw(ah, af, {closePath:false})}this.shapeRenderer.draw(ah, aj, ab); this.shapeRenderer.draw(ah, af, ab)}; H.jqplot.MarkerRenderer.prototype.drawX = function(ae, ad, ah, ag, ak){var ac = 1; var al = this.size / 2 * ac; var ai = this.size / 2 * ac; var ab = H.extend(true, {}, this.options, {closePath:false}); var aj = [[ae - al, ad - ai], [ae + al, ad + ai]]; var af = [[ae - al, ad + ai], [ae + al, ad - ai]]; if (this.shadow){this.shadowRenderer.draw(ah, aj, {closePath:false}); this.shadowRenderer.draw(ah, af, {closePath:false})}this.shapeRenderer.draw(ah, aj, ab); this.shapeRenderer.draw(ah, af, ab)}; H.jqplot.MarkerRenderer.prototype.drawDash = function(ad, ac, ag, af, ai){var ab = 1; var aj = this.size / 2 * ab; var ah = this.size / 2 * ab; var ae = [[ad - aj, ac], [ad + aj, ac]]; if (this.shadow){this.shadowRenderer.draw(ag, ae)}this.shapeRenderer.draw(ag, ae, ai)}; H.jqplot.MarkerRenderer.prototype.drawLine = function(ag, af, ab, ae, ac){var ad = [ag, af]; if (this.shadow){this.shadowRenderer.draw(ab, ad)}this.shapeRenderer.draw(ab, ad, ac)}; H.jqplot.MarkerRenderer.prototype.drawSquare = function(ad, ac, ag, af, ai){var ab = 1; var aj = this.size / 2 / ab; var ah = this.size / 2 * ab; var ae = [[ad - aj, ac - ah], [ad - aj, ac + ah], [ad + aj, ac + ah], [ad + aj, ac - ah]]; if (this.shadow){this.shadowRenderer.draw(ag, ae)}this.shapeRenderer.draw(ag, ae, ai)}; H.jqplot.MarkerRenderer.prototype.drawCircle = function(ac, ai, ae, ah, af){var ab = this.size / 2; var ad = 2 * Math.PI; var ag = [ac, ai, ab, 0, ad, true]; if (this.shadow){this.shadowRenderer.draw(ae, ag)}this.shapeRenderer.draw(ae, ag, af)}; H.jqplot.MarkerRenderer.prototype.draw = function(ab, ae, ac, ad){ad = ad || {}; if (ad.show == null || ad.show != false){if (ad.color && !ad.fillStyle){ad.fillStyle = ad.color}if (ad.color && !ad.strokeStyle){ad.strokeStyle = ad.color}switch (this.style){case"diamond":this.drawDiamond(ab, ae, ac, false, ad); break; case"filledDiamond":this.drawDiamond(ab, ae, ac, true, ad); break; case"circle":this.drawCircle(ab, ae, ac, false, ad); break; case"filledCircle":this.drawCircle(ab, ae, ac, true, ad); break; case"square":this.drawSquare(ab, ae, ac, false, ad); break; case"filledSquare":this.drawSquare(ab, ae, ac, true, ad); break; case"x":this.drawX(ab, ae, ac, true, ad); break; case"plus":this.drawPlus(ab, ae, ac, true, ad); break; case"dash":this.drawDash(ab, ae, ac, true, ad); break; case"line":this.drawLine(ab, ae, ac, false, ad); break; default:this.drawDiamond(ab, ae, ac, false, ad); break}}}; H.jqplot.ShadowRenderer = function(ab){this.angle = 45; this.offset = 1; this.alpha = 0.07; this.lineWidth = 1.5; this.lineJoin = "miter"; this.lineCap = "round"; this.closePath = false; this.fill = false; this.depth = 3; this.strokeStyle = "rgba(0,0,0,0.1)"; this.isarc = false; H.extend(true, this, ab)}; H.jqplot.ShadowRenderer.prototype.init = function(ab){H.extend(true, this, ab)}; H.jqplot.ShadowRenderer.prototype.draw = function(ao, am, aq){ao.save(); var ab = (aq != null)?aq:{}; var an = (ab.fill != null)?ab.fill:this.fill; var aj = (ab.fillRect != null)?ab.fillRect:this.fillRect; var ai = (ab.closePath != null)?ab.closePath:this.closePath; var af = (ab.offset != null)?ab.offset:this.offset; var ad = (ab.alpha != null)?ab.alpha:this.alpha; var ah = (ab.depth != null)?ab.depth:this.depth; var ap = (ab.isarc != null)?ab.isarc:this.isarc; var ak = (ab.linePattern != null)?ab.linePattern:this.linePattern; ao.lineWidth = (ab.lineWidth != null)?ab.lineWidth:this.lineWidth; ao.lineJoin = (ab.lineJoin != null)?ab.lineJoin:this.lineJoin; ao.lineCap = (ab.lineCap != null)?ab.lineCap:this.lineCap; ao.strokeStyle = ab.strokeStyle || this.strokeStyle || "rgba(0,0,0," + ad + ")"; ao.fillStyle = ab.fillStyle || this.fillStyle || "rgba(0,0,0," + ad + ")"; for (var ae = 0; ae < ah; ae++){var al = H.jqplot.LinePattern(ao, ak); ao.translate(Math.cos(this.angle * Math.PI / 180) * af, Math.sin(this.angle * Math.PI / 180) * af); al.beginPath(); if (ap){ao.arc(am[0], am[1], am[2], am[3], am[4], true)} else{if (aj){if (aj){ao.fillRect(am[0], am[1], am[2], am[3])}} else{if (am && am.length){var ac = true; for (var ag = 0; ag < am.length; ag++){if (am[ag][0] != null && am[ag][1] != null){if (ac){al.moveTo(am[ag][0], am[ag][1]); ac = false} else{al.lineTo(am[ag][0], am[ag][1])}} else{ac = true}}}}}if (ai){al.closePath()}if (an){ao.fill()} else{ao.stroke()}}ao.restore()}; H.jqplot.ShapeRenderer = function(ab){this.lineWidth = 1.5; this.linePattern = "solid"; this.lineJoin = "miter"; this.lineCap = "round"; this.closePath = false; this.fill = false; this.isarc = false; this.fillRect = false; this.strokeRect = false; this.clearRect = false; this.strokeStyle = "#999999"; this.fillStyle = "#999999"; H.extend(true, this, ab)}; H.jqplot.ShapeRenderer.prototype.init = function(ab){H.extend(true, this, ab)}; H.jqplot.ShapeRenderer.prototype.draw = function(am, ak, ao){am.save(); var ab = (ao != null)?ao:{}; var al = (ab.fill != null)?ab.fill:this.fill; var ag = (ab.closePath != null)?ab.closePath:this.closePath; var ah = (ab.fillRect != null)?ab.fillRect:this.fillRect; var ae = (ab.strokeRect != null)?ab.strokeRect:this.strokeRect; var ac = (ab.clearRect != null)?ab.clearRect:this.clearRect; var an = (ab.isarc != null)?ab.isarc:this.isarc; var ai = (ab.linePattern != null)?ab.linePattern:this.linePattern; var aj = H.jqplot.LinePattern(am, ai); am.lineWidth = ab.lineWidth || this.lineWidth; am.lineJoin = ab.lineJoin || this.lineJoin; am.lineCap = ab.lineCap || this.lineCap; am.strokeStyle = (ab.strokeStyle || ab.color) || this.strokeStyle; am.fillStyle = ab.fillStyle || this.fillStyle; am.beginPath(); if (an){am.arc(ak[0], ak[1], ak[2], ak[3], ak[4], true); if (ag){am.closePath()}if (al){am.fill()} else{am.stroke()}am.restore(); return} else{if (ac){am.clearRect(ak[0], ak[1], ak[2], ak[3]); am.restore(); return} else{if (ah || ae){if (ah){am.fillRect(ak[0], ak[1], ak[2], ak[3])}if (ae){am.strokeRect(ak[0], ak[1], ak[2], ak[3]); am.restore(); return}} else{if (ak && ak.length){var ad = true; for (var af = 0; af < ak.length; af++){if (ak[af][0] != null && ak[af][1] != null){if (ad){aj.moveTo(ak[af][0], ak[af][1]); ad = false} else{aj.lineTo(ak[af][0], ak[af][1])}} else{ad = true}}if (ag){aj.closePath()}if (al){am.fill()} else{am.stroke()}}}}}am.restore()}; H.jqplot.TableLegendRenderer = function(){}; H.jqplot.TableLegendRenderer.prototype.init = function(ab){H.extend(true, this, ab)}; H.jqplot.TableLegendRenderer.prototype.addrow = function(ak, ae, ab, ai){var af = (ab)?this.rowSpacing + "px":"0px"; var aj; var ad; var ac; var ah; var ag; ac = document.createElement("tr"); aj = H(ac); aj.addClass("jqplot-table-legend"); ac = null; if (ai){aj.prependTo(this._elem)} else{aj.appendTo(this._elem)}if (this.showSwatches){ad = H(document.createElement("td")); ad.addClass("jqplot-table-legend jqplot-table-legend-swatch"); ad.css({textAlign:"center", paddingTop:af}); ah = H(document.createElement("div")); ah.addClass("jqplot-table-legend-swatch-outline"); ag = H(document.createElement("div")); ag.addClass("jqplot-table-legend-swatch"); ag.css({backgroundColor:ae, borderColor:ae}); aj.append(ad.append(ah.append(ag)))}if (this.showLabels){ad = H(document.createElement("td")); ad.addClass("jqplot-table-legend jqplot-table-legend-label"); ad.css("paddingTop", af); aj.append(ad); if (this.escapeHtml){ad.text(ak)} else{ad.html(ak)}}ad = null; ah = null; ag = null; aj = null; ac = null}; H.jqplot.TableLegendRenderer.prototype.draw = function(){if (this._elem){this._elem.emptyForce(); this._elem = null}if (this.show){var ag = this._series; var ac = document.createElement("table"); this._elem = H(ac); this._elem.addClass("jqplot-table-legend"); var al = {position:"absolute"}; if (this.background){al.background = this.background}if (this.border){al.border = this.border}if (this.fontSize){al.fontSize = this.fontSize}if (this.fontFamily){al.fontFamily = this.fontFamily}if (this.textColor){al.textColor = this.textColor}if (this.marginTop != null){al.marginTop = this.marginTop}if (this.marginBottom != null){al.marginBottom = this.marginBottom}if (this.marginLeft != null){al.marginLeft = this.marginLeft}if (this.marginRight != null){al.marginRight = this.marginRight}var ab = false, ai = false, ak; for (var ah = 0; ah < ag.length; ah++){ak = ag[ah]; if (ak._stack || ak.renderer.constructor == H.jqplot.BezierCurveRenderer){ai = true}if (ak.show && ak.showLabel){var af = this.labels[ah] || ak.label.toString(); if (af){var ad = ak.color; if (ai && ah < ag.length - 1){ab = true} else{if (ai && ah == ag.length - 1){ab = false}}this.renderer.addrow.call(this, af, ad, ab, ai); ab = true}for (var ae = 0; ae < H.jqplot.addLegendRowHooks.length; ae++){var aj = H.jqplot.addLegendRowHooks[ae].call(this, ak); if (aj){this.renderer.addrow.call(this, aj.label, aj.color, ab); ab = true}}af = null}}}return this._elem}; H.jqplot.TableLegendRenderer.prototype.pack = function(ad){if (this.show){if (this.placement == "insideGrid"){switch (this.location){case"nw":var ac = ad.left; var ab = ad.top; this._elem.css("left", ac); this._elem.css("top", ab); break; case"n":var ac = (ad.left + (this._plotDimensions.width - ad.right)) / 2 - this.getWidth() / 2; var ab = ad.top; this._elem.css("left", ac); this._elem.css("top", ab); break; case"ne":var ac = ad.right; var ab = ad.top; this._elem.css({right:ac, top:ab}); break; case"e":var ac = ad.right; var ab = (ad.top + (this._plotDimensions.height - ad.bottom)) / 2 - this.getHeight() / 2; this._elem.css({right:ac, top:ab}); break; case"se":var ac = ad.right; var ab = ad.bottom; this._elem.css({right:ac, bottom:ab}); break; case"s":var ac = (ad.left + (this._plotDimensions.width - ad.right)) / 2 - this.getWidth() / 2; var ab = ad.bottom; this._elem.css({left:ac, bottom:ab}); break; case"sw":var ac = ad.left; var ab = ad.bottom; this._elem.css({left:ac, bottom:ab}); break; case"w":var ac = ad.left; var ab = (ad.top + (this._plotDimensions.height - ad.bottom)) / 2 - this.getHeight() / 2; this._elem.css({left:ac, top:ab}); break; default:var ac = ad.right; var ab = ad.bottom; this._elem.css({right:ac, bottom:ab}); break}} else{if (this.placement == "outside"){switch (this.location){case"nw":var ac = this._plotDimensions.width - ad.left; var ab = ad.top; this._elem.css("right", ac); this._elem.css("top", ab); break; case"n":var ac = (ad.left + (this._plotDimensions.width - ad.right)) / 2 - this.getWidth() / 2; var ab = this._plotDimensions.height - ad.top; this._elem.css("left", ac); this._elem.css("bottom", ab); break; case"ne":var ac = this._plotDimensions.width - ad.right; var ab = ad.top; this._elem.css({left:ac, top:ab}); break; case"e":var ac = this._plotDimensions.width - ad.right; var ab = (ad.top + (this._plotDimensions.height - ad.bottom)) / 2 - this.getHeight() / 2; this._elem.css({left:ac, top:ab}); break; case"se":var ac = this._plotDimensions.width - ad.right; var ab = ad.bottom; this._elem.css({left:ac, bottom:ab}); break; case"s":var ac = (ad.left + (this._plotDimensions.width - ad.right)) / 2 - this.getWidth() / 2; var ab = this._plotDimensions.height - ad.bottom; this._elem.css({left:ac, top:ab}); break; case"sw":var ac = this._plotDimensions.width - ad.left; var ab = ad.bottom; this._elem.css({right:ac, bottom:ab}); break; case"w":var ac = this._plotDimensions.width - ad.left; var ab = (ad.top + (this._plotDimensions.height - ad.bottom)) / 2 - this.getHeight() / 2; this._elem.css({right:ac, top:ab}); break; default:var ac = ad.right; var ab = ad.bottom; this._elem.css({right:ac, bottom:ab}); break}} else{switch (this.location){case"nw":this._elem.css({left:0, top:ad.top}); break; case"n":var ac = (ad.left + (this._plotDimensions.width - ad.right)) / 2 - this.getWidth() / 2; this._elem.css({left:ac, top:ad.top}); break; case"ne":this._elem.css({right:0, top:ad.top}); break; case"e":var ab = (ad.top + (this._plotDimensions.height - ad.bottom)) / 2 - this.getHeight() / 2; this._elem.css({right:ad.right, top:ab}); break; case"se":this._elem.css({right:ad.right, bottom:ad.bottom}); break; case"s":var ac = (ad.left + (this._plotDimensions.width - ad.right)) / 2 - this.getWidth() / 2; this._elem.css({left:ac, bottom:ad.bottom}); break; case"sw":this._elem.css({left:ad.left, bottom:ad.bottom}); break; case"w":var ab = (ad.top + (this._plotDimensions.height - ad.bottom)) / 2 - this.getHeight() / 2; this._elem.css({left:ad.left, top:ab}); break; default:this._elem.css({right:ad.right, bottom:ad.bottom}); break}}}}}; H.jqplot.ThemeEngine = function(){this.themes = {}; this.activeTheme = null}; H.jqplot.ThemeEngine.prototype.init = function(){var ae = new H.jqplot.Theme({_name:"Default"}); var ah, ac, ag; for (ah in ae.target){if (ah == "textColor"){ae.target[ah] = this.target.css("color")} else{ae.target[ah] = this.target.css(ah)}}if (this.title.show && this.title._elem){for (ah in ae.title){if (ah == "textColor"){ae.title[ah] = this.title._elem.css("color")} else{ae.title[ah] = this.title._elem.css(ah)}}}for (ah in ae.grid){ae.grid[ah] = this.grid[ah]}if (ae.grid.backgroundColor == null && this.grid.background != null){ae.grid.backgroundColor = this.grid.background}if (this.legend.show && this.legend._elem){for (ah in ae.legend){if (ah == "textColor"){ae.legend[ah] = this.legend._elem.css("color")} else{ae.legend[ah] = this.legend._elem.css(ah)}}}var ad; for (ac = 0; ac < this.series.length; ac++){ad = this.series[ac]; if (ad.renderer.constructor == H.jqplot.LineRenderer){ae.series.push(new m())} else{if (ad.renderer.constructor == H.jqplot.BarRenderer){ae.series.push(new P())} else{if (ad.renderer.constructor == H.jqplot.PieRenderer){ae.series.push(new e())} else{if (ad.renderer.constructor == H.jqplot.DonutRenderer){ae.series.push(new C())} else{if (ad.renderer.constructor == H.jqplot.FunnelRenderer){ae.series.push(new U())} else{if (ad.renderer.constructor == H.jqplot.MeterGaugeRenderer){ae.series.push(new z())} else{ae.series.push({})}}}}}}for (ah in ae.series[ac]){ae.series[ac][ah] = ad[ah]}}var ab, af; for (ah in this.axes){af = this.axes[ah]; ab = ae.axes[ah] = new L(); ab.borderColor = af.borderColor; ab.borderWidth = af.borderWidth; if (af._ticks && af._ticks[0]){for (ag in ab.ticks){if (af._ticks[0].hasOwnProperty(ag)){ab.ticks[ag] = af._ticks[0][ag]} else{if (af._ticks[0]._elem){ab.ticks[ag] = af._ticks[0]._elem.css(ag)}}}}if (af._label && af._label.show){for (ag in ab.label){if (af._label[ag]){ab.label[ag] = af._label[ag]} else{if (af._label._elem){if (ag == "textColor"){ab.label[ag] = af._label._elem.css("color")} else{ab.label[ag] = af._label._elem.css(ag)}}}}}}this.themeEngine._add(ae); this.themeEngine.activeTheme = this.themeEngine.themes[ae._name]}; H.jqplot.ThemeEngine.prototype.get = function(ab){if (!ab){return this.activeTheme} else{return this.themes[ab]}}; function K(ac, ab){return ac - ab}H.jqplot.ThemeEngine.prototype.getThemeNames = function(){var ab = []; for (var ac in this.themes){ab.push(ac)}return ab.sort(K)}; H.jqplot.ThemeEngine.prototype.getThemes = function(){var ac = []; var ab = []; for (var ae in this.themes){ac.push(ae)}ac.sort(K); for (var ad = 0; ad < ac.length; ad++){ab.push(this.themes[ac[ad]])}return ab}; H.jqplot.ThemeEngine.prototype.activate = function(ao, au){var ab = false; if (!au && this.activeTheme && this.activeTheme._name){au = this.activeTheme._name}if (!this.themes.hasOwnProperty(au)){throw new Error("No theme of that name")} else{var ag = this.themes[au]; this.activeTheme = ag; var at, am = false, al = false; var ac = ["xaxis", "x2axis", "yaxis", "y2axis"]; for (ap = 0; ap < ac.length; ap++){var ah = ac[ap]; if (ag.axesStyles.borderColor != null){ao.axes[ah].borderColor = ag.axesStyles.borderColor}if (ag.axesStyles.borderWidth != null){ao.axes[ah].borderWidth = ag.axesStyles.borderWidth}}for (var ar in ao.axes){var ae = ao.axes[ar]; if (ae.show){var ak = ag.axes[ar] || {}; var ai = ag.axesStyles; var af = H.jqplot.extend(true, {}, ak, ai); at = (ag.axesStyles.borderColor != null)?ag.axesStyles.borderColor:af.borderColor; if (af.borderColor != null){ae.borderColor = af.borderColor; ab = true}at = (ag.axesStyles.borderWidth != null)?ag.axesStyles.borderWidth:af.borderWidth; if (af.borderWidth != null){ae.borderWidth = af.borderWidth; ab = true}if (ae._ticks && ae._ticks[0]){for (var ad in af.ticks){at = af.ticks[ad]; if (at != null){ae.tickOptions[ad] = at; ae._ticks = []; ab = true}}}if (ae._label && ae._label.show){for (var ad in af.label){at = af.label[ad]; if (at != null){ae.labelOptions[ad] = at; ab = true}}}}}for (var an in ag.grid){if (ag.grid[an] != null){ao.grid[an] = ag.grid[an]}}if (!ab){ao.grid.draw()}if (ao.legend.show){for (an in ag.legend){if (ag.legend[an] != null){ao.legend[an] = ag.legend[an]}}}if (ao.title.show){for (an in ag.title){if (ag.title[an] != null){ao.title[an] = ag.title[an]}}}var ap; for (ap = 0; ap < ag.series.length; ap++){var aj = {}; var aq = false; for (an in ag.series[ap]){at = (ag.seriesStyles[an] != null)?ag.seriesStyles[an]:ag.series[ap][an]; if (at != null){aj[an] = at; if (an == "color"){ao.series[ap].renderer.shapeRenderer.fillStyle = at; ao.series[ap].renderer.shapeRenderer.strokeStyle = at; ao.series[ap][an] = at} else{if ((an == "lineWidth") || (an == "linePattern")){ao.series[ap].renderer.shapeRenderer[an] = at; ao.series[ap][an] = at} else{if (an == "markerOptions"){R(ao.series[ap].markerOptions, at); R(ao.series[ap].markerRenderer, at)} else{ao.series[ap][an] = at}}}ab = true}}}if (ab){ao.target.empty(); ao.draw()}for (an in ag.target){if (ag.target[an] != null){ao.target.css(an, ag.target[an])}}}}; H.jqplot.ThemeEngine.prototype._add = function(ac, ab){if (ab){ac._name = ab}if (!ac._name){ac._name = Date.parse(new Date())}if (!this.themes.hasOwnProperty(ac._name)){this.themes[ac._name] = ac} else{throw new Error("jqplot.ThemeEngine Error: Theme already in use")}}; H.jqplot.ThemeEngine.prototype.remove = function(ab){if (ab == "Default"){return false}return delete this.themes[ab]}; H.jqplot.ThemeEngine.prototype.newTheme = function(ab, ad){if (typeof (ab) == "object"){ad = ad || ab; ab = null}if (ad && ad._name){ab = ad._name} else{ab = ab || Date.parse(new Date())}var ac = this.copy(this.themes.Default._name, ab); H.jqplot.extend(ac, ad); return ac}; function x(ad){if (ad == null || typeof (ad) != "object"){return ad}var ab = new ad.constructor(); for (var ac in ad){ab[ac] = x(ad[ac])}return ab}H.jqplot.clone = x; function R(ad, ac){if (ac == null || typeof (ac) != "object"){return}for (var ab in ac){if (ab == "highlightColors"){ad[ab] = x(ac[ab])}if (ac[ab] != null && typeof (ac[ab]) == "object"){if (!ad.hasOwnProperty(ab)){ad[ab] = {}}R(ad[ab], ac[ab])} else{ad[ab] = ac[ab]}}}H.jqplot.merge = R; H.jqplot.extend = function(){var ag = arguments[0] || {}, ae = 1, af = arguments.length, ab = false, ad; if (typeof ag === "boolean"){ab = ag; ag = arguments[1] || {}; ae = 2}if (typeof ag !== "object" && !toString.call(ag) === "[object Function]"){ag = {}}for (; ae < af; ae++){if ((ad = arguments[ae]) != null){for (var ac in ad){var ah = ag[ac], ai = ad[ac]; if (ag === ai){continue}if (ab && ai && typeof ai === "object" && !ai.nodeType){ag[ac] = H.jqplot.extend(ab, ah || (ai.length != null?[]:{}), ai)} else{if (ai !== r){ag[ac] = ai}}}}}return ag}; H.jqplot.ThemeEngine.prototype.rename = function(ac, ab){if (ac == "Default" || ab == "Default"){throw new Error("jqplot.ThemeEngine Error: Cannot rename from/to Default")}if (this.themes.hasOwnProperty(ab)){throw new Error("jqplot.ThemeEngine Error: New name already in use.")} else{if (this.themes.hasOwnProperty(ac)){var ad = this.copy(ac, ab); this.remove(ac); return ad}}throw new Error("jqplot.ThemeEngine Error: Old name or new name invalid")}; H.jqplot.ThemeEngine.prototype.copy = function(ab, ad, af){if (ad == "Default"){throw new Error("jqplot.ThemeEngine Error: Cannot copy over Default theme")}if (!this.themes.hasOwnProperty(ab)){var ac = "jqplot.ThemeEngine Error: Source name invalid"; throw new Error(ac)}if (this.themes.hasOwnProperty(ad)){var ac = "jqplot.ThemeEngine Error: Target name invalid"; throw new Error(ac)} else{var ae = x(this.themes[ab]); ae._name = ad; H.jqplot.extend(true, ae, af); this._add(ae); return ae}}; H.jqplot.Theme = function(ab, ac){if (typeof (ab) == "object"){ac = ac || ab; ab = null}ab = ab || Date.parse(new Date()); this._name = ab; this.target = {backgroundColor:null}; this.legend = {textColor:null, fontFamily:null, fontSize:null, border:null, background:null}; this.title = {textColor:null, fontFamily:null, fontSize:null, textAlign:null}; this.seriesStyles = {}; this.series = []; this.grid = {drawGridlines:null, gridLineColor:null, gridLineWidth:null, backgroundColor:null, borderColor:null, borderWidth:null, shadow:null}; this.axesStyles = {label:{}, ticks:{}}; this.axes = {}; if (typeof (ac) == "string"){this._name = ac} else{if (typeof (ac) == "object"){H.jqplot.extend(true, this, ac)}}}; var L = function(){this.borderColor = null; this.borderWidth = null; this.ticks = new l(); this.label = new q()}; var l = function(){this.show = null; this.showGridline = null; this.showLabel = null; this.showMark = null; this.size = null; this.textColor = null; this.whiteSpace = null; this.fontSize = null; this.fontFamily = null}; var q = function(){this.textColor = null; this.whiteSpace = null; this.fontSize = null; this.fontFamily = null; this.fontWeight = null}; var m = function(){this.color = null; this.lineWidth = null; this.linePattern = null; this.shadow = null; this.fillColor = null; this.showMarker = null; this.markerOptions = new E()}; var E = function(){this.show = null; this.style = null; this.lineWidth = null; this.size = null; this.color = null; this.shadow = null}; var P = function(){this.color = null; this.seriesColors = null; this.lineWidth = null; this.shadow = null; this.barPadding = null; this.barMargin = null; this.barWidth = null; this.highlightColors = null}; var e = function(){this.seriesColors = null; this.padding = null; this.sliceMargin = null; this.fill = null; this.shadow = null; this.startAngle = null; this.lineWidth = null; this.highlightColors = null}; var C = function(){this.seriesColors = null; this.padding = null; this.sliceMargin = null; this.fill = null; this.shadow = null; this.startAngle = null; this.lineWidth = null; this.innerDiameter = null; this.thickness = null; this.ringMargin = null; this.highlightColors = null}; var U = function(){this.color = null; this.lineWidth = null; this.shadow = null; this.padding = null; this.sectionMargin = null; this.seriesColors = null; this.highlightColors = null}; var z = function(){this.padding = null; this.backgroundColor = null; this.ringColor = null; this.tickColor = null; this.ringWidth = null; this.intervalColors = null; this.intervalInnerRadius = null; this.intervalOuterRadius = null; this.hubRadius = null; this.needleThickness = null; this.needlePad = null}; H.fn.jqplotChildText = function(){return H(this).contents().filter(function(){return this.nodeType == 3}).text()}; H.fn.jqplotGetComputedFontStyle = function(){var ae = window.getComputedStyle?window.getComputedStyle(this[0], ""):this[0].currentStyle; var ac = ae["font-style"]?["font-style", "font-weight", "font-size", "font-family"]:["fontStyle", "fontWeight", "fontSize", "fontFamily"]; var af = []; for (var ad = 0; ad < ac.length; ++ad){var ab = String(ae[ac[ad]]); if (ab && ab != "normal"){af.push(ab)}}return af.join(" ")}; H.fn.jqplotToImageCanvas = function(ad){ad = ad || {}; var ao = (ad.x_offset == null)?0:ad.x_offset; var aq = (ad.y_offset == null)?0:ad.y_offset; var af = (ad.backgroundColor == null)?"rgb(255,255,255)":ad.backgroundColor; if (H(this).width() == 0 || H(this).height() == 0){return null}if (H.jqplot.use_excanvas){return null}var ah = document.createElement("canvas"); var au = H(this).outerHeight(true); var am = H(this).outerWidth(true); var ag = H(this).offset(); var ai = ag.left; var ak = ag.top; var an = 0, al = 0; var ar = ["jqplot-table-legend", "jqplot-xaxis-tick", "jqplot-x2axis-tick", "jqplot-yaxis-tick", "jqplot-y2axis-tick", "jqplot-y3axis-tick", "jqplot-y4axis-tick", "jqplot-y5axis-tick", "jqplot-y6axis-tick", "jqplot-y7axis-tick", "jqplot-y8axis-tick", "jqplot-y9axis-tick", "jqplot-xaxis-label", "jqplot-x2axis-label", "jqplot-yaxis-label", "jqplot-y2axis-label", "jqplot-y3axis-label", "jqplot-y4axis-label", "jqplot-y5axis-label", "jqplot-y6axis-label", "jqplot-y7axis-label", "jqplot-y8axis-label", "jqplot-y9axis-label"]; var aj, ab, ac, av; for (var at = 0; at < ar.length; at++){H(this).find("." + ar[at]).each(function(){aj = H(this).offset().top - ak; ab = H(this).offset().left - ai; av = ab + H(this).outerWidth(true) + an; ac = aj + H(this).outerHeight(true) + al; if (ab < - an){am = am - an - ab; an = - ab}if (aj < - al){au = au - al - aj; al = - aj}if (av > am){am = av}if (ac > au){au = ac}})}ah.width = am + Number(ao); ah.height = au + Number(aq); var ae = ah.getContext("2d"); ae.save(); ae.fillStyle = af; ae.fillRect(0, 0, ah.width, ah.height); ae.restore(); ae.translate(an, al); ae.textAlign = "left"; ae.textBaseline = "top"; function aw(ay){var az = parseInt(H(ay).css("line-height"), 10); if (isNaN(az)){az = parseInt(H(ay).css("font-size"), 10) * 1.2}return az}function ax(az, ay, aM, aA, aI, aB){var aK = aw(az); var aE = H(az).innerWidth(); var aF = H(az).innerHeight(); var aH = aM.split(/\s+/); var aL = aH.length; var aJ = ""; var aG = []; var aO = aI; var aN = aA; for (var aD = 0; aD < aL; aD++){aJ += aH[aD]; if (ay.measureText(aJ).width > aE){aG.push(aD); aJ = ""; aD--}}if (aG.length === 0){if (H(az).css("textAlign") === "center"){aN = aA + (aB - ay.measureText(aJ).width) / 2 - an}ay.fillText(aM, aN, aI)} else{aJ = aH.slice(0, aG[0]).join(" "); if (H(az).css("textAlign") === "center"){aN = aA + (aB - ay.measureText(aJ).width) / 2 - an}ay.fillText(aJ, aN, aO); aO += aK; for (var aD = 1, aC = aG.length; aD < aC; aD++){aJ = aH.slice(aG[aD - 1], aG[aD]).join(" "); if (H(az).css("textAlign") === "center"){aN = aA + (aB - ay.measureText(aJ).width) / 2 - an}ay.fillText(aJ, aN, aO); aO += aK}aJ = aH.slice(aG[aD - 1], aH.length).join(" "); if (H(az).css("textAlign") === "center"){aN = aA + (aB - ay.measureText(aJ).width) / 2 - an}ay.fillText(aJ, aN, aO)}}function ap(aA, aD, ay){var aH = aA.tagName.toLowerCase(); var az = H(aA).position(); var aE = window.getComputedStyle?window.getComputedStyle(aA, ""):aA.currentStyle; var aC = aD + az.left + parseInt(aE.marginLeft, 10) + parseInt(aE.borderLeftWidth, 10) + parseInt(aE.paddingLeft, 10); var aF = ay + az.top + parseInt(aE.marginTop, 10) + parseInt(aE.borderTopWidth, 10) + parseInt(aE.paddingTop, 10); var aG = ah.width; if ((aH == "div" || aH == "span") && !H(aA).hasClass("jqplot-highlighter-tooltip")){H(aA).children().each(function(){ap(this, aC, aF)}); var aI = H(aA).jqplotChildText(); if (aI){ae.font = H(aA).jqplotGetComputedFontStyle(); ae.fillStyle = H(aA).css("color"); ax(aA, ae, aI, aC, aF, aG)}} else{if (aH === "table" && H(aA).hasClass("jqplot-table-legend")){ae.strokeStyle = H(aA).css("border-top-color"); ae.fillStyle = H(aA).css("background-color"); ae.fillRect(aC, aF, H(aA).innerWidth(), H(aA).innerHeight()); if (parseInt(H(aA).css("border-top-width"), 10) > 0){ae.strokeRect(aC, aF, H(aA).innerWidth(), H(aA).innerHeight())}H(aA).find("div.jqplot-table-legend-swatch-outline").each(function(){var aO = H(this); ae.strokeStyle = aO.css("border-top-color"); var aK = aC + aO.position().left; var aL = aF + aO.position().top; ae.strokeRect(aK, aL, aO.innerWidth(), aO.innerHeight()); aK += parseInt(aO.css("padding-left"), 10); aL += parseInt(aO.css("padding-top"), 10); var aN = aO.innerHeight() - 2 * parseInt(aO.css("padding-top"), 10); var aJ = aO.innerWidth() - 2 * parseInt(aO.css("padding-left"), 10); var aM = aO.children("div.jqplot-table-legend-swatch"); ae.fillStyle = aM.css("background-color"); ae.fillRect(aK, aL, aJ, aN)}); H(aA).find("td.jqplot-table-legend-label").each(function(){var aL = H(this); var aJ = aC + aL.position().left; var aK = aF + aL.position().top + parseInt(aL.css("padding-top"), 10); ae.font = aL.jqplotGetComputedFontStyle(); ae.fillStyle = aL.css("color"); ax(aL, ae, aL.text(), aJ, aK, aG)}); var aB = null} else{if (aH == "canvas"){ae.drawImage(aA, aC, aF)}}}}H(this).children().each(function(){ap(this, ao, aq)}); return ah}; H.fn.jqplotToImageStr = function(ac){var ab = H(this).jqplotToImageCanvas(ac); if (ab){return ab.toDataURL("image/png")} else{return null}}; H.fn.jqplotToImageElem = function(ab){var ac = document.createElement("img"); var ad = H(this).jqplotToImageStr(ab); ac.src = ad; return ac}; H.fn.jqplotToImageElemStr = function(ab){var ac = "<img src=" + H(this).jqplotToImageStr(ab) + " />"; return ac}; H.fn.jqplotSaveImage = function(){var ab = H(this).jqplotToImageStr({}); if (ab){window.location.href = ab.replace("image/png", "image/octet-stream")}}; H.fn.jqplotViewImage = function(){var ac = H(this).jqplotToImageElemStr({}); var ad = H(this).jqplotToImageStr({}); if (ac){var ab = window.open(""); ab.document.open("image/png"); ab.document.write(ac); ab.document.close(); ab = null}}; var aa = function(){this.syntax = aa.config.syntax; this._type = "jsDate"; this.proxy = new Date(); this.options = {}; this.locale = aa.regional.getLocale(); this.formatString = ""; this.defaultCentury = aa.config.defaultCentury; switch (arguments.length){case 0:break; case 1:if (j(arguments[0]) == "[object Object]" && arguments[0]._type != "jsDate"){var ad = this.options = arguments[0]; this.syntax = ad.syntax || this.syntax; this.defaultCentury = ad.defaultCentury || this.defaultCentury; this.proxy = aa.createDate(ad.date)} else{this.proxy = aa.createDate(arguments[0])}break; default:var ab = []; for (var ac = 0; ac < arguments.length; ac++){ab.push(arguments[ac])}this.proxy = new Date(); this.proxy.setFullYear.apply(this.proxy, ab.slice(0, 3)); if (ab.slice(3).length){this.proxy.setHours.apply(this.proxy, ab.slice(3))}break}}; aa.config = {defaultLocale:"en", syntax:"perl", defaultCentury:1900}; aa.prototype.add = function(ad, ac){var ab = A[ac] || A.day; if (typeof ab == "number"){this.proxy.setTime(this.proxy.getTime() + (ab * ad))} else{ab.add(this, ad)}return this}; aa.prototype.clone = function(){return new aa(this.proxy.getTime())}; aa.prototype.getUtcOffset = function(){return this.proxy.getTimezoneOffset() * 60000}; aa.prototype.diff = function(ac, af, ab){ac = new aa(ac); if (ac === null){return null}var ad = A[af] || A.day; if (typeof ad == "number"){var ae = (this.proxy.getTime() - ac.proxy.getTime()) / ad} else{var ae = ad.diff(this.proxy, ac.proxy)}return(ab?ae:Math[ae > 0?"floor":"ceil"](ae))}; aa.prototype.getAbbrDayName = function(){return aa.regional[this.locale]["dayNamesShort"][this.proxy.getDay()]}; aa.prototype.getAbbrMonthName = function(){return aa.regional[this.locale]["monthNamesShort"][this.proxy.getMonth()]}; aa.prototype.getAMPM = function(){return this.proxy.getHours() >= 12?"PM":"AM"}; aa.prototype.getAmPm = function(){return this.proxy.getHours() >= 12?"pm":"am"}; aa.prototype.getCentury = function(){return parseInt(this.proxy.getFullYear() / 100, 10)}; aa.prototype.getDate = function(){return this.proxy.getDate()}; aa.prototype.getDay = function(){return this.proxy.getDay()}; aa.prototype.getDayOfWeek = function(){var ab = this.proxy.getDay(); return ab === 0?7:ab}; aa.prototype.getDayOfYear = function(){var ac = this.proxy; var ab = ac - new Date("" + ac.getFullYear() + "/1/1 GMT"); ab += ac.getTimezoneOffset() * 60000; ac = null; return parseInt(ab / 60000 / 60 / 24, 10) + 1}; aa.prototype.getDayName = function(){return aa.regional[this.locale]["dayNames"][this.proxy.getDay()]}; aa.prototype.getFullWeekOfYear = function(){var ae = this.proxy; var ab = this.getDayOfYear(); var ad = 6 - ae.getDay(); var ac = parseInt((ab + ad) / 7, 10); return ac}; aa.prototype.getFullYear = function(){return this.proxy.getFullYear()}; aa.prototype.getGmtOffset = function(){var ab = this.proxy.getTimezoneOffset() / 60; var ac = ab < 0?"+":"-"; ab = Math.abs(ab); return ac + J(Math.floor(ab), 2) + ":" + J((ab % 1) * 60, 2)}; aa.prototype.getHours = function(){return this.proxy.getHours()}; aa.prototype.getHours12 = function(){var ab = this.proxy.getHours(); return ab > 12?ab - 12:(ab == 0?12:ab)}; aa.prototype.getIsoWeek = function(){var ae = this.proxy; var ad = ae.getWeekOfYear(); var ab = (new Date("" + ae.getFullYear() + "/1/1")).getDay(); var ac = ad + (ab > 4 || ab <= 1?0:1); if (ac == 53 && (new Date("" + ae.getFullYear() + "/12/31")).getDay() < 4){ac = 1} else{if (ac === 0){ae = new aa(new Date("" + (ae.getFullYear() - 1) + "/12/31")); ac = ae.getIsoWeek()}}ae = null; return ac}; aa.prototype.getMilliseconds = function(){return this.proxy.getMilliseconds()}; aa.prototype.getMinutes = function(){return this.proxy.getMinutes()}; aa.prototype.getMonth = function(){return this.proxy.getMonth()}; aa.prototype.getMonthName = function(){return aa.regional[this.locale]["monthNames"][this.proxy.getMonth()]}; aa.prototype.getMonthNumber = function(){return this.proxy.getMonth() + 1}; aa.prototype.getSeconds = function(){return this.proxy.getSeconds()}; aa.prototype.getShortYear = function(){return this.proxy.getYear() % 100}; aa.prototype.getTime = function(){return this.proxy.getTime()}; aa.prototype.getTimezoneAbbr = function(){return this.proxy.toString().replace(/^.*\(([^)]+)\)$/, "$1")}; aa.prototype.getTimezoneName = function(){var ab = /(?:\((.+)\)$| ([A-Z]{3}) )/.exec(this.toString()); return ab[1] || ab[2] || "GMT" + this.getGmtOffset()}; aa.prototype.getTimezoneOffset = function(){return this.proxy.getTimezoneOffset()}; aa.prototype.getWeekOfYear = function(){var ab = this.getDayOfYear(); var ad = 7 - this.getDayOfWeek(); var ac = parseInt((ab + ad) / 7, 10); return ac}; aa.prototype.getUnix = function(){return Math.round(this.proxy.getTime() / 1000, 0)}; aa.prototype.getYear = function(){return this.proxy.getYear()}; aa.prototype.next = function(ab){ab = ab || "day"; return this.clone().add(1, ab)}; aa.prototype.set = function(){switch (arguments.length){case 0:this.proxy = new Date(); break; case 1:if (j(arguments[0]) == "[object Object]" && arguments[0]._type != "jsDate"){var ad = this.options = arguments[0]; this.syntax = ad.syntax || this.syntax; this.defaultCentury = ad.defaultCentury || this.defaultCentury; this.proxy = aa.createDate(ad.date)} else{this.proxy = aa.createDate(arguments[0])}break; default:var ab = []; for (var ac = 0; ac < arguments.length; ac++){ab.push(arguments[ac])}this.proxy = new Date(); this.proxy.setFullYear.apply(this.proxy, ab.slice(0, 3)); if (ab.slice(3).length){this.proxy.setHours.apply(this.proxy, ab.slice(3))}break}return this}; aa.prototype.setDate = function(ab){this.proxy.setDate(ab); return this}; aa.prototype.setFullYear = function(){this.proxy.setFullYear.apply(this.proxy, arguments); return this}; aa.prototype.setHours = function(){this.proxy.setHours.apply(this.proxy, arguments); return this}; aa.prototype.setMilliseconds = function(ab){this.proxy.setMilliseconds(ab); return this}; aa.prototype.setMinutes = function(){this.proxy.setMinutes.apply(this.proxy, arguments); return this}; aa.prototype.setMonth = function(){this.proxy.setMonth.apply(this.proxy, arguments); return this}; aa.prototype.setSeconds = function(){this.proxy.setSeconds.apply(this.proxy, arguments); return this}; aa.prototype.setTime = function(ab){this.proxy.setTime(ab); return this}; aa.prototype.setYear = function(){this.proxy.setYear.apply(this.proxy, arguments); return this}; aa.prototype.strftime = function(ab){ab = ab || this.formatString || aa.regional[this.locale]["formatString"]; return aa.strftime(this, ab, this.syntax)}; aa.prototype.toString = function(){return this.proxy.toString()}; aa.prototype.toYmdInt = function(){return(this.proxy.getFullYear() * 10000) + (this.getMonthNumber() * 100) + this.proxy.getDate()}; aa.regional = {en:{monthNames:["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"], monthNamesShort:["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], dayNames:["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"], dayNamesShort:["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], formatString:"%Y-%m-%d %H:%M:%S"}, fr:{monthNames:["Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre"], monthNamesShort:["Jan", "Fév", "Mar", "Avr", "Mai", "Jun", "Jul", "Aoû", "Sep", "Oct", "Nov", "Déc"], dayNames:["Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi"], dayNamesShort:["Dim", "Lun", "Mar", "Mer", "Jeu", "Ven", "Sam"], formatString:"%Y-%m-%d %H:%M:%S"}, de:{monthNames:["Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"], monthNamesShort:["Jan", "Feb", "Mär", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez"], dayNames:["Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag"], dayNamesShort:["So", "Mo", "Di", "Mi", "Do", "Fr", "Sa"], formatString:"%Y-%m-%d %H:%M:%S"}, es:{monthNames:["Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre"], monthNamesShort:["Ene", "Feb", "Mar", "Abr", "May", "Jun", "Jul", "Ago", "Sep", "Oct", "Nov", "Dic"], dayNames:["Domingo", "Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sábado"], dayNamesShort:["Dom", "Lun", "Mar", "Mié", "Juv", "Vie", "Sáb"], formatString:"%Y-%m-%d %H:%M:%S"}, ru:{monthNames:["??????", "???????", "????", "??????", "???", "????", "????", "??????", "????????", "???????", "??????", "???????"], monthNamesShort:["???", "???", "???", "???", "???", "???", "???", "???", "???", "???", "???", "???"], dayNames:["???????????", "???????????", "???????", "?????", "???????", "???????", "???????"], dayNamesShort:["???", "???", "???", "???", "???", "???", "???"], formatString:"%Y-%m-%d %H:%M:%S"}, ar:{monthNames:["????? ??????", "????", "????", "?????", "????", "??????", "????", "??", "?????", "????? ?????", "????? ??????", "????? ?????"], monthNamesShort:["1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12"], dayNames:["?????", "?????", "???????", "????????", "????????", "??????", "??????"], dayNamesShort:["???", "???", "?????", "??????", "??????", "????", "????"], formatString:"%Y-%m-%d %H:%M:%S"}, pt:{monthNames:["Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro"], monthNamesShort:["Jan", "Fev", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", "Set", "Out", "Nov", "Dez"], dayNames:["Domingo", "Segunda-feira", "Terça-feira", "Quarta-feira", "Quinta-feira", "Sexta-feira", "Sábado"], dayNamesShort:["Dom", "Seg", "Ter", "Qua", "Qui", "Sex", "Sáb"], formatString:"%Y-%m-%d %H:%M:%S"}, "pt-BR":{monthNames:["Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro"], monthNamesShort:["Jan", "Fev", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", "Set", "Out", "Nov", "Dez"], dayNames:["Domingo", "Segunda-feira", "Terça-feira", "Quarta-feira", "Quinta-feira", "Sexta-feira", "Sábado"], dayNamesShort:["Dom", "Seg", "Ter", "Qua", "Qui", "Sex", "Sáb"], formatString:"%Y-%m-%d %H:%M:%S"}}; aa.regional["en-US"] = aa.regional["en-GB"] = aa.regional.en; aa.regional.getLocale = function(){var ab = aa.config.defaultLocale; if (document && document.getElementsByTagName("html") && document.getElementsByTagName("html")[0].lang){ab = document.getElementsByTagName("html")[0].lang; if (!aa.regional.hasOwnProperty(ab)){ab = aa.config.defaultLocale}}return ab}; var y = 24 * 60 * 60 * 1000; var J = function(ab, ae){ab = String(ab); var ac = ae - ab.length; var ad = String(Math.pow(10, ac)).slice(1); return ad.concat(ab)}; var A = {millisecond:1, second:1000, minute:60 * 1000, hour:60 * 60 * 1000, day:y, week:7 * y, month:{add:function(ad, ab){A.year.add(ad, Math[ab > 0?"floor":"ceil"](ab / 12)); var ac = ad.getMonth() + (ab % 12); if (ac == 12){ac = 0; ad.setYear(ad.getFullYear() + 1)} else{if (ac == - 1){ac = 11; ad.setYear(ad.getFullYear() - 1)}}ad.setMonth(ac)}, diff:function(af, ad){var ab = af.getFullYear() - ad.getFullYear(); var ac = af.getMonth() - ad.getMonth() + (ab * 12); var ae = af.getDate() - ad.getDate(); return ac + (ae / 30)}}, year:{add:function(ac, ab){ac.setYear(ac.getFullYear() + Math[ab > 0?"floor":"ceil"](ab))}, diff:function(ac, ab){return A.month.diff(ac, ab) / 12}}}; for (var T in A){if (T.substring(T.length - 1) != "s"){A[T + "s"] = A[T]}}var D = function(af, ae, ac){if (aa.formats[ac]["shortcuts"][ae]){return aa.strftime(af, aa.formats[ac]["shortcuts"][ae], ac)} else{var ab = (aa.formats[ac]["codes"][ae] || "").split("."); var ad = af["get" + ab[0]]?af["get" + ab[0]]():""; if (ab[1]){ad = J(ad, ab[1])}return ad}}; aa.strftime = function(ah, ae, ad, ai){var ac = "perl"; var ag = aa.regional.getLocale(); if (ad && aa.formats.hasOwnProperty(ad)){ac = ad} else{if (ad && aa.regional.hasOwnProperty(ad)){ag = ad}}if (ai && aa.formats.hasOwnProperty(ai)){ac = ai} else{if (ai && aa.regional.hasOwnProperty(ai)){ag = ai}}if (j(ah) != "[object Object]" || ah._type != "jsDate"){ah = new aa(ah); ah.locale = ag}if (!ae){ae = ah.formatString || aa.regional[ag]["formatString"]}var ab = ae || "%Y-%m-%d", aj = "", af; while (ab.length > 0){if (af = ab.match(aa.formats[ac].codes.matcher)){aj += ab.slice(0, af.index); aj += (af[1] || "") + D(ah, af[2], ac); ab = ab.slice(af.index + af[0].length)} else{aj += ab; ab = ""}}return aj}; aa.formats = {ISO:"%Y-%m-%dT%H:%M:%S.%N%G", SQL:"%Y-%m-%d %H:%M:%S"}; aa.formats.perl = {codes:{matcher:/()%(#?(%|[a-z]))/i, Y:"FullYear", y:"ShortYear.2", m:"MonthNumber.2", "#m":"MonthNumber", B:"MonthName", b:"AbbrMonthName", d:"Date.2", "#d":"Date", e:"Date", A:"DayName", a:"AbbrDayName", w:"Day", H:"Hours.2", "#H":"Hours", I:"Hours12.2", "#I":"Hours12", p:"AMPM", M:"Minutes.2", "#M":"Minutes", S:"Seconds.2", "#S":"Seconds", s:"Unix", N:"Milliseconds.3", "#N":"Milliseconds", O:"TimezoneOffset", Z:"TimezoneName", G:"GmtOffset"}, shortcuts:{F:"%Y-%m-%d", T:"%H:%M:%S", X:"%H:%M:%S", x:"%m/%d/%y", D:"%m/%d/%y", "#c":"%a %b %e %H:%M:%S %Y", v:"%e-%b-%Y", R:"%H:%M", r:"%I:%M:%S %p", t:"\t", n:"\n", "%":"%"}}; aa.formats.php = {codes:{matcher:/()%((%|[a-z]))/i, a:"AbbrDayName", A:"DayName", d:"Date.2", e:"Date", j:"DayOfYear.3", u:"DayOfWeek", w:"Day", U:"FullWeekOfYear.2", V:"IsoWeek.2", W:"WeekOfYear.2", b:"AbbrMonthName", B:"MonthName", m:"MonthNumber.2", h:"AbbrMonthName", C:"Century.2", y:"ShortYear.2", Y:"FullYear", H:"Hours.2", I:"Hours12.2", l:"Hours12", p:"AMPM", P:"AmPm", M:"Minutes.2", S:"Seconds.2", s:"Unix", O:"TimezoneOffset", z:"GmtOffset", Z:"TimezoneAbbr"}, shortcuts:{D:"%m/%d/%y", F:"%Y-%m-%d", T:"%H:%M:%S", X:"%H:%M:%S", x:"%m/%d/%y", R:"%H:%M", r:"%I:%M:%S %p", t:"\t", n:"\n", "%":"%"}}; aa.createDate = function(ad){if (ad == null){return new Date()}if (ad instanceof Date){return ad}if (typeof ad == "number"){return new Date(ad)}var ai = String(ad).replace(/^\s*(.+)\s*$/g, "$1"); ai = ai.replace(/^([0-9]{1,4})-([0-9]{1,2})-([0-9]{1,4})/, "$1/$2/$3"); ai = ai.replace(/^(3[01]|[0-2]?\d)[-\/]([a-z]{3,})[-\/](\d{4})/i, "$1 $2 $3"); var ah = ai.match(/^(3[01]|[0-2]?\d)[-\/]([a-z]{3,})[-\/](\d{2})\D*/i); if (ah && ah.length > 3){var am = parseFloat(ah[3]); var ag = aa.config.defaultCentury + am; ag = String(ag); ai = ai.replace(/^(3[01]|[0-2]?\d)[-\/]([a-z]{3,})[-\/](\d{2})\D*/i, ah[1] + " " + ah[2] + " " + ag)}ah = ai.match(/^([0-9]{1,2})[-\/]([0-9]{1,2})[-\/]([0-9]{1,2})[^0-9]/); function al(aq, ap){var aw = parseFloat(ap[1]); var av = parseFloat(ap[2]); var au = parseFloat(ap[3]); var at = aa.config.defaultCentury; var ao, an, ax, ar; if (aw > 31){an = au; ax = av; ao = at + aw} else{an = av; ax = aw; ao = at + au}ar = ax + "/" + an + "/" + ao; return aq.replace(/^([0-9]{1,2})[-\/]([0-9]{1,2})[-\/]([0-9]{1,2})/, ar)}if (ah && ah.length > 3){ai = al(ai, ah)}var ah = ai.match(/^([0-9]{1,2})[-\/]([0-9]{1,2})[-\/]([0-9]{1,2})$/); if (ah && ah.length > 3){ai = al(ai, ah)}var af = 0; var ac = aa.matchers.length; var ak, ab, aj = ai, ae; while (af < ac){ab = Date.parse(aj); if (!isNaN(ab)){return new Date(ab)}ak = aa.matchers[af]; if (typeof ak == "function"){ae = ak.call(aa, aj); if (ae instanceof Date){return ae}} else{aj = ai.replace(ak[0], ak[1])}af++}return NaN}; aa.daysInMonth = function(ab, ac){if (ac == 2){return new Date(ab, 1, 29).getDate() == 29?29:28}return[r, 31, r, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31][ac]}; aa.matchers = [[/(3[01]|[0-2]\d)\s*\.\s*(1[0-2]|0\d)\s*\.\s*([1-9]\d{3})/, "$2/$1/$3"], [/([1-9]\d{3})\s*-\s*(1[0-2]|0\d)\s*-\s*(3[01]|[0-2]\d)/, "$2/$3/$1"], function(ae){var ac = ae.match(/^(?:(.+)\s+)?([012]?\d)(?:\s*\:\s*(\d\d))?(?:\s*\:\s*(\d\d(\.\d*)?))?\s*(am|pm)?\s*$/i); if (ac){if (ac[1]){var ad = this.createDate(ac[1]); if (isNaN(ad)){return}} else{var ad = new Date(); ad.setMilliseconds(0)}var ab = parseFloat(ac[2]); if (ac[6]){ab = ac[6].toLowerCase() == "am"?(ab == 12?0:ab):(ab == 12?12:ab + 12)}ad.setHours(ab, parseInt(ac[3] || 0, 10), parseInt(ac[4] || 0, 10), ((parseFloat(ac[5] || 0)) || 0) * 1000); return ad} else{return ae}}, function(ae){var ac = ae.match(/^(?:(.+))[T|\s+]([012]\d)(?:\:(\d\d))(?:\:(\d\d))(?:\.\d+)([\+\-]\d\d\:\d\d)$/i); if (ac){if (ac[1]){var ad = this.createDate(ac[1]); if (isNaN(ad)){return}} else{var ad = new Date(); ad.setMilliseconds(0)}var ab = parseFloat(ac[2]); ad.setHours(ab, parseInt(ac[3], 10), parseInt(ac[4], 10), parseFloat(ac[5]) * 1000); return ad} else{return ae}}, function(af){var ad = af.match(/^([0-3]?\d)\s*[-\/.\s]{1}\s*([a-zA-Z]{3,9})\s*[-\/.\s]{1}\s*([0-3]?\d)$/); if (ad){var ae = new Date(); var ag = aa.config.defaultCentury; var ai = parseFloat(ad[1]); var ah = parseFloat(ad[3]); var ac, ab, aj; if (ai > 31){ab = ah; ac = ag + ai} else{ab = ai; ac = ag + ah}var aj = W(ad[2], aa.regional[aa.regional.getLocale()]["monthNamesShort"]); if (aj == - 1){aj = W(ad[2], aa.regional[aa.regional.getLocale()]["monthNames"])}ae.setFullYear(ac, aj, ab); ae.setHours(0, 0, 0, 0); return ae} else{return af}}]; function W(ad, ae){if (ae.indexOf){return ae.indexOf(ad)}for (var ab = 0, ac = ae.length; ab < ac; ab++){if (ae[ab] === ad){return ab}}return - 1}function j(ab){ +if (ab === null){return"[object Null]"}return Object.prototype.toString.call(ab)}H.jsDate = aa; + H.jqplot.sprintf = function(){function ah(an, aj, ak, am){ + var al = (an.length >= aj)?"":Array(1 + aj - an.length >>> 0).join(ak); + return am?an + al:al + an}function ae(al){ + var ak = new String(al); + for (var aj = 10; aj > 0; aj--){if (ak == (ak = ak.replace(/^(\d+)(\d{3})/, "$1" + H.jqplot.sprintf.thousandsSeparator + "$2"))){break}}return ak}function ad(ao, an, aq, al, am, ak){var ap = al - ao.length; if (ap > 0){var aj = " "; if (ak){aj = " "}if (aq || !am){ao = ah(ao, al, aj, aq)} else{ao = ao.slice(0, an.length) + ah("", ap, "0", true) + ao.slice(an.length)}}return ao}function ai(ar, ak, ap, al, aj, ao, aq, an){var am = ar >>> 0; ap = ap && am && {"2":"0b", "8":"0", "16":"0x"}[ak] || ""; ar = ap + ah(am.toString(ak), ao || 0, "0", false); return ad(ar, ap, al, aj, aq, an)}function ab(an, ao, al, aj, am, ak){if (aj != null){an = an.slice(0, aj)}return ad(an, "", ao, al, am, ak)}var ac = arguments, af = 0, ag = ac[af++]; return ag.replace(H.jqplot.sprintf.regex, function(aG, aq, ar, av, aI, aD, ao){if (aG == "%%"){return"%"}var ax = false, at = "", au = false, aF = false, ap = false, an = false; for (var aC = 0; ar && aC < ar.length; aC++){switch (ar.charAt(aC)){case" ":at = " "; break; case"+":at = "+"; break; case"-":ax = true; break; case"0":au = true; break; case"#":aF = true; break; case"&":ap = true; break; case"'":an = true; break}}if (!av){av = 0} else{if (av == "*"){av = + ac[af++]} else{if (av.charAt(0) == "*"){av = + ac[av.slice(1, - 1)]} else{av = + av}}}if (av < 0){av = - av; ax = true}if (!isFinite(av)){throw new Error("$.jqplot.sprintf: (minimum-)width must be finite")}if (!aD){aD = "fFeE".indexOf(ao) > - 1?6:(ao == "d")?0:void (0)} else{if (aD == "*"){aD = + ac[af++]} else{if (aD.charAt(0) == "*"){aD = + ac[aD.slice(1, - 1)]} else{aD = + aD}}}var az = aq?ac[aq.slice(0, - 1)]:ac[af++]; switch (ao){case"s":if (az == null){return""}return ab(String(az), ax, av, aD, au, ap); case"c":return ab(String.fromCharCode( + az), ax, av, aD, au, ap); case"b":return ai(az, 2, aF, ax, av, aD, au, ap); case"o":return ai(az, 8, aF, ax, av, aD, au, ap); case"x":return ai(az, 16, aF, ax, av, aD, au, ap); case"X":return ai(az, 16, aF, ax, av, aD, au, ap).toUpperCase(); case"u":return ai(az, 10, aF, ax, av, aD, au, ap); case"i":var al = parseInt( + az, 10); if (isNaN(al)){return""}var aB = al < 0?"-":at; var aE = an?ae(String(Math.abs(al))):String(Math.abs(al)); az = aB + ah(aE, aD, "0", false); return ad(az, aB, ax, av, au, ap); case"d":var al = Math.round( + az); if (isNaN(al)){return""}var aB = al < 0?"-":at; var aE = an?ae(String(Math.abs(al))):String(Math.abs(al)); az = aB + ah(aE, aD, "0", false); return ad(az, aB, ax, av, au, ap); case"e":case"E":case"f":case"F":case"g":case"G":var al = + az; if (isNaN(al)){return""}var aB = al < 0?"-":at; var am = ["toExponential", "toFixed", "toPrecision"]["efg".indexOf(ao.toLowerCase())]; var aH = ["toString", "toUpperCase"]["eEfFgG".indexOf(ao) % 2]; var aE = Math.abs(al)[am](aD); aE = an?ae(aE):aE; az = aB + aE; var aw = ad(az, aB, ax, av, au, ap)[aH](); if (H.jqplot.sprintf.decimalMark !== "." && H.jqplot.sprintf.decimalMark !== H.jqplot.sprintf.thousandsSeparator){return aw.replace(/\./, H.jqplot.sprintf.decimalMark)} else{return aw}case"p":case"P":var al = + az; if (isNaN(al)){return""}var aB = al < 0?"-":at; var ay = String(Number(Math.abs(al)).toExponential()).split(/e|E/); var ak = (ay[0].indexOf(".") != - 1)?ay[0].length - 1:ay[0].length; var aA = (ay[1] < 0)? - ay[1] - 1:0; if (Math.abs(al) < 1){if (ak + aA <= aD){az = aB + Math.abs(al).toPrecision(ak)} else{if (ak <= aD - 1){az = aB + Math.abs(al).toExponential(ak - 1)} else{az = aB + Math.abs(al).toExponential(aD - 1)}}} else{var aj = (ak <= aD)?ak:aD; az = aB + Math.abs(al).toPrecision(aj)}var aH = ["toString", "toUpperCase"]["pP".indexOf(ao) % 2]; return ad(az, aB, ax, av, au, ap)[aH](); case"n":return""; default:return aG}})}; H.jqplot.sprintf.thousandsSeparator = ","; H.jqplot.sprintf.decimalMark = "."; H.jqplot.sprintf.regex = /%%|%(\d+\$)?([-+#0&\' ]*)(\*\d+\$|\*|\d+)?(\.(\*\d+\$|\*|\d+))?([nAscboxXuidfegpEGP])/g; H.jqplot.getSignificantFigures = function(af){var ah = String(Number(Math.abs(af)).toExponential()).split(/e|E/); var ag = (ah[0].indexOf(".") != - 1)?ah[0].length - 1:ah[0].length; var ac = (ah[1] < 0)? - ah[1] - 1:0; var ab = parseInt(ah[1], 10); var ad = (ab + 1 > 0)?ab + 1:0; var ae = (ag <= ad)?0:ag - ab - 1; return{significantDigits:ag, digitsLeft:ad, digitsRight:ae, zeros:ac, exponent:ab}}; H.jqplot.getPrecision = function(ab){return H.jqplot.getSignificantFigures(ab).digitsRight}})(jQuery); var backCompat = $.uiBackCompat !== false; $.jqplot.effects = {effect:{}}; var dataSpace = "jqplot.storage."; $.extend($.jqplot.effects, {version:"1.9pre", save:function(b, c){for (var a = 0; a < c.length; a++){if (c[a] !== null){b.data(dataSpace + c[a], b[0].style[c[a]])}}}, restore:function(b, c){for (var a = 0; a < c.length; a++){if (c[a] !== null){b.css(c[a], b.data(dataSpace + c[a]))}}}, setMode:function(a, b){if (b === "toggle"){b = a.is(":hidden")?"show":"hide"}return b}, createWrapper:function(b){if (b.parent().is(".ui-effects-wrapper")){return b.parent()}var c = {width:b.outerWidth(true), height:b.outerHeight(true), "float":b.css("float")}, e = $("<div></div>").addClass("ui-effects-wrapper").css({fontSize:"100%", background:"transparent", border:"none", margin:0, padding:0}), a = {width:b.width(), height:b.height()}, d = document.activeElement; b.wrap(e); if (b[0] === d || $.contains(b[0], d)){$(d).focus()}e = b.parent(); if (b.css("position") === "static"){e.css({position:"relative"}); b.css({position:"relative"})} else{$.extend(c, {position:b.css("position"), zIndex:b.css("z-index")}); $.each(["top", "left", "bottom", "right"], function(f, g){c[g] = b.css(g); if (isNaN(parseInt(c[g], 10))){c[g] = "auto"}}); b.css({position:"relative", top:0, left:0, right:"auto", bottom:"auto"})}b.css(a); return e.css(c).show()}, removeWrapper:function(a){var b = document.activeElement; if (a.parent().is(".ui-effects-wrapper")){a.parent().replaceWith(a); if (a[0] === b || $.contains(a[0], b)){$(b).focus()}}return a}}); function _normalizeArguments(b, a, c, d){if ($.isPlainObject(b)){return b}b = {effect:b}; if (a === undefined){a = {}}if ($.isFunction(a)){d = a; c = null; a = {}}if ($.type(a) === "number" || $.fx.speeds[a]){d = c; c = a; a = {}}if ($.isFunction(c)){d = c; c = null}if (a){$.extend(b, a)}c = c || a.duration; b.duration = $.fx.off?0:typeof c === "number"?c:c in $.fx.speeds?$.fx.speeds[c]:$.fx.speeds._default; b.complete = d || a.complete; return b}function standardSpeed(a){if (!a || typeof a === "number" || $.fx.speeds[a]){return true}if (typeof a === "string" && !$.jqplot.effects.effect[a]){if (backCompat && $.jqplot.effects[a]){return false}return true}return false}$.fn.extend({jqplotEffect:function(i, j, b, h){var g = _normalizeArguments.apply(this, arguments), d = g.mode, e = g.queue, f = $.jqplot.effects.effect[g.effect], a = !f && backCompat && $.jqplot.effects[g.effect]; if ($.fx.off || !(f || a)){if (d){return this[d](g.duration, g.complete)} else{return this.each(function(){if (g.complete){g.complete.call(this)}})}}function c(m){var n = $(this), l = g.complete, o = g.mode; function k(){if ($.isFunction(l)){l.call(n[0])}if ($.isFunction(m)){m()}}if (n.is(":hidden")?o === "hide":o === "show"){k()} else{f.call(n[0], g, k)}}if (f){return e === false?this.each(c):this.queue(e || "fx", c)} else{return a.call(this, {options:g, duration:g.duration, callback:g.complete, mode:g.mode})}}}); var rvertical = /up|down|vertical/, rpositivemotion = /up|left|vertical|horizontal/; $.jqplot.effects.effect.blind = function(c, h){var d = $(this), k = ["position", "top", "bottom", "left", "right", "height", "width"], i = $.jqplot.effects.setMode(d, c.mode || "hide"), m = c.direction || "up", f = rvertical.test(m), e = f?"height":"width", j = f?"top":"left", p = rpositivemotion.test(m), g = {}, n = i === "show", b, a, l; if (d.parent().is(".ui-effects-wrapper")){$.jqplot.effects.save(d.parent(), k)} else{$.jqplot.effects.save(d, k)}d.show(); l = parseInt(d.css("top"), 10); b = $.jqplot.effects.createWrapper(d).css({overflow:"hidden"}); a = f?b[e]() + l:b[e](); g[e] = n?String(a):"0"; if (!p){d.css(f?"bottom":"right", 0).css(f?"top":"left", "").css({position:"absolute"}); g[j] = n?"0":String(a)}if (n){b.css(e, 0); if (!p){b.css(j, a)}}b.animate(g, {duration:c.duration, easing:c.easing, queue:false, complete:function(){if (i === "hide"){d.hide()}$.jqplot.effects.restore(d, k); $.jqplot.effects.removeWrapper(d); h()}})}; + diff --git a/simulation/js/jquery_files/jquery.min.js b/simulation/js/jquery_files/jquery.min.js new file mode 100644 index 0000000..6601b82 --- /dev/null +++ b/simulation/js/jquery_files/jquery.min.js @@ -0,0 +1,13 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +(function(a, b){function cu(a){return f.isWindow(a)?a:a.nodeType === 9?a.defaultView || a.parentWindow:!1}function cr(a){if (!cg[a]) + {var b = c.body, d = f("<" + a + ">").appendTo(b), e = d.css("display"); + d.remove(); if (e === "none" || e === ""){ch || (ch = c.createElement("iframe"), ch.frameBorder = ch.width = ch.height = 0), b.appendChild(ch); if (!ci || !ch.createElement)ci = (ch.contentWindow || ch.contentDocument).document, ci.write((c.compatMode === "CSS1Compat"?"<!doctype html>":"") + "<html><body>"), ci.close(); d = ci.createElement(a), ci.body.appendChild(d), e = f.css(d, "display"), b.removeChild(ch)}cg[a] = e}return cg[a]}function cq(a, b){var c = {}; f.each(cm.concat.apply([], cm.slice(0, b)), function(){c[this] = a}); return c}function cp(){cn = b}function co(){setTimeout(cp, 0); return cn = f.now()}function cf(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")} catch (b){}}function ce(){try{return new a.XMLHttpRequest} catch (b){}}function b$(a, c){a.dataFilter && (c = a.dataFilter(c, a.dataType)); var d = a.dataTypes, e = {}, g, h, i = d.length, j, k = d[0], l, m, n, o, p; for (g = 1; g < i; g++){if (g === 1)for (h in a.converters)typeof h == "string" && (e[h.toLowerCase()] = a.converters[h]); l = k, k = d[g]; if (k === "*")k = l; else if (l !== "*" && l !== k){m = l + " " + k, n = e[m] || e["* " + k]; if (!n){p = b; for (o in e){j = o.split(" "); if (j[0] === l || j[0] === "*"){p = e[j[1] + " " + k]; if (p){o = e[o], o === !0?n = p:p === !0 && (n = o); break}}}}!n && !p && f.error("No conversion from " + m.replace(" ", " to ")), n !== !0 && (c = n?n(c):p(o(c)))}}return c}function bZ(a, c, d){var e = a.contents, f = a.dataTypes, g = a.responseFields, h, i, j, k; for (i in g)i in d && (c[g[i]] = d[i]); while (f[0] === "*")f.shift(), h === b && (h = a.mimeType || c.getResponseHeader("content-type")); if (h)for (i in e)if (e[i] && e[i].test(h)){f.unshift(i); break}if (f[0]in d)j = f[0]; else{for (i in d){if (!f[0] || a.converters[i + " " + f[0]]){j = i; break}k || (k = i)}j = j || k}if (j){j !== f[0] && f.unshift(j); return d[j]}}function bY(a, b, c, d){if (f.isArray(b))f.each(b, function(b, e){c || bA.test(a)?d(a, e):bY(a + "[" + (typeof e == "object" || f.isArray(e)?b:"") + "]", e, c, d)}); else if (!c && b != null && typeof b == "object")for (var e in b)bY(a + "[" + e + "]", b[e], c, d); else d(a, b)}function bX(a, c){var d, e, g = f.ajaxSettings.flatOptions || {}; for (d in c)c[d] !== b && ((g[d]?a:e || (e = {}))[d] = c[d]); e && f.extend(!0, a, e)}function bW(a, c, d, e, f, g){f = f || c.dataTypes[0], g = g || {}, g[f] = !0; var h = a[f], i = 0, j = h?h.length:0, k = a === bP, l; for (; i < j && (k || !l); i++)l = h[i](c, d, e), typeof l == "string" && (!k || g[l]?l = b:(c.dataTypes.unshift(l), l = bW(a, c, d, e, l, g))); (k || !l) && !g["*"] && (l = bW(a, c, d, e, "*", g)); return l}function bV(a){return function(b, c){typeof b != "string" && (c = b, b = "*"); if (f.isFunction(c)){var d = b.toLowerCase().split(bL), e = 0, g = d.length, h, i, j; for (; e < g; e++)h = d[e], j = /^\+/.test(h), j && (h = h.substr(1) || "*"), i = a[h] = a[h] || [], i[j?"unshift":"push"](c)}}}function by(a, b, c){var d = b === "width"?a.offsetWidth:a.offsetHeight, e = b === "width"?bt:bu; if (d > 0){c !== "border" && f.each(e, function(){c || (d -= parseFloat(f.css(a, "padding" + this)) || 0), c === "margin"?d += parseFloat(f.css(a, c + this)) || 0:d -= parseFloat(f.css(a, "border" + this + "Width")) || 0}); return d + "px"}d = bv(a, b, b); if (d < 0 || d == null)d = a.style[b] || 0; d = parseFloat(d) || 0, c && f.each(e, function(){d += parseFloat(f.css(a, "padding" + this)) || 0, c !== "padding" && (d += parseFloat(f.css(a, "border" + this + "Width")) || 0), c === "margin" && (d += parseFloat(f.css(a, c + this)) || 0)}); return d + "px"}function bl(a, b){b.src?f.ajax({url:b.src, async:!1, dataType:"script"}):f.globalEval((b.text || b.textContent || b.innerHTML || "").replace(bd, "/*$0*/")), b.parentNode && b.parentNode.removeChild(b)}function bk(a){f.nodeName(a, "input")?bj(a):"getElementsByTagName"in a && f.grep(a.getElementsByTagName("input"), bj)}function bj(a){if (a.type === "checkbox" || a.type === "radio")a.defaultChecked = a.checked}function bi(a){return"getElementsByTagName"in a?a.getElementsByTagName("*"):"querySelectorAll"in a?a.querySelectorAll("*"):[]}function bh(a, b){var c; if (b.nodeType === 1){b.clearAttributes && b.clearAttributes(), b.mergeAttributes && b.mergeAttributes(a), c = b.nodeName.toLowerCase(); if (c === "object")b.outerHTML = a.outerHTML; else if (c !== "input" || a.type !== "checkbox" && a.type !== "radio"){if (c === "option")b.selected = a.defaultSelected; else if (c === "input" || c === "textarea")b.defaultValue = a.defaultValue} else a.checked && (b.defaultChecked = b.checked = a.checked), b.value !== a.value && (b.value = a.value); b.removeAttribute(f.expando)}}function bg(a, b){if (b.nodeType === 1 && !!f.hasData(a)){var c = f.expando, d = f.data(a), e = f.data(b, d); if (d = d[c]){var g = d.events; e = e[c] = f.extend({}, d); if (g){delete e.handle, e.events = {}; for (var h in g)for (var i = 0, j = g[h].length; i < j; i++)f.event.add(b, h + (g[h][i].namespace?".":"") + g[h][i].namespace, g[h][i], g[h][i].data)}}}}function bf(a, b){return f.nodeName(a, "table")?a.getElementsByTagName("tbody")[0] || a.appendChild(a.ownerDocument.createElement("tbody")):a}function V(a, b, c){b = b || 0; if (f.isFunction(b))return f.grep(a, function(a, d){var e = !!b.call(a, d, a); return e === c}); if (b.nodeType)return f.grep(a, function(a, d){return a === b === c}); if (typeof b == "string"){var d = f.grep(a, function(a){return a.nodeType === 1}); if (Q.test(b))return f.filter(b, d, !c); b = f.filter(b, d)}return f.grep(a, function(a, d){return f.inArray(a, b) >= 0 === c})}function U(a){return!a || !a.parentNode || a.parentNode.nodeType === 11}function M(a, b){return(a && a !== "*"?a + ".":"") + b.replace(y, "`").replace(z, "&")}function L(a){var b, c, d, e, g, h, i, j, k, l, m, n, o, p = [], q = [], r = f._data(this, "events"); if (!(a.liveFired === this || !r || !r.live || a.target.disabled || a.button && a.type === "click")){a.namespace && (n = new RegExp("(^|\\.)" + a.namespace.split(".").join("\\.(?:.*\\.)?") + "(\\.|$)")), a.liveFired = this; var s = r.live.slice(0); for (i = 0; i < s.length; i++)g = s[i], g.origType.replace(w, "") === a.type?q.push(g.selector):s.splice(i--, 1); e = f(a.target).closest(q, a.currentTarget); for (j = 0, k = e.length; j < k; j++){m = e[j]; for (i = 0; i < s.length; i++){g = s[i]; if (m.selector === g.selector && (!n || n.test(g.namespace)) && !m.elem.disabled){h = m.elem, d = null; if (g.preType === "mouseenter" || g.preType === "mouseleave")a.type = g.preType, d = f(a.relatedTarget).closest(g.selector)[0], d && f.contains(h, d) && (d = h); (!d || d !== h) && p.push({elem:h, handleObj:g, level:m.level})}}}for (j = 0, k = p.length; j < k; j++){e = p[j]; if (c && e.level > c)break; a.currentTarget = e.elem, a.data = e.handleObj.data, a.handleObj = e.handleObj, o = e.handleObj.origHandler.apply(e.elem, arguments); if (o === !1 || a.isPropagationStopped()){c = e.level, o === !1 && (b = !1); if (a.isImmediatePropagationStopped())break}}return b}}function J(a, c, d){var e = f.extend({}, d[0]); e.type = a, e.originalEvent = {}, e.liveFired = b, f.event.handle.call(c, e), e.isDefaultPrevented() && d[0].preventDefault()}function D(){return!0}function C(){return!1}function m(a, c, d){var e = c + "defer", g = c + "queue", h = c + "mark", i = f.data(a, e, b, !0); i && (d === "queue" || !f.data(a, g, b, !0)) && (d === "mark" || !f.data(a, h, b, !0)) && setTimeout(function(){!f.data(a, g, b, !0) && !f.data(a, h, b, !0) && (f.removeData(a, e, !0), i.resolve())}, 0)}function l(a){for (var b in a)if (b !== "toJSON")return!1; return!0}function k(a, c, d){if (d === b && a.nodeType === 1){var e = "data-" + c.replace(j, "-$1").toLowerCase(); d = a.getAttribute(e); if (typeof d == "string"){try{d = d === "true"?!0:d === "false"?!1:d === "null"?null:f.isNaN(d)?i.test(d)?f.parseJSON(d):d:parseFloat(d)} catch (g){}f.data(a, c, d)} else d = b}return d}var c = a.document, d = a.navigator, e = a.location, f = function(){function K(){if (!e.isReady){try{c.documentElement.doScroll("left")} catch (a){setTimeout(K, 1); return}e.ready()}}var e = function(a, b){return new e.fn.init(a, b, h)}, f = a.jQuery, g = a.$, h, i = /^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/, j = /\S/, k = /^\s+/, l = /\s+$/, m = /\d/, n = /^<(\w+)\s*\/?>(?:<\/\1>)?$/, o = /^[\],:{}\s]*$/, p = /\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g, q = /"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, r = /(?:^|:|,)(?:\s*\[)+/g, s = /(webkit)[ \/]([\w.]+)/, t = /(opera)(?:.*version)?[ \/]([\w.]+)/, u = /(msie) ([\w.]+)/, v = /(mozilla)(?:.*? rv:([\w.]+))?/, w = /-([a-z]|[0-9])/ig, x = /^-ms-/, y = function(a, b){return(b + "").toUpperCase()}, z = d.userAgent, A, B, C, D = Object.prototype.toString, E = Object.prototype.hasOwnProperty, F = Array.prototype.push, G = Array.prototype.slice, H = String.prototype.trim, I = Array.prototype.indexOf, J = {}; e.fn = e.prototype = {constructor:e, init:function(a, d, f){var g, h, j, k; if (!a)return this; if (a.nodeType){this.context = this[0] = a, this.length = 1; return this}if (a === "body" && !d && c.body){this.context = c, this[0] = c.body, this.selector = a, this.length = 1; return this}if (typeof a == "string"){a.charAt(0) !== "<" || a.charAt(a.length - 1) !== ">" || a.length < 3?g = i.exec(a):g = [null, a, null]; if (g && (g[1] || !d)){if (g[1]){d = d instanceof e?d[0]:d, k = d?d.ownerDocument || d:c, j = n.exec(a), j?e.isPlainObject(d)?(a = [c.createElement(j[1])], e.fn.attr.call(a, d, !0)):a = [k.createElement(j[1])]:(j = e.buildFragment([g[1]], [k]), a = (j.cacheable?e.clone(j.fragment):j.fragment).childNodes); return e.merge(this, a)}h = c.getElementById(g[2]); if (h && h.parentNode){if (h.id !== g[2])return f.find(a); this.length = 1, this[0] = h}this.context = c, this.selector = a; return this}return!d || d.jquery?(d || f).find(a):this.constructor(d).find(a)}if (e.isFunction(a))return f.ready(a); a.selector !== b && (this.selector = a.selector, this.context = a.context); return e.makeArray(a, this)}, selector:"", jquery:"1.6.4", length:0, size:function(){return this.length}, toArray:function(){return G.call(this, 0)}, get:function(a){return a == null?this.toArray():a < 0?this[this.length + a]:this[a]}, pushStack:function(a, b, c){var d = this.constructor(); e.isArray(a)?F.apply(d, a):e.merge(d, a), d.prevObject = this, d.context = this.context, b === "find"?d.selector = this.selector + (this.selector?" ":"") + c:b && (d.selector = this.selector + "." + b + "(" + c + ")"); return d}, each:function(a, b){return e.each(this, a, b)}, ready:function(a){e.bindReady(), B.done(a); return this}, eq:function(a){return a === - 1?this.slice(a):this.slice(a, + a + 1)}, first:function(){return this.eq(0)}, last:function(){return this.eq( - 1)}, slice:function(){return this.pushStack(G.apply(this, arguments), "slice", G.call(arguments).join(","))}, map:function(a){return this.pushStack(e.map(this, function(b, c){return a.call(b, c, b)}))}, end:function(){return this.prevObject || this.constructor(null)}, push:F, sort:[].sort, splice:[].splice}, e.fn.init.prototype = e.fn, e.extend = e.fn.extend = function(){var a, c, d, f, g, h, i = arguments[0] || {}, j = 1, k = arguments.length, l = !1; typeof i == "boolean" && (l = i, i = arguments[1] || {}, j = 2), typeof i != "object" && !e.isFunction(i) && (i = {}), k === j && (i = this, --j); for (; j < k; j++)if ((a = arguments[j]) != null)for (c in a){d = i[c], f = a[c]; if (i === f)continue; l && f && (e.isPlainObject(f) || (g = e.isArray(f)))?(g?(g = !1, h = d && e.isArray(d)?d:[]):h = d && e.isPlainObject(d)?d:{}, i[c] = e.extend(l, h, f)):f !== b && (i[c] = f)}return i}, e.extend({noConflict:function(b){a.$ === e && (a.$ = g), b && a.jQuery === e && (a.jQuery = f); return e}, isReady:!1, readyWait:1, holdReady:function(a){a?e.readyWait++:e.ready(!0)}, ready:function(a){if (a === !0 && !--e.readyWait || a !== !0 && !e.isReady){if (!c.body)return setTimeout(e.ready, 1); e.isReady = !0; if (a !== !0 && --e.readyWait > 0)return; B.resolveWith(c, [e]), e.fn.trigger && e(c).trigger("ready").unbind("ready")}}, bindReady:function(){if (!B){B = e._Deferred(); if (c.readyState === "complete")return setTimeout(e.ready, 1); if (c.addEventListener)c.addEventListener("DOMContentLoaded", C, !1), a.addEventListener("load", e.ready, !1); else if (c.attachEvent){c.attachEvent("onreadystatechange", C), a.attachEvent("onload", e.ready); var b = !1; try{b = a.frameElement == null} catch (d){}c.documentElement.doScroll && b && K()}}}, isFunction:function(a){return e.type(a) === "function"}, isArray:Array.isArray || function(a){return e.type(a) === "array"}, isWindow:function(a){return a && typeof a == "object" && "setInterval"in a}, isNaN:function(a){return a == null || !m.test(a) || isNaN(a)}, type:function(a){return a == null?String(a):J[D.call(a)] || "object"}, isPlainObject:function(a){if (!a || e.type(a) !== "object" || a.nodeType || e.isWindow(a))return!1; try{if (a.constructor && !E.call(a, "constructor") && !E.call(a.constructor.prototype, "isPrototypeOf"))return!1} catch (c){return!1}var d; for (d in a); return d === b || E.call(a, d)}, isEmptyObject:function(a){for (var b in a)return!1; return!0}, error:function(a){throw a}, parseJSON:function(b){if (typeof b != "string" || !b)return null; b = e.trim(b); if (a.JSON && a.JSON.parse)return a.JSON.parse(b); if (o.test(b.replace(p, "@").replace(q, "]").replace(r, "")))return(new Function("return " + b))(); e.error("Invalid JSON: " + b)}, parseXML:function(c){var d, f; try{a.DOMParser?(f = new DOMParser, d = f.parseFromString(c, "text/xml")):(d = new ActiveXObject("Microsoft.XMLDOM"), d.async = "false", d.loadXML(c))} catch (g){d = b}(!d || !d.documentElement || d.getElementsByTagName("parsererror").length) && e.error("Invalid XML: " + c); return d}, noop:function(){}, globalEval:function(b){b && j.test(b) && (a.execScript || function(b){a.eval.call(a, b)})(b)}, camelCase:function(a){return a.replace(x, "ms-").replace(w, y)}, nodeName:function(a, b){return a.nodeName && a.nodeName.toUpperCase() === b.toUpperCase()}, each:function(a, c, d){var f, g = 0, h = a.length, i = h === b || e.isFunction(a); if (d){if (i){for (f in a)if (c.apply(a[f], d) === !1)break} else for (; g < h; )if (c.apply(a[g++], d) === !1)break} else if (i){for (f in a)if (c.call(a[f], f, a[f]) === !1)break} else for (; g < h; )if (c.call(a[g], g, a[g++]) === !1)break; return a}, trim:H?function(a){return a == null?"":H.call(a)}:function(a){return a == null?"":(a + "").replace(k, "").replace(l, "")}, makeArray:function(a, b){var c = b || []; if (a != null){var d = e.type(a); a.length == null || d === "string" || d === "function" || d === "regexp" || e.isWindow(a)?F.call(c, a):e.merge(c, a)}return c}, inArray:function(a, b){if (!b)return - 1; if (I)return I.call(b, a); for (var c = 0, d = b.length; c < d; c++)if (b[c] === a)return c; return - 1}, merge:function(a, c){var d = a.length, e = 0; if (typeof c.length == "number")for (var f = c.length; e < f; e++)a[d++] = c[e]; else while (c[e] !== b)a[d++] = c[e++]; a.length = d; return a}, grep:function(a, b, c){var d = [], e; c = !!c; for (var f = 0, g = a.length; f < g; f++)e = !!b(a[f], f), c !== e && d.push(a[f]); return d}, map:function(a, c, d){var f, g, h = [], i = 0, j = a.length, k = a instanceof e || j !== b && typeof j == "number" && (j > 0 && a[0] && a[j - 1] || j === 0 || e.isArray(a)); if (k)for (; i < j; i++)f = c(a[i], i, d), f != null && (h[h.length] = f); else for (g in a)f = c(a[g], g, d), f != null && (h[h.length] = f); return h.concat.apply([], h)}, guid:1, proxy:function(a, c){if (typeof c == "string"){var d = a[c]; c = a, a = d}if (!e.isFunction(a))return b; var f = G.call(arguments, 2), g = function(){return a.apply(c, f.concat(G.call(arguments)))}; g.guid = a.guid = a.guid || g.guid || e.guid++; return g}, access:function(a, c, d, f, g, h){var i = a.length; if (typeof c == "object"){for (var j in c)e.access(a, j, c[j], f, g, d); return a}if (d !== b){f = !h && f && e.isFunction(d); for (var k = 0; k < i; k++)g(a[k], c, f?d.call(a[k], k, g(a[k], c)):d, h); return a}return i?g(a[0], c):b}, now:function(){return(new Date).getTime()}, uaMatch:function(a){a = a.toLowerCase(); var b = s.exec(a) || t.exec(a) || u.exec(a) || a.indexOf("compatible") < 0 && v.exec(a) || []; return{browser:b[1] || "", version:b[2] || "0"}}, sub:function(){function a(b, c){return new a.fn.init(b, c)}e.extend(!0, a, this), a.superclass = this, a.fn = a.prototype = this(), a.fn.constructor = a, a.sub = this.sub, a.fn.init = function(d, f){f && f instanceof e && !(f instanceof a) && (f = a(f)); return e.fn.init.call(this, d, f, b)}, a.fn.init.prototype = a.fn; var b = a(c); return a}, browser:{}}), e.each("Boolean Number String Function Array Date RegExp Object".split(" "), function(a, b){J["[object " + b + "]"] = b.toLowerCase()}), A = e.uaMatch(z), A.browser && (e.browser[A.browser] = !0, e.browser.version = A.version), e.browser.webkit && (e.browser.safari = !0), j.test(" ") && (k = /^[\s\xA0]+/, l = /[\s\xA0]+$/), h = e(c), c.addEventListener?C = function(){c.removeEventListener("DOMContentLoaded", C, !1), e.ready()}:c.attachEvent && (C = function(){c.readyState === "complete" && (c.detachEvent("onreadystatechange", C), e.ready())}); return e}(), g = "done fail isResolved isRejected promise then always pipe".split(" "), h = [].slice; f.extend({_Deferred:function(){var a = [], b, c, d, e = {done:function(){if (!d){var c = arguments, g, h, i, j, k; b && (k = b, b = 0); for (g = 0, h = c.length; g < h; g++)i = c[g], j = f.type(i), j === "array"?e.done.apply(e, i):j === "function" && a.push(i); k && e.resolveWith(k[0], k[1])}return this}, resolveWith:function(e, f){if (!d && !b && !c){f = f || [], c = 1; try{while (a[0])a.shift().apply(e, f)} finally{b = [e, f], c = 0}}return this}, resolve:function(){e.resolveWith(this, arguments); return this}, isResolved:function(){return!!c || !!b}, cancel:function(){d = 1, a = []; return this}}; return e}, Deferred:function(a){var b = f._Deferred(), c = f._Deferred(), d; f.extend(b, {then:function(a, c){b.done(a).fail(c); return this}, always:function(){return b.done.apply(b, arguments).fail.apply(this, arguments)}, fail:c.done, rejectWith:c.resolveWith, reject:c.resolve, isRejected:c.isResolved, pipe:function(a, c){return f.Deferred(function(d){f.each({done:[a, "resolve"], fail:[c, "reject"]}, function(a, c){var e = c[0], g = c[1], h; f.isFunction(e)?b[a](function(){h = e.apply(this, arguments), h && f.isFunction(h.promise)?h.promise().then(d.resolve, d.reject):d[g + "With"](this === b?d:this, [h])}):b[a](d[g])})}).promise()}, promise:function(a){if (a == null){if (d)return d; d = a = {}}var c = g.length; while (c--)a[g[c]] = b[g[c]]; return a}}), b.done(c.cancel).fail(b.cancel), delete b.cancel, a && a.call(b, b); return b}, when:function(a){function i(a){return function(c){b[a] = arguments.length > 1?h.call(arguments, 0):c, --e || g.resolveWith(g, h.call(b, 0))}}var b = arguments, c = 0, d = b.length, e = d, g = d <= 1 && a && f.isFunction(a.promise)?a:f.Deferred(); if (d > 1){for (; c < d; c++)b[c] && f.isFunction(b[c].promise)?b[c].promise().then(i(c), g.reject):--e; e || g.resolveWith(g, b)} else g !== a && g.resolveWith(g, d?[a]:[]); return g.promise()}}), f.support = function(){var a = c.createElement("div"), b = c.documentElement, d, e, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u; a.setAttribute("className", "t"), a.innerHTML = " <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>", d = a.getElementsByTagName("*"), e = a.getElementsByTagName("a")[0]; if (!d || !d.length || !e)return{}; g = c.createElement("select"), h = g.appendChild(c.createElement("option")), i = a.getElementsByTagName("input")[0], k = {leadingWhitespace:a.firstChild.nodeType === 3, tbody:!a.getElementsByTagName("tbody").length, htmlSerialize:!!a.getElementsByTagName("link").length, style:/top/.test(e.getAttribute("style")), hrefNormalized:e.getAttribute("href") === "/a", opacity:/^0.55$/.test(e.style.opacity), cssFloat:!!e.style.cssFloat, checkOn:i.value === "on", optSelected:h.selected, getSetAttribute:a.className !== "t", submitBubbles:!0, changeBubbles:!0, focusinBubbles:!1, deleteExpando:!0, noCloneEvent:!0, inlineBlockNeedsLayout:!1, shrinkWrapBlocks:!1, reliableMarginRight:!0}, i.checked = !0, k.noCloneChecked = i.cloneNode(!0).checked, g.disabled = !0, k.optDisabled = !h.disabled; try{delete a.test} catch (v){k.deleteExpando = !1}!a.addEventListener && a.attachEvent && a.fireEvent && (a.attachEvent("onclick", function(){k.noCloneEvent = !1}), a.cloneNode(!0).fireEvent("onclick")), i = c.createElement("input"), i.value = "t", i.setAttribute("type", "radio"), k.radioValue = i.value === "t", i.setAttribute("checked", "checked"), a.appendChild(i), l = c.createDocumentFragment(), l.appendChild(a.firstChild), k.checkClone = l.cloneNode(!0).cloneNode(!0).lastChild.checked, a.innerHTML = "", a.style.width = a.style.paddingLeft = "1px", m = c.getElementsByTagName("body")[0], o = c.createElement(m?"div":"body"), p = {visibility:"hidden", width:0, height:0, border:0, margin:0, background:"none"}, m && f.extend(p, {position:"absolute", left:"-1000px", top:"-1000px"}); for (t in p)o.style[t] = p[t]; o.appendChild(a), n = m || b, n.insertBefore(o, n.firstChild), k.appendChecked = i.checked, k.boxModel = a.offsetWidth === 2, "zoom"in a.style && (a.style.display = "inline", a.style.zoom = 1, k.inlineBlockNeedsLayout = a.offsetWidth === 2, a.style.display = "", a.innerHTML = "<div style='width:4px;'></div>", k.shrinkWrapBlocks = a.offsetWidth !== 2), a.innerHTML = "<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>", q = a.getElementsByTagName("td"), u = q[0].offsetHeight === 0, q[0].style.display = "", q[1].style.display = "none", k.reliableHiddenOffsets = u && q[0].offsetHeight === 0, a.innerHTML = "", c.defaultView && c.defaultView.getComputedStyle && (j = c.createElement("div"), j.style.width = "0", j.style.marginRight = "0", a.appendChild(j), k.reliableMarginRight = (parseInt((c.defaultView.getComputedStyle(j, null) || {marginRight:0}).marginRight, 10) || 0) === 0), o.innerHTML = "", n.removeChild(o); if (a.attachEvent)for (t in{submit:1, change:1, focusin:1})s = "on" + t, u = s in a, u || (a.setAttribute(s, "return;"), u = typeof a[s] == "function"), k[t + "Bubbles"] = u; o = l = g = h = m = j = a = i = null; return k}(), f.boxModel = f.support.boxModel; var i = /^(?:\{.*\}|\[.*\])$/, j = /([A-Z])/g; f.extend({cache:{}, uuid:0, expando:"jQuery" + (f.fn.jquery + Math.random()).replace(/\D/g, ""), noData:{embed:!0, object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000", applet:!0}, hasData:function(a){a = a.nodeType?f.cache[a[f.expando]]:a[f.expando]; return!!a && !l(a)}, data:function(a, c, d, e){if (!!f.acceptData(a)){var g, h, i = f.expando, j = typeof c == "string", k = a.nodeType, l = k?f.cache:a, m = k?a[f.expando]:a[f.expando] && f.expando; if ((!m || e && m && l[m] && !l[m][i]) && j && d === b)return; m || (k?a[f.expando] = m = ++f.uuid:m = f.expando), l[m] || (l[m] = {}, k || (l[m].toJSON = f.noop)); if (typeof c == "object" || typeof c == "function")e?l[m][i] = f.extend(l[m][i], c):l[m] = f.extend(l[m], c); g = l[m], e && (g[i] || (g[i] = {}), g = g[i]), d !== b && (g[f.camelCase(c)] = d); if (c === "events" && !g[c])return g[i] && g[i].events; j?(h = g[c], h == null && (h = g[f.camelCase(c)])):h = g; return h}}, removeData:function(a, b, c){if (!!f.acceptData(a)){var d, e = f.expando, g = a.nodeType, h = g?f.cache:a, i = g?a[f.expando]:f.expando; if (!h[i])return; if (b){d = c?h[i][e]:h[i]; if (d){d[b] || (b = f.camelCase(b)), delete d[b]; if (!l(d))return}}if (c){delete h[i][e]; if (!l(h[i]))return}var j = h[i][e]; f.support.deleteExpando || !h.setInterval?delete h[i]:h[i] = null, j?(h[i] = {}, g || (h[i].toJSON = f.noop), h[i][e] = j):g && (f.support.deleteExpando?delete a[f.expando]:a.removeAttribute?a.removeAttribute(f.expando):a[f.expando] = null)}}, _data:function(a, b, c){return f.data(a, b, c, !0)}, acceptData:function(a){if (a.nodeName){var b = f.noData[a.nodeName.toLowerCase()]; if (b)return b !== !0 && a.getAttribute("classid") === b}return!0}}), f.fn.extend({data:function(a, c){var d = null; if (typeof a == "undefined"){if (this.length){d = f.data(this[0]); if (this[0].nodeType === 1){var e = this[0].attributes, g; for (var h = 0, i = e.length; h < i; h++)g = e[h].name, g.indexOf("data-") === 0 && (g = f.camelCase(g.substring(5)), k(this[0], g, d[g]))}}return d}if (typeof a == "object")return this.each(function(){f.data(this, a)}); var j = a.split("."); j[1] = j[1]?"." + j[1]:""; if (c === b){d = this.triggerHandler("getData" + j[1] + "!", [j[0]]), d === b && this.length && (d = f.data(this[0], a), d = k(this[0], a, d)); return d === b && j[1]?this.data(j[0]):d}return this.each(function(){var b = f(this), d = [j[0], c]; b.triggerHandler("setData" + j[1] + "!", d), f.data(this, a, c), b.triggerHandler("changeData" + j[1] + "!", d)})}, removeData:function(a){return this.each(function(){f.removeData(this, a)})}}), f.extend({_mark:function(a, c){a && (c = (c || "fx") + "mark", f.data(a, c, (f.data(a, c, b, !0) || 0) + 1, !0))}, _unmark:function(a, c, d){a !== !0 && (d = c, c = a, a = !1); if (c){d = d || "fx"; var e = d + "mark", g = a?0:(f.data(c, e, b, !0) || 1) - 1; g?f.data(c, e, g, !0):(f.removeData(c, e, !0), m(c, d, "mark"))}}, queue:function(a, c, d){if (a){c = (c || "fx") + "queue"; var e = f.data(a, c, b, !0); d && (!e || f.isArray(d)?e = f.data(a, c, f.makeArray(d), !0):e.push(d)); return e || []}}, dequeue:function(a, b){b = b || "fx"; var c = f.queue(a, b), d = c.shift(), e; d === "inprogress" && (d = c.shift()), d && (b === "fx" && c.unshift("inprogress"), d.call(a, function(){f.dequeue(a, b)})), c.length || (f.removeData(a, b + "queue", !0), m(a, b, "queue"))}}), f.fn.extend({queue:function(a, c){typeof a != "string" && (c = a, a = "fx"); if (c === b)return f.queue(this[0], a); return this.each(function(){var b = f.queue(this, a, c); a === "fx" && b[0] !== "inprogress" && f.dequeue(this, a)})}, dequeue:function(a){return this.each(function(){f.dequeue(this, a)})}, delay:function(a, b){a = f.fx?f.fx.speeds[a] || a:a, b = b || "fx"; return this.queue(b, function(){var c = this; setTimeout(function(){f.dequeue(c, b)}, a)})}, clearQueue:function(a){return this.queue(a || "fx", [])}, promise:function(a, c){function m(){--h || d.resolveWith(e, [e])}typeof a != "string" && (c = a, a = b), a = a || "fx"; var d = f.Deferred(), e = this, g = e.length, h = 1, i = a + "defer", j = a + "queue", k = a + "mark", l; while (g--)if (l = f.data(e[g], i, b, !0) || (f.data(e[g], j, b, !0) || f.data(e[g], k, b, !0)) && f.data(e[g], i, f._Deferred(), !0))h++, l.done(m); m(); return d.promise()}}); var n = /[\n\t\r]/g, o = /\s+/, p = /\r/g, q = /^(?:button|input)$/i, r = /^(?:button|input|object|select|textarea)$/i, s = /^a(?:rea)?$/i, t = /^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i, u, v; f.fn.extend({attr:function(a, b){return f.access(this, a, b, !0, f.attr)}, removeAttr:function(a){return this.each(function(){f.removeAttr(this, a)})}, prop:function(a, b){return f.access(this, a, b, !0, f.prop)}, removeProp:function(a){a = f.propFix[a] || a; return this.each(function(){try{this[a] = b, delete this[a]} catch (c){}})}, addClass:function(a){var b, c, d, e, g, h, i; if (f.isFunction(a))return this.each(function(b){f(this).addClass(a.call(this, b, this.className))}); if (a && typeof a == "string"){b = a.split(o); for (c = 0, d = this.length; c < d; c++){e = this[c]; if (e.nodeType === 1)if (!e.className && b.length === 1)e.className = a; else{g = " " + e.className + " "; for (h = 0, i = b.length; h < i; h++)~g.indexOf(" " + b[h] + " ") || (g += b[h] + " "); e.className = f.trim(g)}}}return this}, removeClass:function(a){var c, d, e, g, h, i, j; if (f.isFunction(a))return this.each(function(b){f(this).removeClass(a.call(this, b, this.className))}); if (a && typeof a == "string" || a === b){c = (a || "").split(o); for (d = 0, e = this.length; d < e; d++){g = this[d]; if (g.nodeType === 1 && g.className)if (a){h = (" " + g.className + " ").replace(n, " "); for (i = 0, j = c.length; i < j; i++)h = h.replace(" " + c[i] + " ", " "); g.className = f.trim(h)} else g.className = ""}}return this}, toggleClass:function(a, b){var c = typeof a, d = typeof b == "boolean"; if (f.isFunction(a))return this.each(function(c){f(this).toggleClass(a.call(this, c, this.className, b), b)}); return this.each(function(){if (c === "string"){var e, g = 0, h = f(this), i = b, j = a.split(o); while (e = j[g++])i = d?i:!h.hasClass(e), h[i?"addClass":"removeClass"](e)} else if (c === "undefined" || c === "boolean")this.className && f._data(this, "__className__", this.className), this.className = this.className || a === !1?"":f._data(this, "__className__") || ""})}, hasClass:function(a){var b = " " + a + " "; for (var c = 0, d = this.length; c < d; c++)if (this[c].nodeType === 1 && (" " + this[c].className + " ").replace(n, " ").indexOf(b) > - 1)return!0; return!1}, val:function(a){var c, d, e = this[0]; if (!arguments.length){if (e){c = f.valHooks[e.nodeName.toLowerCase()] || f.valHooks[e.type]; if (c && "get"in c && (d = c.get(e, "value")) !== b)return d; d = e.value; return typeof d == "string"?d.replace(p, ""):d == null?"":d}return b}var g = f.isFunction(a); return this.each(function(d){var e = f(this), h; if (this.nodeType === 1){g?h = a.call(this, d, e.val()):h = a, h == null?h = "":typeof h == "number"?h += "":f.isArray(h) && (h = f.map(h, function(a){return a == null?"":a + ""})), c = f.valHooks[this.nodeName.toLowerCase()] || f.valHooks[this.type]; if (!c || !("set"in c) || c.set(this, h, "value") === b)this.value = h}})}}), f.extend({valHooks:{option:{get:function(a){var b = a.attributes.value; return!b || b.specified?a.value:a.text}}, select:{get:function(a){var b, c = a.selectedIndex, d = [], e = a.options, g = a.type === "select-one"; if (c < 0)return null; for (var h = g?c:0, i = g?c + 1:e.length; h < i; h++){var j = e[h]; if (j.selected && (f.support.optDisabled?!j.disabled:j.getAttribute("disabled") === null) && (!j.parentNode.disabled || !f.nodeName(j.parentNode, "optgroup"))){b = f(j).val(); if (g)return b; d.push(b)}}if (g && !d.length && e.length)return f(e[c]).val(); return d}, set:function(a, b){var c = f.makeArray(b); f(a).find("option").each(function(){this.selected = f.inArray(f(this).val(), c) >= 0}), c.length || (a.selectedIndex = - 1); return c}}}, attrFn:{val:!0, css:!0, html:!0, text:!0, data:!0, width:!0, height:!0, offset:!0}, attrFix:{tabindex:"tabIndex"}, attr:function(a, c, d, e){var g = a.nodeType; if (!a || g === 3 || g === 8 || g === 2)return b; if (e && c in f.attrFn)return f(a)[c](d); if (!("getAttribute"in a))return f.prop(a, c, d); var h, i, j = g !== 1 || !f.isXMLDoc(a); j && (c = f.attrFix[c] || c, i = f.attrHooks[c], i || (t.test(c)?i = v:u && (i = u))); if (d !== b){if (d === null){f.removeAttr(a, c); return b}if (i && "set"in i && j && (h = i.set(a, d, c)) !== b)return h; a.setAttribute(c, "" + d); return d}if (i && "get"in i && j && (h = i.get(a, c)) !== null)return h; h = a.getAttribute(c); return h === null?b:h}, removeAttr:function(a, b){var c; a.nodeType === 1 && (b = f.attrFix[b] || b, f.attr(a, b, ""), a.removeAttribute(b), t.test(b) && (c = f.propFix[b] || b)in a && (a[c] = !1))}, attrHooks:{type:{set:function(a, b){if (q.test(a.nodeName) && a.parentNode)f.error("type property can't be changed"); else if (!f.support.radioValue && b === "radio" && f.nodeName(a, "input")){var c = a.value; a.setAttribute("type", b), c && (a.value = c); return b}}}, value:{get:function(a, b){if (u && f.nodeName(a, "button"))return u.get(a, b); return b in a?a.value:null}, set:function(a, b, c){if (u && f.nodeName(a, "button"))return u.set(a, b, c); a.value = b}}}, propFix:{tabindex:"tabIndex", readonly:"readOnly", "for":"htmlFor", "class":"className", maxlength:"maxLength", cellspacing:"cellSpacing", cellpadding:"cellPadding", rowspan:"rowSpan", colspan:"colSpan", usemap:"useMap", frameborder:"frameBorder", contenteditable:"contentEditable"}, prop:function(a, c, d){var e = a.nodeType; if (!a || e === 3 || e === 8 || e === 2)return b; var g, h, i = e !== 1 || !f.isXMLDoc(a); i && (c = f.propFix[c] || c, h = f.propHooks[c]); return d !== b?h && "set"in h && (g = h.set(a, d, c)) !== b?g:a[c] = d:h && "get"in h && (g = h.get(a, c)) !== null?g:a[c]}, propHooks:{tabIndex:{get:function(a){var c = a.getAttributeNode("tabindex"); return c && c.specified?parseInt(c.value, 10):r.test(a.nodeName) || s.test(a.nodeName) && a.href?0:b}}}}), f.attrHooks.tabIndex = f.propHooks.tabIndex, v = {get:function(a, c){var d; return f.prop(a, c) === !0 || (d = a.getAttributeNode(c)) && d.nodeValue !== !1?c.toLowerCase():b}, set:function(a, b, c){var d; b === !1?f.removeAttr(a, c):(d = f.propFix[c] || c, d in a && (a[d] = !0), a.setAttribute(c, c.toLowerCase())); return c}}, f.support.getSetAttribute || (u = f.valHooks.button = {get:function(a, c){var d; d = a.getAttributeNode(c); return d && d.nodeValue !== ""?d.nodeValue:b}, set:function(a, b, d){var e = a.getAttributeNode(d); e || (e = c.createAttribute(d), a.setAttributeNode(e)); return e.nodeValue = b + ""}}, f.each(["width", "height"], function(a, b){f.attrHooks[b] = f.extend(f.attrHooks[b], {set:function(a, c){if (c === ""){a.setAttribute(b, "auto"); return c}}})})), f.support.hrefNormalized || f.each(["href", "src", "width", "height"], function(a, c){f.attrHooks[c] = f.extend(f.attrHooks[c], {get:function(a){var d = a.getAttribute(c, 2); return d === null?b:d}})}), f.support.style || (f.attrHooks.style = {get:function(a){return a.style.cssText.toLowerCase() || b}, set:function(a, b){return a.style.cssText = "" + b}}), f.support.optSelected || (f.propHooks.selected = f.extend(f.propHooks.selected, {get:function(a){var b = a.parentNode; b && (b.selectedIndex, b.parentNode && b.parentNode.selectedIndex); return null}})), f.support.checkOn || f.each(["radio", "checkbox"], function(){f.valHooks[this] = {get:function(a){return a.getAttribute("value") === null?"on":a.value}}}), f.each(["radio", "checkbox"], function(){f.valHooks[this] = f.extend(f.valHooks[this], {set:function(a, b){if (f.isArray(b))return a.checked = f.inArray(f(a).val(), b) >= 0}})}); var w = /\.(.*)$/, x = /^(?:textarea|input|select)$/i, y = /\./g, z = / /g, A = /[^\w\s.|`]/g, B = function(a){return a.replace(A, "\\$&")}; f.event = {add:function(a, c, d, e){if (a.nodeType !== 3 && a.nodeType !== 8){if (d === !1)d = C; else if (!d)return; var g, h; d.handler && (g = d, d = g.handler), d.guid || (d.guid = f.guid++); var i = f._data(a); if (!i)return; var j = i.events, k = i.handle; j || (i.events = j = {}), k || (i.handle = k = function(a){return typeof f != "undefined" && (!a || f.event.triggered !== a.type)?f.event.handle.apply(k.elem, arguments):b}), k.elem = a, c = c.split(" "); var l, m = 0, n; while (l = c[m++]){h = g?f.extend({}, g):{handler:d, data:e}, l.indexOf(".") > - 1?(n = l.split("."), l = n.shift(), h.namespace = n.slice(0).sort().join(".")):(n = [], h.namespace = ""), h.type = l, h.guid || (h.guid = d.guid); var o = j[l], p = f.event.special[l] || {}; if (!o){o = j[l] = []; if (!p.setup || p.setup.call(a, e, n, k) === !1)a.addEventListener?a.addEventListener(l, k, !1):a.attachEvent && a.attachEvent("on" + l, k)}p.add && (p.add.call(a, h), h.handler.guid || (h.handler.guid = d.guid)), o.push(h), f.event.global[l] = !0}a = null}}, global:{}, remove:function(a, c, d, e){if (a.nodeType !== 3 && a.nodeType !== 8){d === !1 && (d = C); var g, h, i, j, k = 0, l, m, n, o, p, q, r, s = f.hasData(a) && f._data(a), t = s && s.events; if (!s || !t)return; c && c.type && (d = c.handler, c = c.type); if (!c || typeof c == "string" && c.charAt(0) === "."){c = c || ""; for (h in t)f.event.remove(a, h + c); return}c = c.split(" "); while (h = c[k++]){r = h, q = null, l = h.indexOf(".") < 0, m = [], l || (m = h.split("."), h = m.shift(), n = new RegExp("(^|\\.)" + f.map(m.slice(0).sort(), B).join("\\.(?:.*\\.)?") + "(\\.|$)")), p = t[h]; if (!p)continue; if (!d){for (j = 0; j < p.length; j++){q = p[j]; if (l || n.test(q.namespace))f.event.remove(a, r, q.handler, j), p.splice(j--, 1)}continue}o = f.event.special[h] || {}; for (j = e || 0; j < p.length; j++){q = p[j]; if (d.guid === q.guid){if (l || n.test(q.namespace))e == null && p.splice(j--, 1), o.remove && o.remove.call(a, q); if (e != null)break}}if (p.length === 0 || e != null && p.length === 1)(!o.teardown || o.teardown.call(a, m) === !1) && f.removeEvent(a, h, s.handle), g = null, delete + t[h]}if (f.isEmptyObject(t)){var u = s.handle; u && (u.elem = null), delete s.events, delete s.handle, f.isEmptyObject(s) && f.removeData(a, b, !0)}}}, customEvent:{getData:!0, setData:!0, changeData:!0}, trigger:function(c, d, e, g){var h = c.type || c, i = [], j; h.indexOf("!") >= 0 && (h = h.slice(0, - 1), j = !0), h.indexOf(".") >= 0 && (i = h.split("."), h = i.shift(), i.sort()); if (!!e && !f.event.customEvent[h] || !!f.event.global[h]){c = typeof c == "object"?c[f.expando]?c:new f.Event(h, c):new f.Event(h), c.type = h, c.exclusive = j, c.namespace = i.join("."), c.namespace_re = new RegExp("(^|\\.)" + i.join("\\.(?:.*\\.)?") + "(\\.|$)"); if (g || !e)c.preventDefault(), c.stopPropagation(); if (!e){f.each(f.cache, function(){var a = f.expando, b = this[a]; b && b.events && b.events[h] && f.event.trigger(c, d, b.handle.elem)}); return}if (e.nodeType === 3 || e.nodeType === 8)return; c.result = b, c.target = e, d = d != null?f.makeArray(d):[], d.unshift(c); var k = e, l = h.indexOf(":") < 0?"on" + h:""; do{var m = f._data(k, "handle"); c.currentTarget = k, m && m.apply(k, d), l && f.acceptData(k) && k[l] && k[l].apply(k, d) === !1 && (c.result = !1, c.preventDefault()), k = k.parentNode || k.ownerDocument || k === c.target.ownerDocument && a}while (k && !c.isPropagationStopped()); if (!c.isDefaultPrevented()){var n, o = f.event.special[h] || {}; if ((!o._default || o._default.call(e.ownerDocument, c) === !1) && (h !== "click" || !f.nodeName(e, "a")) && f.acceptData(e)){try{l && e[h] && (n = e[l], n && (e[l] = null), f.event.triggered = h, e[h]())} catch (p){}n && (e[l] = n), f.event.triggered = b}}return c.result}}, handle:function(c){c = f.event.fix(c || a.event); var d = ((f._data(this, "events") || {})[c.type] || []).slice(0), e = !c.exclusive && !c.namespace, g = Array.prototype.slice.call(arguments, 0); g[0] = c, c.currentTarget = this; for (var h = 0, i = d.length; h < i; h++){var j = d[h]; if (e || c.namespace_re.test(j.namespace)){c.handler = j.handler, c.data = j.data, c.handleObj = j; var k = j.handler.apply(this, g); k !== b && (c.result = k, k === !1 && (c.preventDefault(), c.stopPropagation())); if (c.isImmediatePropagationStopped())break}}return c.result}, props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "), fix:function(a){if (a[f.expando])return a; var d = a; a = f.Event(d); for (var e = this.props.length, g; e; )g = this.props[--e], a[g] = d[g]; a.target || (a.target = a.srcElement || c), a.target.nodeType === 3 && (a.target = a.target.parentNode), !a.relatedTarget && a.fromElement && (a.relatedTarget = a.fromElement === a.target?a.toElement:a.fromElement); if (a.pageX == null && a.clientX != null){var h = a.target.ownerDocument || c, i = h.documentElement, j = h.body; a.pageX = a.clientX + (i && i.scrollLeft || j && j.scrollLeft || 0) - (i && i.clientLeft || j && j.clientLeft || 0), a.pageY = a.clientY + (i && i.scrollTop || j && j.scrollTop || 0) - (i && i.clientTop || j && j.clientTop || 0)}a.which == null && (a.charCode != null || a.keyCode != null) && (a.which = a.charCode != null?a.charCode:a.keyCode), !a.metaKey && a.ctrlKey && (a.metaKey = a.ctrlKey), !a.which && a.button !== b && (a.which = a.button & 1?1:a.button & 2?3:a.button & 4?2:0); return a}, guid:1e8, proxy:f.proxy, special:{ready:{setup:f.bindReady, teardown:f.noop}, live:{add:function(a){f.event.add(this, M(a.origType, a.selector), f.extend({}, a, {handler:L, guid:a.handler.guid}))}, remove:function(a){f.event.remove(this, M(a.origType, a.selector), a)}}, beforeunload:{setup:function(a, b, c){f.isWindow(this) && (this.onbeforeunload = c)}, teardown:function(a, b){this.onbeforeunload === b && (this.onbeforeunload = null)}}}}, f.removeEvent = c.removeEventListener?function(a, b, c){a.removeEventListener && a.removeEventListener(b, c, !1)}:function(a, b, c){a.detachEvent && a.detachEvent("on" + b, c)}, f.Event = function(a, b){if (!this.preventDefault)return new f.Event(a, b); a && a.type?(this.originalEvent = a, this.type = a.type, this.isDefaultPrevented = a.defaultPrevented || a.returnValue === !1 || a.getPreventDefault && a.getPreventDefault()?D:C):this.type = a, b && f.extend(this, b), this.timeStamp = f.now(), this[f.expando] = !0}, f.Event.prototype = {preventDefault:function(){this.isDefaultPrevented = D; var a = this.originalEvent; !a || (a.preventDefault?a.preventDefault():a.returnValue = !1)}, stopPropagation:function(){this.isPropagationStopped = D; var a = this.originalEvent; !a || (a.stopPropagation && a.stopPropagation(), a.cancelBubble = !0)}, stopImmediatePropagation:function(){this.isImmediatePropagationStopped = D, this.stopPropagation()}, isDefaultPrevented:C, isPropagationStopped:C, isImmediatePropagationStopped:C}; var E = function(a){var b = a.relatedTarget, c = !1, d = a.type; a.type = a.data, b !== this && (b && (c = f.contains(this, b)), c || (f.event.handle.apply(this, arguments), a.type = d))}, F = function(a){a.type = a.data, f.event.handle.apply(this, arguments)}; f.each({mouseenter:"mouseover", mouseleave:"mouseout"}, function(a, b){f.event.special[a] = {setup:function(c){f.event.add(this, b, c && c.selector?F:E, a)}, teardown:function(a){f.event.remove(this, b, a && a.selector?F:E)}}}), f.support.submitBubbles || (f.event.special.submit = {setup:function(a, b){if (!f.nodeName(this, "form"))f.event.add(this, "click.specialSubmit", function(a){var b = a.target, c = f.nodeName(b, "input") || f.nodeName(b, "button")?b.type:""; (c === "submit" || c === "image") && f(b).closest("form").length && J("submit", this, arguments)}), f.event.add(this, "keypress.specialSubmit", function(a){var b = a.target, c = f.nodeName(b, "input") || f.nodeName(b, "button")?b.type:""; (c === "text" || c === "password") && f(b).closest("form").length && a.keyCode === 13 && J("submit", this, arguments)}); else return!1}, teardown:function(a){f.event.remove(this, ".specialSubmit")}}); if (!f.support.changeBubbles){var G, H = function(a){var b = f.nodeName(a, "input")?a.type:"", c = a.value; b === "radio" || b === "checkbox"?c = a.checked:b === "select-multiple"?c = a.selectedIndex > - 1?f.map(a.options, function(a){return a.selected}).join("-"):"":f.nodeName(a, "select") && (c = a.selectedIndex); return c}, I = function(c){var d = c.target, e, g; if (!!x.test(d.nodeName) && !d.readOnly){e = f._data(d, "_change_data"), g = H(d), (c.type !== "focusout" || d.type !== "radio") && f._data(d, "_change_data", g); if (e === b || g === e)return; if (e != null || g)c.type = "change", c.liveFired = b, f.event.trigger(c, arguments[1], d)}}; f.event.special.change = {filters:{focusout:I, beforedeactivate:I, click:function(a){var b = a.target, c = f.nodeName(b, "input")?b.type:""; (c === "radio" || c === "checkbox" || f.nodeName(b, "select")) && I.call(this, a)}, keydown:function(a){var b = a.target, c = f.nodeName(b, "input")?b.type:""; (a.keyCode === 13 && !f.nodeName(b, "textarea") || a.keyCode === 32 && (c === "checkbox" || c === "radio") || c === "select-multiple") && I.call(this, a)}, beforeactivate:function(a){var b = a.target; f._data(b, "_change_data", H(b))}}, setup:function(a, b){if (this.type === "file")return!1; for (var c in G)f.event.add(this, c + ".specialChange", G[c]); return x.test(this.nodeName)}, teardown:function(a){f.event.remove(this, ".specialChange"); return x.test(this.nodeName)}}, G = f.event.special.change.filters, G.focus = G.beforeactivate}f.support.focusinBubbles || f.each({focus:"focusin", blur:"focusout"}, function(a, b){function e(a){var c = f.event.fix(a); c.type = b, c.originalEvent = {}, f.event.trigger(c, null, c.target), c.isDefaultPrevented() && a.preventDefault()}var d = 0; f.event.special[b] = {setup:function(){d++ === 0 && c.addEventListener(a, e, !0)}, teardown:function(){--d === 0 && c.removeEventListener(a, e, !0)}}}), f.each(["bind", "one"], function(a, c){f.fn[c] = function(a, d, e){var g; if (typeof a == "object"){for (var h in a)this[c](h, d, a[h], e); return this}if (arguments.length === 2 || d === !1)e = d, d = b; c === "one"?(g = function(a){f(this).unbind(a, g); return e.apply(this, arguments)}, g.guid = e.guid || f.guid++):g = e; if (a === "unload" && c !== "one")this.one(a, d, e); else for (var i = 0, j = this.length; i < j; i++)f.event.add(this[i], a, g, d); return this}}), f.fn.extend({unbind:function(a, b){if (typeof a == "object" && !a.preventDefault)for (var c in a)this.unbind(c, a[c]); else for (var d = 0, e = this.length; d < e; d++)f.event.remove(this[d], a, b); return this}, delegate:function(a, b, c, d){return this.live(b, c, d, a)}, undelegate:function(a, b, c){return arguments.length === 0?this.unbind("live"):this.die(b, null, c, a)}, trigger:function(a, b){return this.each(function(){f.event.trigger(a, b, this)})}, triggerHandler:function(a, b){if (this[0])return f.event.trigger(a, b, this[0], !0)}, toggle:function(a){var b = arguments, c = a.guid || f.guid++, d = 0, e = function(c){var e = (f.data(this, "lastToggle" + a.guid) || 0) % d; f.data(this, "lastToggle" + a.guid, e + 1), c.preventDefault(); return b[e].apply(this, arguments) || !1}; e.guid = c; while (d < b.length)b[d++].guid = c; return this.click(e)}, hover:function(a, b){return this.mouseenter(a).mouseleave(b || a)}}); var K = {focus:"focusin", blur:"focusout", mouseenter:"mouseover", mouseleave:"mouseout"}; f.each(["live", "die"], function(a, c){f.fn[c] = function(a, d, e, g){var h, i = 0, j, k, l, m = g || this.selector, n = g?this:f(this.context); if (typeof a == "object" && !a.preventDefault){for (var o in a)n[c](o, d, a[o], m); return this}if (c === "die" && !a && g && g.charAt(0) === "."){n.unbind(g); return this}if (d === !1 || f.isFunction(d))e = d || C, d = b; a = (a || "").split(" "); while ((h = a[i++]) != null){j = w.exec(h), k = "", j && (k = j[0], h = h.replace(w, "")); if (h === "hover"){a.push("mouseenter" + k, "mouseleave" + k); continue}l = h, K[h]?(a.push(K[h] + k), h = h + k):h = (K[h] || h) + k; if (c === "live")for (var p = 0, q = n.length; p < q; p++)f.event.add(n[p], "live." + M(h, m), {data:d, selector:m, handler:e, origType:h, origHandler:e, preType:l}); else n.unbind("live." + M(h, m), e)}return this}}), f.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "), function(a, b){f.fn[b] = function(a, c){c == null && (c = a, a = null); return arguments.length > 0?this.bind(b, a, c):this.trigger(b)}, f.attrFn && (f.attrFn[b] = !0)}), function(){function u(a, b, c, d, e, f){for (var g = 0, h = d.length; g < h; g++){var i = d[g]; if (i){var j = !1; i = i[a]; while (i){if (i.sizcache === c){j = d[i.sizset]; break}if (i.nodeType === 1){f || (i.sizcache = c, i.sizset = g); if (typeof b != "string"){if (i === b){j = !0; break}} else if (k.filter(b, [i]).length > 0){j = i; break}}i = i[a]}d[g] = j}}}function t(a, b, c, d, e, f){for (var g = 0, h = d.length; g < h; g++){var i = d[g]; if (i){var j = !1; i = i[a]; while (i){if (i.sizcache === c){j = d[i.sizset]; break}i.nodeType === 1 && !f && (i.sizcache = c, i.sizset = g); if (i.nodeName.toLowerCase() === b){j = i; break}i = i[a]}d[g] = j}}}var a = /((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g, d = 0, e = Object.prototype.toString, g = !1, h = !0, i = /\\/g, j = /\W/; [0, 0].sort(function(){h = !1; return 0}); var k = function(b, d, f, g){f = f || [], d = d || c; var h = d; if (d.nodeType !== 1 && d.nodeType !== 9)return[]; if (!b || typeof b != "string")return f; var i, j, n, o, q, r, s, t, u = !0, w = k.isXML(d), x = [], y = b; do{a.exec(""), i = a.exec(y); if (i){y = i[3], x.push(i[1]); if (i[2]){o = i[3]; break}}}while (i); if (x.length > 1 && m.exec(b))if (x.length === 2 && l.relative[x[0]])j = v(x[0] + x[1], d); else{j = l.relative[x[0]]?[d]:k(x.shift(), d); while (x.length)b = x.shift(), l.relative[b] && (b += x.shift()), j = v(b, j)} else{!g && x.length > 1 && d.nodeType === 9 && !w && l.match.ID.test(x[0]) && !l.match.ID.test(x[x.length - 1]) && (q = k.find(x.shift(), d, w), d = q.expr?k.filter(q.expr, q.set)[0]:q.set[0]); if (d){q = g?{expr:x.pop(), set:p(g)}:k.find(x.pop(), x.length === 1 && (x[0] === "~" || x[0] === "+") && d.parentNode?d.parentNode:d, w), j = q.expr?k.filter(q.expr, q.set):q.set, x.length > 0?n = p(j):u = !1; while (x.length)r = x.pop(), s = r, l.relative[r]?s = x.pop():r = "", s == null && (s = d), l.relative[r](n, s, w)} else n = x = []}n || (n = j), n || k.error(r || b); if (e.call(n) === "[object Array]")if (!u)f.push.apply(f, n); else if (d && d.nodeType === 1)for (t = 0; n[t] != null; t++)n[t] && (n[t] === !0 || n[t].nodeType === 1 && k.contains(d, n[t])) && f.push(j[t]); else for (t = 0; n[t] != null; t++)n[t] && n[t].nodeType === 1 && f.push(j[t]); else p(n, f); o && (k(o, h, f, g), k.uniqueSort(f)); return f}; k.uniqueSort = function(a){if (r){g = h, a.sort(r); if (g)for (var b = 1; b < a.length; b++)a[b] === a[b - 1] && a.splice(b--, 1)}return a}, k.matches = function(a, b){return k(a, null, null, b)}, k.matchesSelector = function(a, b){return k(b, null, null, [a]).length > 0}, k.find = function(a, b, c){var d; if (!a)return[]; for (var e = 0, f = l.order.length; e < f; e++){var g, h = l.order[e]; if (g = l.leftMatch[h].exec(a)){var j = g[1]; g.splice(1, 1); if (j.substr(j.length - 1) !== "\\"){g[1] = (g[1] || "").replace(i, ""), d = l.find[h](g, b, c); if (d != null){a = a.replace(l.match[h], ""); break}}}}d || (d = typeof b.getElementsByTagName != "undefined"?b.getElementsByTagName("*"):[]); return{set:d, expr:a}}, k.filter = function(a, c, d, e){var f, g, h = a, i = [], j = c, m = c && c[0] && k.isXML(c[0]); while (a && c.length){for (var n in l.filter)if ((f = l.leftMatch[n].exec(a)) != null && f[2]){var o, p, q = l.filter[n], r = f[1]; g = !1, f.splice(1, 1); if (r.substr(r.length - 1) === "\\")continue; j === i && (i = []); if (l.preFilter[n]){f = l.preFilter[n](f, j, d, i, e, m); if (!f)g = o = !0; else if (f === !0)continue}if (f)for (var s = 0; (p = j[s]) != null; s++)if (p){o = q(p, f, s, j); var t = e ^ !!o; d && o != null?t?g = !0:j[s] = !1:t && (i.push(p), g = !0)}if (o !== b){d || (j = i), a = a.replace(l.match[n], ""); if (!g)return[]; break}}if (a === h)if (g == null)k.error(a); else break; h = a}return j}, k.error = function(a){throw"Syntax error, unrecognized expression: " + a}; var l = k.selectors = {order:["ID", "NAME", "TAG"], match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/, CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/, NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/, ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/, TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/, CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/, POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/, PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/}, leftMatch:{}, attrMap:{"class":"className", "for":"htmlFor"}, attrHandle:{href:function(a){return a.getAttribute("href")}, type:function(a){return a.getAttribute("type")}}, relative:{"+":function(a, b){var c = typeof b == "string", d = c && !j.test(b), e = c && !d; d && (b = b.toLowerCase()); for (var f = 0, g = a.length, h; f < g; f++)if (h = a[f]){while ((h = h.previousSibling) && h.nodeType !== 1); a[f] = e || h && h.nodeName.toLowerCase() === b?h || !1:h === b}e && k.filter(b, a, !0)}, ">":function(a, b){var c, d = typeof b == "string", e = 0, f = a.length; if (d && !j.test(b)){b = b.toLowerCase(); for (; e < f; e++){c = a[e]; if (c){var g = c.parentNode; a[e] = g.nodeName.toLowerCase() === b?g:!1}}} else{for (; e < f; e++)c = a[e], c && (a[e] = d?c.parentNode:c.parentNode === b); d && k.filter(b, a, !0)}}, "":function(a, b, c){var e, f = d++, g = u; typeof b == "string" && !j.test(b) && (b = b.toLowerCase(), e = b, g = t), g("parentNode", b, f, a, e, c)}, "~":function(a, b, c){var e, f = d++, g = u; typeof b == "string" && !j.test(b) && (b = b.toLowerCase(), e = b, g = t), g("previousSibling", b, f, a, e, c)}}, find:{ID:function(a, b, c){if (typeof b.getElementById != "undefined" && !c){var d = b.getElementById(a[1]); return d && d.parentNode?[d]:[]}}, NAME:function(a, b){if (typeof b.getElementsByName != "undefined"){var c = [], d = b.getElementsByName(a[1]); for (var e = 0, f = d.length; e < f; e++)d[e].getAttribute("name") === a[1] && c.push(d[e]); return c.length === 0?null:c}}, TAG:function(a, b){if (typeof b.getElementsByTagName != "undefined")return b.getElementsByTagName(a[1])}}, preFilter:{CLASS:function(a, b, c, d, e, f){a = " " + a[1].replace(i, "") + " "; if (f)return a; for (var g = 0, h; (h = b[g]) != null; g++)h && (e ^ (h.className && (" " + h.className + " ").replace(/[\t\n\r]/g, " ").indexOf(a) >= 0)?c || d.push(h):c && (b[g] = !1)); return!1}, ID:function(a){return a[1].replace(i, "")}, TAG:function(a, b){return a[1].replace(i, "").toLowerCase()}, CHILD:function(a){if (a[1] === "nth"){a[2] || k.error(a[0]), a[2] = a[2].replace(/^\+|\s*/g, ""); var b = /(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2] === "even" && "2n" || a[2] === "odd" && "2n+1" || !/\D/.test(a[2]) && "0n+" + a[2] || a[2]); a[2] = b[1] + (b[2] || 1) - 0, a[3] = b[3] - 0} else a[2] && k.error(a[0]); a[0] = d++; return a}, ATTR:function(a, b, c, d, e, f){var g = a[1] = a[1].replace(i, ""); !f && l.attrMap[g] && (a[1] = l.attrMap[g]), a[4] = (a[4] || a[5] || "").replace(i, ""), a[2] === "~=" && (a[4] = " " + a[4] + " "); return a}, PSEUDO:function(b, c, d, e, f){if (b[1] === "not")if ((a.exec(b[3]) || "").length > 1 || /^\w/.test(b[3]))b[3] = k(b[3], null, null, c); else{var g = k.filter(b[3], c, d, !0 ^ f); d || e.push.apply(e, g); return!1} else if (l.match.POS.test(b[0]) || l.match.CHILD.test(b[0]))return!0; return b}, POS:function(a){a.unshift(!0); return a}}, filters:{enabled:function(a){return a.disabled === !1 && a.type !== "hidden"}, disabled:function(a){return a.disabled === !0}, checked:function(a){return a.checked === !0}, selected:function(a){a.parentNode && a.parentNode.selectedIndex; return a.selected === !0}, parent:function(a){return!!a.firstChild}, empty:function(a){return!a.firstChild}, has:function(a, b, c){return!!k(c[3], a).length}, header:function(a){return/h\d/i.test(a.nodeName)}, text:function(a){var b = a.getAttribute("type"), c = a.type; return a.nodeName.toLowerCase() === "input" && "text" === c && (b === c || b === null)}, radio:function(a){return a.nodeName.toLowerCase() === "input" && "radio" === a.type}, checkbox:function(a){return a.nodeName.toLowerCase() === "input" && "checkbox" === a.type}, file:function(a){return a.nodeName.toLowerCase() === "input" && "file" === a.type}, password:function(a){return a.nodeName.toLowerCase() === "input" && "password" === a.type}, submit:function(a){var b = a.nodeName.toLowerCase(); return(b === "input" || b === "button") && "submit" === a.type}, image:function(a){return a.nodeName.toLowerCase() === "input" && "image" === a.type}, reset:function(a){var b = a.nodeName.toLowerCase(); return(b === "input" || b === "button") && "reset" === a.type}, button:function(a){var b = a.nodeName.toLowerCase(); return b === "input" && "button" === a.type || b === "button"}, input:function(a){return/input|select|textarea|button/i.test(a.nodeName)}, focus:function(a){return a === a.ownerDocument.activeElement}}, setFilters:{first:function(a, b){return b === 0}, last:function(a, b, c, d){return b === d.length - 1}, even:function(a, b){return b % 2 === 0}, odd:function(a, b){return b % 2 === 1}, lt:function(a, b, c){return b < c[3] - 0}, gt:function(a, b, c){return b > c[3] - 0}, nth:function(a, b, c){return c[3] - 0 === b}, eq:function(a, b, c){return c[3] - 0 === b}}, filter:{PSEUDO:function(a, b, c, d){var e = b[1], f = l.filters[e]; if (f)return f(a, c, b, d); if (e === "contains")return(a.textContent || a.innerText || k.getText([a]) || "").indexOf(b[3]) >= 0; if (e === "not"){var g = b[3]; for (var h = 0, i = g.length; h < i; h++)if (g[h] === a)return!1; return!0}k.error(e)}, CHILD:function(a, b){var c = b[1], d = a; switch (c){case"only":case"first":while (d = d.previousSibling)if (d.nodeType === 1)return!1; if (c === "first")return!0; d = a; case"last":while (d = d.nextSibling)if (d.nodeType === 1)return!1; return!0; case"nth":var e = b[2], f = b[3]; if (e === 1 && f === 0)return!0; var g = b[0], h = a.parentNode; if (h && (h.sizcache !== g || !a.nodeIndex)){var i = 0; for (d = h.firstChild; d; d = d.nextSibling)d.nodeType === 1 && (d.nodeIndex = ++i); h.sizcache = g}var j = a.nodeIndex - f; return e === 0?j === 0:j % e === 0 && j / e >= 0}}, ID:function(a, b){return a.nodeType === 1 && a.getAttribute("id") === b}, TAG:function(a, b){return b === "*" && a.nodeType === 1 || a.nodeName.toLowerCase() === b}, CLASS:function(a, b){return(" " + (a.className || a.getAttribute("class")) + " ").indexOf(b) > - 1}, ATTR:function(a, b){var c = b[1], d = l.attrHandle[c]?l.attrHandle[c](a):a[c] != null?a[c]:a.getAttribute(c), e = d + "", f = b[2], g = b[4]; return d == null?f === "!=":f === "="?e === g:f === "*="?e.indexOf(g) >= 0:f === "~="?(" " + e + " ").indexOf(g) >= 0:g?f === "!="?e !== g:f === "^="?e.indexOf(g) === 0:f === "$="?e.substr(e.length - g.length) === g:f === "|="?e === g || e.substr(0, g.length + 1) === g + "-":!1:e && d !== !1}, POS:function(a, b, c, d){var e = b[2], f = l.setFilters[e]; if (f)return f(a, c, b, d)}}}, m = l.match.POS, n = function(a, b){return"\\" + (b - 0 + 1)}; for (var o in l.match)l.match[o] = new RegExp(l.match[o].source + /(?![^\[]*\])(?![^\(]*\))/.source), l.leftMatch[o] = new RegExp(/(^(?:.|\r|\n)*?)/.source + l.match[o].source.replace(/\\(\d+)/g, n)); var p = function(a, b){a = Array.prototype.slice.call(a, 0); if (b){b.push.apply(b, a); return b}return a}; try{Array.prototype.slice.call(c.documentElement.childNodes, 0)[0].nodeType} catch (q){p = function(a, b){var c = 0, d = b || []; if (e.call(a) === "[object Array]")Array.prototype.push.apply(d, a); else if (typeof a.length == "number")for (var f = a.length; c < f; c++)d.push(a[c]); else for (; a[c]; c++)d.push(a[c]); return d}}var r, s; c.documentElement.compareDocumentPosition?r = function(a, b){if (a === b){g = !0; return 0}if (!a.compareDocumentPosition || !b.compareDocumentPosition)return a.compareDocumentPosition? - 1:1; return a.compareDocumentPosition(b) & 4? - 1:1}:(r = function(a, b){if (a === b){g = !0; return 0}if (a.sourceIndex && b.sourceIndex)return a.sourceIndex - b.sourceIndex; var c, d, e = [], f = [], h = a.parentNode, i = b.parentNode, j = h; if (h === i)return s(a, b); if (!h)return - 1; if (!i)return 1; while (j)e.unshift(j), j = j.parentNode; j = i; while (j)f.unshift(j), j = j.parentNode; c = e.length, d = f.length; for (var k = 0; k < c && k < d; k++)if (e[k] !== f[k])return s(e[k], f[k]); return k === c?s(a, f[k], - 1):s(e[k], b, 1)}, s = function(a, b, c){if (a === b)return c; var d = a.nextSibling; while (d){if (d === b)return - 1; d = d.nextSibling}return 1}), k.getText = function(a){var b = "", c; for (var d = 0; a[d]; d++)c = a[d], c.nodeType === 3 || c.nodeType === 4?b += c.nodeValue:c.nodeType !== 8 && (b += k.getText(c.childNodes)); return b}, function(){var a = c.createElement("div"), d = "script" + (new Date).getTime(), e = c.documentElement; a.innerHTML = "<a name='" + d + "'/>", e.insertBefore(a, e.firstChild), c.getElementById(d) && (l.find.ID = function(a, c, d){if (typeof c.getElementById != "undefined" && !d){var e = c.getElementById(a[1]); return e?e.id === a[1] || typeof e.getAttributeNode != "undefined" && e.getAttributeNode("id").nodeValue === a[1]?[e]:b:[]}}, l.filter.ID = function(a, b){var c = typeof a.getAttributeNode != "undefined" && a.getAttributeNode("id"); return a.nodeType === 1 && c && c.nodeValue === b}), e.removeChild(a), e = a = null}(), function(){var a = c.createElement("div"); a.appendChild(c.createComment("")), a.getElementsByTagName("*").length > 0 && (l.find.TAG = function(a, b){var c = b.getElementsByTagName(a[1]); if (a[1] === "*"){var d = []; for (var e = 0; c[e]; e++)c[e].nodeType === 1 && d.push(c[e]); c = d}return c}), a.innerHTML = "<a href='#'></a>", a.firstChild && typeof a.firstChild.getAttribute != "undefined" && a.firstChild.getAttribute("href") !== "#" && (l.attrHandle.href = function(a){return a.getAttribute("href", 2)}), a = null}(), c.querySelectorAll && function(){var a = k, b = c.createElement("div"), d = "__sizzle__"; b.innerHTML = "<p class='TEST'></p>"; if (!b.querySelectorAll || b.querySelectorAll(".TEST").length !== 0){k = function(b, e, f, g){e = e || c; if (!g && !k.isXML(e)){var h = /^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b); if (h && (e.nodeType === 1 || e.nodeType === 9)){if (h[1])return p(e.getElementsByTagName(b), f); if (h[2] && l.find.CLASS && e.getElementsByClassName)return p(e.getElementsByClassName(h[2]), f)}if (e.nodeType === 9){if (b === "body" && e.body)return p([e.body], f); if (h && h[3]){var i = e.getElementById(h[3]); if (!i || !i.parentNode)return p([], f); if (i.id === h[3])return p([i], f)}try{return p(e.querySelectorAll(b), f)} catch (j){}} else if (e.nodeType === 1 && e.nodeName.toLowerCase() !== "object"){var m = e, n = e.getAttribute("id"), o = n || d, q = e.parentNode, r = /^\s*[+~]/.test(b); n?o = o.replace(/'/g, "\\$&"):e.setAttribute("id", o), r && q && (e = e.parentNode); try{if (!r || q)return p(e.querySelectorAll("[id='" + o + "'] " + b), f)} catch (s){} finally{n || m.removeAttribute("id")}}}return a(b, e, f, g)}; for (var e in a)k[e] = a[e]; b = null}}(), function(){var a = c.documentElement, b = a.matchesSelector || a.mozMatchesSelector || a.webkitMatchesSelector || a.msMatchesSelector; if (b){var d = !b.call(c.createElement("div"), "div"), e = !1; try{b.call(c.documentElement, "[test!='']:sizzle")} catch (f){e = !0}k.matchesSelector = function(a, c){c = c.replace(/\=\s*([^'"\]]*)\s*\]/g, "='$1']"); if (!k.isXML(a))try{if (e || !l.match.PSEUDO.test(c) && !/!=/.test(c)){var f = b.call(a, c); if (f || !d || a.document && a.document.nodeType !== 11)return f}} catch (g){}return k(c, null, null, [a]).length > 0}}}(), function(){var a = c.createElement("div"); a.innerHTML = "<div class='test e'></div><div class='test'></div>"; if (!!a.getElementsByClassName && a.getElementsByClassName("e").length !== 0){a.lastChild.className = "e"; if (a.getElementsByClassName("e").length === 1)return; l.order.splice(1, 0, "CLASS"), l.find.CLASS = function(a, b, c){if (typeof b.getElementsByClassName != "undefined" && !c)return b.getElementsByClassName(a[1])}, a = null}}(), c.documentElement.contains?k.contains = function(a, b){return a !== b && (a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?k.contains = function(a, b){return!!(a.compareDocumentPosition(b) & 16)}:k.contains = function(){return!1}, k.isXML = function(a){var b = (a?a.ownerDocument || a:0).documentElement; return b?b.nodeName !== "HTML":!1}; var v = function(a, b){var c, d = [], e = "", f = b.nodeType?[b]:b; while (c = l.match.PSEUDO.exec(a))e += c[0], a = a.replace(l.match.PSEUDO, ""); a = l.relative[a]?a + "*":a; for (var g = 0, h = f.length; g < h; g++)k(a, f[g], d); return k.filter(e, d)}; f.find = k, f.expr = k.selectors, f.expr[":"] = f.expr.filters, f.unique = k.uniqueSort, f.text = k.getText, f.isXMLDoc = k.isXML, f.contains = k.contains}(); var N = /Until$/, O = /^(?:parents|prevUntil|prevAll)/, P = /,/, Q = /^.[^:#\[\.,]*$/, R = Array.prototype.slice, S = f.expr.match.POS, T = {children:!0, contents:!0, next:!0, prev:!0}; f.fn.extend({find:function(a){var b = this, c, d; if (typeof a != "string")return f(a).filter(function(){for (c = 0, d = b.length; c < d; c++)if (f.contains(b[c], this))return!0}); var e = this.pushStack("", "find", a), g, h, i; for (c = 0, d = this.length; c < d; c++){g = e.length, f.find(a, this[c], e); if (c > 0)for (h = g; h < e.length; h++)for (i = 0; i < g; i++)if (e[i] === e[h]){e.splice(h--, 1); break}}return e}, has:function(a){var b = f(a); return this.filter(function(){for (var a = 0, c = b.length; a < c; a++)if (f.contains(this, b[a]))return!0})}, not:function(a){return this.pushStack(V(this, a, !1), "not", a)}, filter:function(a){return this.pushStack(V(this, a, !0), "filter", a)}, is:function(a){return!!a && (typeof a == "string"?f.filter(a, this).length > 0:this.filter(a).length > 0)}, closest:function(a, b){var c = [], d, e, g = this[0]; if (f.isArray(a)){var h, i, j = {}, k = 1; if (g && a.length){for (d = 0, e = a.length; d < e; d++)i = a[d], j[i] || (j[i] = S.test(i)?f(i, b || this.context):i); while (g && g.ownerDocument && g !== b){for (i in j)h = j[i], (h.jquery?h.index(g) > - 1:f(g).is(h)) && c.push({selector:i, elem:g, level:k}); g = g.parentNode, k++}}return c}var l = S.test(a) || typeof a != "string"?f(a, b || this.context):0; for (d = 0, e = this.length; d < e; d++){g = this[d]; while (g){if (l?l.index(g) > - 1:f.find.matchesSelector(g, a)){c.push(g); break}g = g.parentNode; if (!g || !g.ownerDocument || g === b || g.nodeType === 11)break}}c = c.length > 1?f.unique(c):c; return this.pushStack(c, "closest", a)}, index:function(a){if (!a)return this[0] && this[0].parentNode?this.prevAll().length: - 1; if (typeof a == "string")return f.inArray(this[0], f(a)); return f.inArray(a.jquery?a[0]:a, this)}, add:function(a, b){var c = typeof a == "string"?f(a, b):f.makeArray(a && a.nodeType?[a]:a), d = f.merge(this.get(), c); return this.pushStack(U(c[0]) || U(d[0])?d:f.unique(d))}, andSelf:function(){return this.add(this.prevObject)}}), f.each({parent:function(a){var b = a.parentNode; return b && b.nodeType !== 11?b:null}, parents:function(a){return f.dir(a, "parentNode")}, parentsUntil:function(a, b, c){return f.dir(a, "parentNode", c)}, next:function(a){return f.nth(a, 2, "nextSibling")}, prev:function(a){return f.nth(a, 2, "previousSibling")}, nextAll:function(a){return f.dir(a, "nextSibling")}, prevAll:function(a){return f.dir(a, "previousSibling")}, nextUntil:function(a, b, c){return f.dir(a, "nextSibling", c)}, prevUntil:function(a, b, c){return f.dir(a, "previousSibling", c)}, siblings:function(a){return f.sibling(a.parentNode.firstChild, a)}, children:function(a){return f.sibling(a.firstChild)}, contents:function(a){return f.nodeName(a, "iframe")?a.contentDocument || a.contentWindow.document:f.makeArray(a.childNodes)}}, function(a, b){f.fn[a] = function(c, d){var e = f.map(this, b, c), g = R.call(arguments); N.test(a) || (d = c), d && typeof d == "string" && (e = f.filter(d, e)), e = this.length > 1 && !T[a]?f.unique(e):e, (this.length > 1 || P.test(d)) && O.test(a) && (e = e.reverse()); return this.pushStack(e, a, g.join(","))}}), f.extend({filter:function(a, b, c){c && (a = ":not(" + a + ")"); return b.length === 1?f.find.matchesSelector(b[0], a)?[b[0]]:[]:f.find.matches(a, b)}, dir:function(a, c, d){var e = [], g = a[c]; while (g && g.nodeType !== 9 && (d === b || g.nodeType !== 1 || !f(g).is(d)))g.nodeType === 1 && e.push(g), g = g[c]; return e}, nth:function(a, b, c, d){b = b || 1; var e = 0; for (; a; a = a[c])if (a.nodeType === 1 && ++e === b)break; return a}, sibling:function(a, b){var c = []; for (; a; a = a.nextSibling)a.nodeType === 1 && a !== b && c.push(a); return c}}); var W = / jQuery\d+="(?:\d+|null)"/g, X = /^\s+/, Y = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig, Z = /<([\w:]+)/, $ = /<tbody/i, _ = /<|&#?\w+;/, ba = /<(?:script|object|embed|option|style)/i, bb = /checked\s*(?:[^=]|=\s*.checked.)/i, bc = /\/(java|ecma)script/i, bd = /^\s*<!(?:\[CDATA\[|\-\-)/, be = {option:[1, "<select multiple='multiple'>", "</select>"], legend:[1, "<fieldset>", "</fieldset>"], thead:[1, "<table>", "</table>"], tr:[2, "<table><tbody>", "</tbody></table>"], td:[3, "<table><tbody><tr>", "</tr></tbody></table>"], col:[2, "<table><tbody></tbody><colgroup>", "</colgroup></table>"], area:[1, "<map>", "</map>"], _default:[0, "", ""]}; be.optgroup = be.option, be.tbody = be.tfoot = be.colgroup = be.caption = be.thead, be.th = be.td, f.support.htmlSerialize || (be._default = [1, "div<div>", "</div>"]), f.fn.extend({text:function(a){if (f.isFunction(a))return this.each(function(b){var c = f(this); c.text(a.call(this, b, c.text()))}); if (typeof a != "object" && a !== b)return this.empty().append((this[0] && this[0].ownerDocument || c).createTextNode(a)); return f.text(this)}, wrapAll:function(a){if (f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this, b))}); if (this[0]){var b = f(a, this[0].ownerDocument).eq(0).clone(!0); this[0].parentNode && b.insertBefore(this[0]), b.map(function(){var a = this; while (a.firstChild && a.firstChild.nodeType === 1)a = a.firstChild; return a}).append(this)}return this}, wrapInner:function(a){if (f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this, b))}); return this.each(function(){var b = f(this), c = b.contents(); c.length?c.wrapAll(a):b.append(a)})}, wrap:function(a){return this.each(function(){f(this).wrapAll(a)})}, unwrap:function(){return this.parent().each(function(){f.nodeName(this, "body") || f(this).replaceWith(this.childNodes)}).end()}, append:function(){return this.domManip(arguments, !0, function(a){this.nodeType === 1 && this.appendChild(a)})}, prepend:function(){return this.domManip(arguments, !0, function(a){this.nodeType === 1 && this.insertBefore(a, this.firstChild)})}, before:function(){if (this[0] && this[0].parentNode)return this.domManip(arguments, !1, function(a){this.parentNode.insertBefore(a, this)}); if (arguments.length){var a = f(arguments[0]); a.push.apply(a, this.toArray()); return this.pushStack(a, "before", arguments)}}, after:function(){if (this[0] && this[0].parentNode)return this.domManip(arguments, !1, function(a){this.parentNode.insertBefore(a, this.nextSibling)}); if (arguments.length){var a = this.pushStack(this, "after", arguments); a.push.apply(a, f(arguments[0]).toArray()); return a}}, remove:function(a, b){for (var c = 0, d; (d = this[c]) != null; c++)if (!a || f.filter(a, [d]).length)!b && d.nodeType === 1 && (f.cleanData(d.getElementsByTagName("*")), f.cleanData([d])), d.parentNode && d.parentNode.removeChild(d); return this}, empty:function(){for (var a = 0, b; (b = this[a]) != null; a++){b.nodeType === 1 && f.cleanData(b.getElementsByTagName("*")); while (b.firstChild)b.removeChild(b.firstChild)}return this}, clone:function(a, b){a = a == null?!1:a, b = b == null?a:b; return this.map(function(){return f.clone(this, a, b)})}, html:function(a){if (a === b)return this[0] && this[0].nodeType === 1?this[0].innerHTML.replace(W, ""):null; if (typeof a == "string" && !ba.test(a) && (f.support.leadingWhitespace || !X.test(a)) && !be[(Z.exec(a) || ["", ""])[1].toLowerCase()]){a = a.replace(Y, "<$1></$2>"); try{for (var c = 0, d = this.length; c < d; c++)this[c].nodeType === 1 && (f.cleanData(this[c].getElementsByTagName("*")), this[c].innerHTML = a)} catch (e){this.empty().append(a)}} else f.isFunction(a)?this.each(function(b){var c = f(this); c.html(a.call(this, b, c.html()))}):this.empty().append(a); return this}, replaceWith:function(a){if (this[0] && this[0].parentNode){if (f.isFunction(a))return this.each(function(b){var c = f(this), d = c.html(); c.replaceWith(a.call(this, b, d))}); typeof a != "string" && (a = f(a).detach()); return this.each(function(){var b = this.nextSibling, c = this.parentNode; f(this).remove(), b?f(b).before(a):f(c).append(a)})}return this.length?this.pushStack(f(f.isFunction(a)?a():a), "replaceWith", a):this}, detach:function(a){return this.remove(a, !0)}, domManip:function(a, c, d){var e, g, h, i, j = a[0], k = []; if (!f.support.checkClone && arguments.length === 3 && typeof j == "string" && bb.test(j))return this.each(function(){f(this).domManip(a, c, d, !0)}); if (f.isFunction(j))return this.each(function(e){var g = f(this); a[0] = j.call(this, e, c?g.html():b), g.domManip(a, c, d)}); if (this[0]){i = j && j.parentNode, f.support.parentNode && i && i.nodeType === 11 && i.childNodes.length === this.length?e = {fragment:i}:e = f.buildFragment(a, this, k), h = e.fragment, h.childNodes.length === 1?g = h = h.firstChild:g = h.firstChild; if (g){c = c && f.nodeName(g, "tr"); for (var l = 0, m = this.length, n = m - 1; l < m; l++)d.call(c?bf(this[l], g):this[l], e.cacheable || m > 1 && l < n?f.clone(h, !0, !0):h)}k.length && f.each(k, bl)}return this}}), f.buildFragment = function(a, b, d){var e, g, h, i; b && b[0] && (i = b[0].ownerDocument || b[0]), i.createDocumentFragment || (i = c), a.length === 1 && typeof a[0] == "string" && a[0].length < 512 && i === c && a[0].charAt(0) === "<" && !ba.test(a[0]) && (f.support.checkClone || !bb.test(a[0])) && (g = !0, h = f.fragments[a[0]], h && h !== 1 && (e = h)), e || (e = i.createDocumentFragment(), f.clean + (a, i, e, d)), g && (f.fragments[a[0]] = h?e:1); return{fragment:e, cacheable:g}}, f.fragments = {}, f.each({appendTo:"append", prependTo:"prepend", insertBefore:"before", insertAfter:"after", replaceAll:"replaceWith"}, function(a, b){f.fn[a] = function(c){var d = [], e = f(c), g = this.length === 1 && this[0].parentNode; if (g && g.nodeType === 11 && g.childNodes.length === 1 && e.length === 1){e[b](this[0]); return this}for (var h = 0, i = e.length; h < i; h++){var j = (h > 0?this.clone(!0):this).get(); f(e[h])[b](j), d = d.concat(j)}return this.pushStack(d, a, e.selector)}}), f.extend({clone:function(a, b, c){var d = a.cloneNode(!0), e, g, h; if ((!f.support.noCloneEvent || !f.support.noCloneChecked) && (a.nodeType === 1 || a.nodeType === 11) && !f.isXMLDoc(a)){bh(a, d), e = bi(a), g = bi(d); for (h = 0; e[h]; ++h)g[h] && bh(e[h], g[h])}if (b){bg(a, d); if (c){e = bi(a), g = bi(d); for (h = 0; e[h]; ++h)bg(e[h], g[h])}}e = g = null; return d}, clean:function(a, b, d, e){var g; b = b || c, typeof b.createElement == "undefined" && (b = b.ownerDocument || b[0] && b[0].ownerDocument || c); var h = [], i; for (var j = 0, k; (k = a[j]) != null; j++){typeof k == "number" && (k += ""); if (!k)continue; if (typeof k == "string")if (!_.test(k))k = b.createTextNode(k); else{k = k.replace(Y, "<$1></$2>"); var l = (Z.exec(k) || ["", ""])[1].toLowerCase(), m = be[l] || be._default, n = m[0], o = b.createElement("div"); o.innerHTML = m[1] + k + m[2]; while (n--)o = o.lastChild; if (!f.support.tbody){var p = $.test(k), q = l === "table" && !p?o.firstChild && o.firstChild.childNodes:m[1] === "<table>" && !p?o.childNodes:[]; for (i = q.length - 1; i >= 0; --i)f.nodeName(q[i], "tbody") && !q[i].childNodes.length && q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace && X.test(k) && o.insertBefore(b.createTextNode(X.exec(k)[0]), o.firstChild), k = o.childNodes}var r; if (!f.support.appendChecked)if (k[0] && typeof (r = k.length) == "number")for (i = 0; i < r; i++)bk(k[i]); else bk(k); k.nodeType?h.push(k):h = f.merge(h, k)}if (d){g = function(a){return!a.type || bc.test(a.type)}; for (j = 0; h[j]; j++)if (e && f.nodeName(h[j], "script") && (!h[j].type || h[j].type.toLowerCase() === "text/javascript"))e.push(h[j].parentNode?h[j].parentNode.removeChild(h[j]):h[j]); else{if (h[j].nodeType === 1){var s = f.grep(h[j].getElementsByTagName("script"), g); h.splice.apply(h, [j + 1, 0].concat(s))}d.appendChild(h[j])}}return h}, cleanData:function(a){var b, c, d = f.cache, e = f.expando, g = f.event.special, h = f.support.deleteExpando; for (var i = 0, j; (j = a[i]) != null; i++){if (j.nodeName && f.noData[j.nodeName.toLowerCase()])continue; c = j[f.expando]; if (c){b = d[c] && d[c][e]; if (b && b.events){for (var k in b.events)g[k]?f.event.remove(j, k):f.removeEvent(j, k, b.handle); b.handle && (b.handle.elem = null)}h?delete j[f.expando]:j.removeAttribute && j.removeAttribute(f.expando), delete d[c]}}}}); var bm = /alpha\([^)]*\)/i, bn = /opacity=([^)]*)/, bo = /([A-Z]|^ms)/g, bp = /^-?\d+(?:px)?$/i, bq = /^-?\d/, br = /^([\-+])=([\-+.\de]+)/, bs = {position:"absolute", visibility:"hidden", display:"block"}, bt = ["Left", "Right"], bu = ["Top", "Bottom"], bv, bw, bx; f.fn.css = function(a, c){if (arguments.length === 2 && c === b)return this; return f.access(this, a, c, !0, function(a, c, d){return d !== b?f.style(a, c, d):f.css(a, c)})}, f.extend({cssHooks:{opacity:{get:function(a, b){if (b){var c = bv(a, "opacity", "opacity"); return c === ""?"1":c}return a.style.opacity}}}, cssNumber:{fillOpacity:!0, fontWeight:!0, lineHeight:!0, opacity:!0, orphans:!0, widows:!0, zIndex:!0, zoom:!0}, cssProps:{"float":f.support.cssFloat?"cssFloat":"styleFloat"}, style:function(a, c, d, e){if (!!a && a.nodeType !== 3 && a.nodeType !== 8 && !!a.style){var g, h, i = f.camelCase(c), j = a.style, k = f.cssHooks[i]; c = f.cssProps[i] || i; if (d === b){if (k && "get"in k && (g = k.get(a, !1, e)) !== b)return g; return j[c]}h = typeof d, h === "string" && (g = br.exec(d)) && (d = + (g[1] + 1) * + g[2] + parseFloat(f.css(a, c)), h = "number"); if (d == null || h === "number" && isNaN(d))return; h === "number" && !f.cssNumber[i] && (d += "px"); if (!k || !("set"in k) || (d = k.set(a, d)) !== b)try{j[c] = d} catch (l){}}}, css:function(a, c, d){var e, g; c = f.camelCase(c), g = f.cssHooks[c], c = f.cssProps[c] || c, c === "cssFloat" && (c = "float"); if (g && "get"in g && (e = g.get(a, !0, d)) !== b)return e; if (bv)return bv(a, c)}, swap:function(a, b, c){var d = {}; for (var e in b)d[e] = a.style[e], a.style[e] = b[e]; c.call(a); for (e in b)a.style[e] = d[e]}}), f.curCSS = f.css, f.each(["height", "width"], function(a, b){f.cssHooks[b] = {get:function(a, c, d){var e; if (c){if (a.offsetWidth !== 0)return by(a, b, d); f.swap(a, bs, function(){e = by(a, b, d)}); return e}}, set:function(a, b){if (!bp.test(b))return b; b = parseFloat(b); if (b >= 0)return b + "px"}}}), f.support.opacity || (f.cssHooks.opacity = {get:function(a, b){return bn.test((b && a.currentStyle?a.currentStyle.filter:a.style.filter) || "")?parseFloat(RegExp.$1) / 100 + "":b?"1":""}, set:function(a, b){var c = a.style, d = a.currentStyle, e = f.isNaN(b)?"":"alpha(opacity=" + b * 100 + ")", g = d && d.filter || c.filter || ""; c.zoom = 1; if (b >= 1 && f.trim(g.replace(bm, "")) === ""){c.removeAttribute("filter"); if (d && !d.filter)return}c.filter = bm.test(g)?g.replace(bm, e):g + " " + e}}), f(function(){f.support.reliableMarginRight || (f.cssHooks.marginRight = {get:function(a, b){var c; f.swap(a, {display:"inline-block"}, function(){b?c = bv(a, "margin-right", "marginRight"):c = a.style.marginRight}); return c}})}), c.defaultView && c.defaultView.getComputedStyle && (bw = function(a, c){var d, e, g; c = c.replace(bo, "-$1").toLowerCase(); if (!(e = a.ownerDocument.defaultView))return b; if (g = e.getComputedStyle(a, null))d = g.getPropertyValue(c), d === "" && !f.contains(a.ownerDocument.documentElement, a) && (d = f.style(a, c)); return d}), c.documentElement.currentStyle && (bx = function(a, b){var c, d = a.currentStyle && a.currentStyle[b], e = a.runtimeStyle && a.runtimeStyle[b], f = a.style; !bp.test(d) && bq.test(d) && (c = f.left, e && (a.runtimeStyle.left = a.currentStyle.left), f.left = b === "fontSize"?"1em":d || 0, d = f.pixelLeft + "px", f.left = c, e && (a.runtimeStyle.left = e)); return d === ""?"auto":d}), bv = bw || bx, f.expr && f.expr.filters && (f.expr.filters.hidden = function(a){var b = a.offsetWidth, c = a.offsetHeight; return b === 0 && c === 0 || !f.support.reliableHiddenOffsets && (a.style.display || f.css(a, "display")) === "none"}, f.expr.filters.visible = function(a){return!f.expr.filters.hidden(a)}); var bz = /%20/g, bA = /\[\]$/, bB = /\r?\n/g, bC = /#.*$/, bD = /^(.*?):[ \t]*([^\r\n]*)\r?$/mg, bE = /^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i, bF = /^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/, bG = /^(?:GET|HEAD)$/, bH = /^\/\//, bI = /\?/, bJ = /<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi, bK = /^(?:select|textarea)/i, bL = /\s+/, bM = /([?&])_=[^&]*/, bN = /^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/, bO = f.fn.load, bP = {}, bQ = {}, bR, bS, bT = ["*/"] + ["*"]; try{bR = e.href} catch (bU){bR = c.createElement("a"), bR.href = "", bR = bR.href}bS = bN.exec(bR.toLowerCase()) || [], f.fn.extend({load:function(a, c, d){if (typeof a != "string" && bO)return bO.apply(this, arguments); if (!this.length)return this; var e = a.indexOf(" "); if (e >= 0){var g = a.slice(e, a.length); a = a.slice(0, e)}var h = "GET"; c && (f.isFunction(c)?(d = c, c = b):typeof c == "object" && (c = f.param(c, f.ajaxSettings.traditional), h = "POST")); var i = this; f.ajax({url:a, type:h, dataType:"html", data:c, complete:function(a, b, c){c = a.responseText, a.isResolved() && (a.done(function(a){c = a}), i.html(g?f("<div>").append(c.replace(bJ, "")).find(g):c)), d && i.each(d, [c, b, a])}}); return this}, serialize:function(){return f.param(this.serializeArray())}, serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name && !this.disabled && (this.checked || bK.test(this.nodeName) || bE.test(this.type))}).map(function(a, b){var c = f(this).val(); return c == null?null:f.isArray(c)?f.map(c, function(a, c){return{name:b.name, value:a.replace(bB, "\r\n")}}):{name:b.name, value:c.replace(bB, "\r\n")}}).get()}}), f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "), function(a, b){f.fn[b] = function(a){return this.bind(b, a)}}), f.each(["get", "post"], function(a, c){f[c] = function(a, d, e, g){f.isFunction(d) && (g = g || e, e = d, d = b); return f.ajax({type:c, url:a, data:d, success:e, dataType:g})}}), f.extend({getScript:function(a, c){return f.get(a, b, c, "script")}, getJSON:function(a, b, c){return f.get(a, b, c, "json")}, ajaxSetup:function(a, b){b?bX(a, f.ajaxSettings):(b = a, a = f.ajaxSettings), bX(a, b); return a}, ajaxSettings:{url:bR, isLocal:bF.test(bS[1]), global:!0, type:"GET", contentType:"application/x-www-form-urlencoded", processData:!0, async:!0, accepts:{xml:"application/xml, text/xml", html:"text/html", text:"text/plain", json:"application/json, text/javascript", "*":bT}, contents:{xml:/xml/, html:/html/, json:/json/}, responseFields:{xml:"responseXML", text:"responseText"}, converters:{"* text":a.String, "text html":!0, "text json":f.parseJSON, "text xml":f.parseXML}, flatOptions:{context:!0, url:!0}}, ajaxPrefilter:bV(bP), ajaxTransport:bV(bQ), ajax:function(a, c){function w(a, c, l, m){if (s !== 2){s = 2, q && clearTimeout(q), p = b, n = m || "", v.readyState = a > 0?4:0; var o, r, u, w = c, x = l?bZ(d, v, l):b, y, z; if (a >= 200 && a < 300 || a === 304){if (d.ifModified){if (y = v.getResponseHeader("Last-Modified"))f.lastModified[k] = y; if (z = v.getResponseHeader("Etag"))f.etag[k] = z}if (a === 304)w = "notmodified", o = !0; else try{r = b$(d, x), w = "success", o = !0} catch (A){w = "parsererror", u = A}} else{u = w; if (!w || a)w = "error", a < 0 && (a = 0)}v.status = a, v.statusText = "" + (c || w), o?h.resolveWith(e, [r, w, v]):h.rejectWith(e, [v, w, u]), v.statusCode(j), j = b, t && g.trigger("ajax" + (o?"Success":"Error"), [v, d, o?r:u]), i.resolveWith(e, [v, w]), t && (g.trigger("ajaxComplete", [v, d]), --f.active || f.event.trigger("ajaxStop"))}}typeof a == "object" && (c = a, a = b), c = c || {}; var d = f.ajaxSetup({}, c), e = d.context || d, g = e !== d && (e.nodeType || e instanceof f)?f(e):f.event, h = f.Deferred(), i = f._Deferred(), j = d.statusCode || {}, k, l = {}, m = {}, n, o, p, q, r, s = 0, t, u, v = {readyState:0, setRequestHeader:function(a, b){if (!s){var c = a.toLowerCase(); a = m[c] = m[c] || a, l[a] = b}return this}, getAllResponseHeaders:function(){return s === 2?n:null}, getResponseHeader:function(a){var c; if (s === 2){if (!o){o = {}; while (c = bD.exec(n))o[c[1].toLowerCase()] = c[2]}c = o[a.toLowerCase()]}return c === b?null:c}, overrideMimeType:function(a){s || (d.mimeType = a); return this}, abort:function(a){a = a || "abort", p && p.abort(a), w(0, a); return this}}; h.promise(v), v.success = v.done, v.error = v.fail, v.complete = i.done, v.statusCode = function(a){if (a){var b; if (s < 2)for (b in a)j[b] = [j[b], a[b]]; else b = a[v.status], v.then(b, b)}return this}, d.url = ((a || d.url) + "").replace(bC, "").replace(bH, bS[1] + "//"), d.dataTypes = f.trim(d.dataType || "*").toLowerCase().split(bL), d.crossDomain == null && (r = bN.exec(d.url.toLowerCase()), d.crossDomain = !(!r || r[1] == bS[1] && r[2] == bS[2] && (r[3] || (r[1] === "http:"?80:443)) == (bS[3] || (bS[1] === "http:"?80:443)))), d.data && d.processData && typeof d.data != "string" && (d.data = f.param(d.data, d.traditional)), bW(bP, d, c, v); if (s === 2)return!1; t = d.global, d.type = d.type.toUpperCase(), d.hasContent = !bG.test(d.type), t && f.active++ === 0 && f.event.trigger("ajaxStart"); if (!d.hasContent){d.data && (d.url += (bI.test(d.url)?"&":"?") + d.data, delete d.data), k = d.url; if (d.cache === !1){var x = f.now(), y = d.url.replace(bM, "$1_=" + x); d.url = y + (y === d.url?(bI.test(d.url)?"&":"?") + "_=" + x:"")}}(d.data && d.hasContent && d.contentType !== !1 || c.contentType) && v.setRequestHeader("Content-Type", d.contentType), d.ifModified && (k = k || d.url, f.lastModified[k] && v.setRequestHeader("If-Modified-Since", f.lastModified[k]), f.etag[k] && v.setRequestHeader("If-None-Match", f.etag[k])), v.setRequestHeader("Accept", d.dataTypes[0] && d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]] + (d.dataTypes[0] !== "*"?", " + bT + "; q=0.01":""):d.accepts["*"]); for (u in d.headers)v.setRequestHeader(u, d.headers[u]); if (d.beforeSend && (d.beforeSend.call(e, v, d) === !1 || s === 2)){v.abort(); return!1}for (u in{success:1, error:1, complete:1})v[u](d[u]); p = bW(bQ, d, c, v); if (!p)w( - 1, "No Transport"); else{v.readyState = 1, t && g.trigger("ajaxSend", [v, d]), d.async && d.timeout > 0 && (q = setTimeout(function(){v.abort("timeout")}, d.timeout)); try{s = 1, p.send(l, w)} catch (z){s < 2?w( - 1, z):f.error(z)}}return v}, param:function(a, c){var d = [], e = function(a, b){b = f.isFunction(b)?b():b, d[d.length] = encodeURIComponent(a) + "=" + encodeURIComponent(b)}; c === b && (c = f.ajaxSettings.traditional); if (f.isArray(a) || a.jquery && !f.isPlainObject(a))f.each(a, function(){e(this.name, this.value)}); else for (var g in a)bY(g, a[g], c, e); return d.join("&").replace(bz, "+")}}), f.extend({active:0, lastModified:{}, etag:{}}); var b_ = f.now(), ca = /(\=)\?(&|$)|\?\?/i; f.ajaxSetup({jsonp:"callback", jsonpCallback:function(){return f.expando + "_" + b_++}}), f.ajaxPrefilter("json jsonp", function(b, c, d){var e = b.contentType === "application/x-www-form-urlencoded" && typeof b.data == "string"; if (b.dataTypes[0] === "jsonp" || b.jsonp !== !1 && (ca.test(b.url) || e && ca.test(b.data))){var g, h = b.jsonpCallback = f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback, i = a[h], j = b.url, k = b.data, l = "$1" + h + "$2"; b.jsonp !== !1 && (j = j.replace(ca, l), b.url === j && (e && (k = k.replace(ca, l)), b.data === k && (j += (/\?/.test(j)?"&":"?") + b.jsonp + "=" + h))), b.url = j, b.data = k, a[h] = function(a){g = [a]}, d.always(function(){a[h] = i, g && f.isFunction(i) && a[h](g[0])}), b.converters["script json"] = function(){g || f.error(h + " was not called"); return g[0]}, b.dataTypes[0] = "json"; return"script"}}), f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"}, contents:{script:/javascript|ecmascript/}, converters:{"text script":function(a){f.globalEval(a); return a}}}), f.ajaxPrefilter("script", function(a){a.cache === b && (a.cache = !1), a.crossDomain && (a.type = "GET", a.global = !1)}), f.ajaxTransport("script", function(a){if (a.crossDomain){var d, e = c.head || c.getElementsByTagName("head")[0] || c.documentElement; return{send:function(f, g){d = c.createElement("script"), d.async = "async", a.scriptCharset && (d.charset = a.scriptCharset), d.src = a.url, d.onload = d.onreadystatechange = function(a, c){if (c || !d.readyState || /loaded|complete/.test(d.readyState))d.onload = d.onreadystatechange = null, e && d.parentNode && e.removeChild(d), d = b, c || g(200, "success")}, e.insertBefore(d, e.firstChild)}, abort:function(){d && d.onload(0, 1)}}}}); var cb = a.ActiveXObject?function(){for (var a in cd)cd[a](0, 1)}:!1, cc = 0, cd; f.ajaxSettings.xhr = a.ActiveXObject?function(){return!this.isLocal && ce() || cf()}:ce, function(a){f.extend(f.support, {ajax:!!a, cors:!!a && "withCredentials"in a})}(f.ajaxSettings.xhr()), f.support.ajax && f.ajaxTransport(function(c){if (!c.crossDomain || f.support.cors){var d; return{send:function(e, g){var h = c.xhr(), i, j; c.username?h.open(c.type, c.url, c.async, c.username, c.password):h.open(c.type, c.url, c.async); if (c.xhrFields)for (j in c.xhrFields)h[j] = c.xhrFields[j]; c.mimeType && h.overrideMimeType && h.overrideMimeType(c.mimeType), !c.crossDomain && !e["X-Requested-With"] && (e["X-Requested-With"] = "XMLHttpRequest"); try{for (j in e)h.setRequestHeader(j, e[j])} catch (k){}h.send(c.hasContent && c.data || null), d = function(a, e){var j, k, l, m, n; try{if (d && (e || h.readyState === 4)){d = b, i && (h.onreadystatechange = f.noop, cb && delete cd[i]); if (e)h.readyState !== 4 && h.abort(); else{j = h.status, l = h.getAllResponseHeaders(), m = {}, n = h.responseXML, n && n.documentElement && (m.xml = n), m.text = h.responseText; try{k = h.statusText} catch (o){k = ""}!j && c.isLocal && !c.crossDomain?j = m.text?200:404:j === 1223 && (j = 204)}}} catch (p){e || g( - 1, p)}m && g(j, k, m, l)}, !c.async || h.readyState === 4?d():(i = ++cc, cb && (cd || (cd = {}, f(a).unload(cb)), cd[i] = d), h.onreadystatechange = d)}, abort:function(){d && d(0, 1)}}}}); var cg = {}, ch, ci, cj = /^(?:toggle|show|hide)$/, ck = /^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i, cl, cm = [["height", "marginTop", "marginBottom", "paddingTop", "paddingBottom"], ["width", "marginLeft", "marginRight", "paddingLeft", "paddingRight"], ["opacity"]], cn; f.fn.extend({show:function(a, b, c){var d, e; if (a || a === 0)return this.animate(cq("show", 3), a, b, c); for (var g = 0, h = this.length; g < h; g++)d = this[g], d.style && (e = d.style.display, !f._data(d, "olddisplay") && e === "none" && (e = d.style.display = ""), e === "" && f.css(d, "display") === "none" && f._data(d, "olddisplay", cr(d.nodeName))); for (g = 0; g < h; g++){d = this[g]; if (d.style){e = d.style.display; if (e === "" || e === "none")d.style.display = f._data(d, "olddisplay") || ""}}return this}, hide:function(a, b, c){if (a || a === 0)return this.animate(cq("hide", 3), a, b, c); for (var d = 0, e = this.length; d < e; d++)if (this[d].style){var g = f.css(this[d], "display"); g !== "none" && !f._data(this[d], "olddisplay") && f._data(this[d], "olddisplay", g)}for (d = 0; d < e; d++)this[d].style && (this[d].style.display = "none"); return this}, _toggle:f.fn.toggle, toggle:function(a, b, c){var d = typeof a == "boolean"; f.isFunction(a) && f.isFunction(b)?this._toggle.apply(this, arguments):a == null || d?this.each(function(){var b = d?a:f(this).is(":hidden"); f(this)[b?"show":"hide"]()}):this.animate(cq("toggle", 3), a, b, c); return this}, fadeTo:function(a, b, c, d){return this.filter(":hidden").css("opacity", 0).show().end().animate({opacity:b}, a, c, d)}, animate:function(a, b, c, d){var e = f.speed(b, c, d); if (f.isEmptyObject(a))return this.each(e.complete, [!1]); a = f.extend({}, a); return this[e.queue === !1?"each":"queue"](function(){e.queue === !1 && f._mark(this); var b = f.extend({}, e), c = this.nodeType === 1, d = c && f(this).is(":hidden"), g, h, i, j, k, l, m, n, o; b.animatedProperties = {}; for (i in a){g = f.camelCase(i), i !== g && (a[g] = a[i], delete a[i]), h = a[g], f.isArray(h)?(b.animatedProperties[g] = h[1], h = a[g] = h[0]):b.animatedProperties[g] = b.specialEasing && b.specialEasing[g] || b.easing || "swing"; if (h === "hide" && d || h === "show" && !d)return b.complete.call(this); c && (g === "height" || g === "width") && (b.overflow = [this.style.overflow, this.style.overflowX, this.style.overflowY], f.css(this, "display") === "inline" && f.css(this, "float") === "none" && (f.support.inlineBlockNeedsLayout?(j = cr(this.nodeName), j === "inline"?this.style.display = "inline-block":(this.style.display = "inline", this.style.zoom = 1)):this.style.display = "inline-block"))}b.overflow != null && (this.style.overflow = "hidden"); for (i in a)k = new f.fx(this, b, i), h = a[i], cj.test(h)?k[h === "toggle"?d?"show":"hide":h]():(l = ck.exec(h), m = k.cur(), l?(n = parseFloat(l[2]), o = l[3] || (f.cssNumber[i]?"":"px"), o !== "px" && (f.style(this, i, (n || 1) + o), m = (n || 1) / k.cur() * m, f.style(this, i, m + o)), l[1] && (n = (l[1] === "-="? - 1:1) * n + m), k.custom(m, n, o)):k.custom(m, h, "")); return!0})}, stop:function(a, b){a && this.queue([]), this.each(function(){var a = f.timers, c = a.length; b || f._unmark(!0, this); while (c--)a[c].elem === this && (b && a[c](!0), a.splice(c, 1))}), b || this.dequeue(); return this}}), f.each({slideDown:cq("show", 1), slideUp:cq("hide", 1), slideToggle:cq("toggle", 1), fadeIn:{opacity:"show"}, fadeOut:{opacity:"hide"}, fadeToggle:{opacity:"toggle"}}, function(a, b){f.fn[a] = function(a, c, d){return this.animate(b, a, c, d)}}), f.extend({speed:function(a, b, c){var d = a && typeof a == "object"?f.extend({}, a):{complete:c || !c && b || f.isFunction(a) && a, duration:a, easing:c && b || b && !f.isFunction(b) && b}; d.duration = f.fx.off?0:typeof d.duration == "number"?d.duration:d.duration in f.fx.speeds?f.fx.speeds[d.duration]:f.fx.speeds._default, d.old = d.complete, d.complete = function(a){f.isFunction(d.old) && d.old.call(this), d.queue !== !1?f.dequeue(this):a !== !1 && f._unmark(this)}; return d}, easing:{linear:function(a, b, c, d){return c + d * a}, swing:function(a, b, c, d){return( - Math.cos(a * Math.PI) / 2 + .5) * d + c}}, timers:[], fx:function(a, b, c){this.options = b, this.elem = a, this.prop = c, b.orig = b.orig || {}}}), f.fx.prototype = {update:function(){this.options.step && this.options.step.call(this.elem, this.now, this), (f.fx.step[this.prop] || f.fx.step._default)(this)}, cur:function(){if (this.elem[this.prop] != null && (!this.elem.style || this.elem.style[this.prop] == null))return this.elem[this.prop]; var a, b = f.css(this.elem, this.prop); return isNaN(a = parseFloat(b))?!b || b === "auto"?0:b:a}, custom:function(a, b, c){function g(a){return d.step(a)}var d = this, e = f.fx; this.startTime = cn || co(), this.start = a, this.end = b, this.unit = c || this.unit || (f.cssNumber[this.prop]?"":"px"), this.now = this.start, this.pos = this.state = 0, g.elem = this.elem, g() && f.timers.push(g) && !cl && (cl = setInterval(e.tick, e.interval))}, show:function(){this.options.orig[this.prop] = f.style(this.elem, this.prop), this.options.show = !0, this.custom(this.prop === "width" || this.prop === "height"?1:0, this.cur()), f(this.elem).show()}, hide:function(){this.options.orig[this.prop] = f.style(this.elem, this.prop), this.options.hide = !0, this.custom(this.cur(), 0)}, step:function(a){var b = cn || co(), c = !0, d = this.elem, e = this.options, g, h; if (a || b >= e.duration + this.startTime){this.now = this.end, this.pos = this.state = 1, this.update(), e.animatedProperties[this.prop] = !0; for (g in e.animatedProperties)e.animatedProperties[g] !== !0 && (c = !1); if (c){e.overflow != null && !f.support.shrinkWrapBlocks && f.each(["", "X", "Y"], function(a, b){d.style["overflow" + b] = e.overflow[a]}), e.hide && f(d).hide(); if (e.hide || e.show)for (var i in e.animatedProperties)f.style(d, i, e.orig[i]); e.complete.call(d)}return!1}e.duration == Infinity?this.now = b:(h = b - this.startTime, this.state = h / e.duration, this.pos = f.easing[e.animatedProperties[this.prop]](this.state, h, 0, 1, e.duration), this.now = this.start + (this.end - this.start) * this.pos), this.update(); return!0}}, f.extend(f.fx, {tick:function(){for (var a = f.timers, b = 0; b < a.length; ++b)a[b]() || a.splice(b--, 1); a.length || f.fx.stop()}, interval:13, stop:function(){clearInterval(cl), cl = null}, speeds:{slow:600, fast:200, _default:400}, step:{opacity:function(a){f.style(a.elem, "opacity", a.now)}, _default:function(a){a.elem.style && a.elem.style[a.prop] != null?a.elem.style[a.prop] = (a.prop === "width" || a.prop === "height"?Math.max(0, a.now):a.now) + a.unit:a.elem[a.prop] = a.now}}}), f.expr && f.expr.filters && (f.expr.filters.animated = function(a){return f.grep(f.timers, function(b){return a === b.elem}).length}); var cs = /^t(?:able|d|h)$/i, ct = /^(?:body|html)$/i; "getBoundingClientRect"in c.documentElement?f.fn.offset = function(a){var b = this[0], c; if (a)return this.each(function(b){f.offset.setOffset(this, a, b)}); if (!b || !b.ownerDocument)return null; if (b === b.ownerDocument.body)return f.offset.bodyOffset(b); try{c = b.getBoundingClientRect()} catch (d){}var e = b.ownerDocument, g = e.documentElement; if (!c || !f.contains(g, b))return c?{top:c.top, left:c.left}:{top:0, left:0}; var h = e.body, i = cu(e), j = g.clientTop || h.clientTop || 0, k = g.clientLeft || h.clientLeft || 0, l = i.pageYOffset || f.support.boxModel && g.scrollTop || h.scrollTop, m = i.pageXOffset || f.support.boxModel && g.scrollLeft || h.scrollLeft, n = c.top + l - j, o = c.left + m - k; return{top:n, left:o}}:f.fn.offset = function(a){var b = this[0]; if (a)return this.each(function(b){f.offset.setOffset(this, a, b)}); if (!b || !b.ownerDocument)return null; if (b === b.ownerDocument.body)return f.offset.bodyOffset(b); f.offset.initialize(); var c, d = b.offsetParent, e = b, g = b.ownerDocument, h = g.documentElement, i = g.body, j = g.defaultView, k = j?j.getComputedStyle(b, null):b.currentStyle, l = b.offsetTop, m = b.offsetLeft; while ((b = b.parentNode) && b !== i && b !== h){if (f.offset.supportsFixedPosition && k.position === "fixed")break; c = j?j.getComputedStyle(b, null):b.currentStyle, l -= b.scrollTop, m -= b.scrollLeft, b === d && (l += b.offsetTop, m += b.offsetLeft, f.offset.doesNotAddBorder && (!f.offset.doesAddBorderForTableAndCells || !cs.test(b.nodeName)) && (l += parseFloat(c.borderTopWidth) || 0, m += parseFloat(c.borderLeftWidth) || 0), e = d, d = b.offsetParent), f.offset.subtractsBorderForOverflowNotVisible && c.overflow !== "visible" && (l += parseFloat(c.borderTopWidth) || 0, m += parseFloat(c.borderLeftWidth) || 0), k = c}if (k.position === "relative" || k.position === "static")l += i.offsetTop, m += i.offsetLeft; f.offset.supportsFixedPosition && k.position === "fixed" && (l += Math.max(h.scrollTop, i.scrollTop), m += Math.max(h.scrollLeft, i.scrollLeft)); return{top:l, left:m}}, f.offset = {initialize:function(){var a = c.body, b = c.createElement("div"), d, e, g, h, i = parseFloat(f.css(a, "marginTop")) || 0, j = "<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>"; f.extend(b.style, {position:"absolute", top:0, left:0, margin:0, border:0, width:"1px", height:"1px", visibility:"hidden"}), b.innerHTML = j, a.insertBefore(b, a.firstChild), d = b.firstChild, e = d.firstChild, h = d.nextSibling.firstChild.firstChild, this.doesNotAddBorder = e.offsetTop !== 5, this.doesAddBorderForTableAndCells = h.offsetTop === 5, e.style.position = "fixed", e.style.top = "20px", this.supportsFixedPosition = e.offsetTop === 20 || e.offsetTop === 15, e.style.position = e.style.top = "", d.style.overflow = "hidden", d.style.position = "relative", this.subtractsBorderForOverflowNotVisible = e.offsetTop === - 5, this.doesNotIncludeMarginInBodyOffset = a.offsetTop !== i, a.removeChild(b), f.offset.initialize = f.noop}, bodyOffset:function(a){var b = a.offsetTop, c = a.offsetLeft; f.offset.initialize(), f.offset.doesNotIncludeMarginInBodyOffset && (b += parseFloat(f.css(a, "marginTop")) || 0, c += parseFloat(f.css(a, "marginLeft")) || 0); return{top:b, left:c}}, setOffset:function(a, b, c){var d = f.css(a, "position"); d === "static" && (a.style.position = "relative"); var e = f(a), g = e.offset(), h = f.css(a, "top"), i = f.css(a, "left"), j = (d === "absolute" || d === "fixed") && f.inArray("auto", [h, i]) > - 1, k = {}, l = {}, m, n; j?(l = e.position(), m = l.top, n = l.left):(m = parseFloat(h) || 0, n = parseFloat(i) || 0), f.isFunction(b) && (b = b.call(a, c, g)), b.top != null && (k.top = b.top - g.top + m), b.left != null && (k.left = b.left - g.left + n), "using"in b?b.using.call(a, k):e.css(k)}}, f.fn.extend({position:function(){if (!this[0])return null; var a = this[0], b = this.offsetParent(), c = this.offset(), d = ct.test(b[0].nodeName)?{top:0, left:0}:b.offset(); c.top -= parseFloat(f.css(a, "marginTop")) || 0, c.left -= parseFloat(f.css(a, "marginLeft")) || 0, d.top += parseFloat(f.css(b[0], "borderTopWidth")) || 0, d.left += parseFloat(f.css(b[0], "borderLeftWidth")) || 0; return{top:c.top - d.top, left:c.left - d.left}}, offsetParent:function(){return this.map(function(){var a = this.offsetParent || c.body; while (a && !ct.test(a.nodeName) && f.css(a, "position") === "static")a = a.offsetParent; return a})}}), f.each(["Left", "Top"], function(a, c){var d = "scroll" + c; f.fn[d] = function(c){var e, g; if (c === b){e = this[0]; if (!e)return null; g = cu(e); return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel && g.document.documentElement[d] || g.document.body[d]:e[d]}return this.each(function(){g = cu(this), g?g.scrollTo(a?f(g).scrollLeft():c, a?c:f(g).scrollTop()):this[d] = c})}}), f.each(["Height", "Width"], function(a, c){var d = c.toLowerCase(); f.fn["inner" + c] = function(){var a = this[0]; return a && a.style?parseFloat(f.css(a, d, "padding")):null}, f.fn["outer" + c] = function(a){var b = this[0]; return b && b.style?parseFloat(f.css(b, d, a?"margin":"border")):null}, f.fn[d] = function(a){var e = this[0]; if (!e)return a == null?null:this; if (f.isFunction(a))return this.each(function(b){var c = f(this); c[d](a.call(this, b, c[d]()))}); if (f.isWindow(e)){var g = e.document.documentElement["client" + c], h = e.document.body; return e.document.compatMode === "CSS1Compat" && g || h && h["client" + c] || g}if (e.nodeType === 9)return Math.max(e.documentElement["client" + c], e.body["scroll" + c], e.documentElement["scroll" + c], e.body["offset" + c], e.documentElement["offset" + c]); if (a === b){var i = f.css(e, d), j = parseFloat(i); return f.isNaN(j)?i:j}return this.css(d, typeof a == "string"?a:a + "px")}}), a.jQuery = a.$ = f})(window); + + + diff --git a/simulation/js/jsplumb1.js b/simulation/js/jsplumb1.js new file mode 100644 index 0000000..0e62651 --- /dev/null +++ b/simulation/js/jsplumb1.js @@ -0,0 +1,15293 @@ +/** + * jsBezier + * + * Copyright (c) 2010 - 2017 jsPlumb (hello@jsplumbtoolkit.com) + * + * licensed under the MIT license. + * + * a set of Bezier curve functions that deal with Beziers, used by jsPlumb, and perhaps useful for other people. These functions work with Bezier + * curves of arbitrary degree. + * + * - functions are all in the 'jsBezier' namespace. + * + * - all input points should be in the format {x:.., y:..}. all output points are in this format too. + * + * - all input curves should be in the format [ {x:.., y:..}, {x:.., y:..}, {x:.., y:..}, {x:.., y:..} ] + * + * - 'location' as used as an input here refers to a decimal in the range 0-1 inclusive, which indicates a point some proportion along the length + * of the curve. location as output has the same format and meaning. + * + * + * Function List: + * -------------- + * + * distanceFromCurve(point, curve) + * + * Calculates the distance that the given point lies from the given Bezier. Note that it is computed relative to the center of the Bezier, + * so if you have stroked the curve with a wide pen you may wish to take that into account! The distance returned is relative to the values + * of the curve and the point - it will most likely be pixels. + * + * gradientAtPoint(curve, location) + * + * Calculates the gradient to the curve at the given location, as a decimal between 0 and 1 inclusive. + * + * gradientAtPointAlongCurveFrom (curve, location) + * + * Calculates the gradient at the point on the given curve that is 'distance' units from location. + * + * nearestPointOnCurve(point, curve) + * + * Calculates the nearest point to the given point on the given curve. The return value of this is a JS object literal, containing both the + *point's coordinates and also the 'location' of the point (see above), for example: { point:{x:551,y:150}, location:0.263365 }. + * + * pointOnCurve(curve, location) + * + * Calculates the coordinates of the point on the given Bezier curve at the given location. + * + * pointAlongCurveFrom(curve, location, distance) + * + * Calculates the coordinates of the point on the given curve that is 'distance' units from location. 'distance' should be in the same coordinate + * space as that used to construct the Bezier curve. For an HTML Canvas usage, for example, distance would be a measure of pixels. + * + * locationAlongCurveFrom(curve, location, distance) + * + * Calculates the location on the given curve that is 'distance' units from location. 'distance' should be in the same coordinate + * space as that used to construct the Bezier curve. For an HTML Canvas usage, for example, distance would be a measure of pixels. + * + * perpendicularToCurveAt(curve, location, length, distance) + * + * Calculates the perpendicular to the given curve at the given location. length is the length of the line you wish for (it will be centered + * on the point at 'location'). distance is optional, and allows you to specify a point along the path from the given location as the center of + * the perpendicular returned. The return value of this is an array of two points: [ {x:...,y:...}, {x:...,y:...} ]. + * + * + */ + +(function() { + + var root = this; + + if(typeof Math.sgn == "undefined") { + Math.sgn = function(x) { return x == 0 ? 0 : x > 0 ? 1 :-1; }; + } + + var Vectors = { + subtract : function(v1, v2) { return {x:v1.x - v2.x, y:v1.y - v2.y }; }, + dotProduct : function(v1, v2) { return (v1.x * v2.x) + (v1.y * v2.y); }, + square : function(v) { return Math.sqrt((v.x * v.x) + (v.y * v.y)); }, + scale : function(v, s) { return {x:v.x * s, y:v.y * s }; } + }, + + maxRecursion = 64, + flatnessTolerance = Math.pow(2.0,-maxRecursion-1); + + /** + * Calculates the distance that the point lies from the curve. + * + * @param point a point in the form {x:567, y:3342} + * @param curve a Bezier curve in the form [{x:..., y:...}, {x:..., y:...}, {x:..., y:...}, {x:..., y:...}]. note that this is currently + * hardcoded to assume cubiz beziers, but would be better off supporting any degree. + * @return a JS object literal containing location and distance, for example: {location:0.35, distance:10}. Location is analogous to the location + * argument you pass to the pointOnPath function: it is a ratio of distance travelled along the curve. Distance is the distance in pixels from + * the point to the curve. + */ + var _distanceFromCurve = function(point, curve) { + var candidates = [], + w = _convertToBezier(point, curve), + degree = curve.length - 1, higherDegree = (2 * degree) - 1, + numSolutions = _findRoots(w, higherDegree, candidates, 0), + v = Vectors.subtract(point, curve[0]), dist = Vectors.square(v), t = 0.0; + + for (var i = 0; i < numSolutions; i++) { + v = Vectors.subtract(point, _bezier(curve, degree, candidates[i], null, null)); + var newDist = Vectors.square(v); + if (newDist < dist) { + dist = newDist; + t = candidates[i]; + } + } + v = Vectors.subtract(point, curve[degree]); + newDist = Vectors.square(v); + if (newDist < dist) { + dist = newDist; + t = 1.0; + } + return {location:t, distance:dist}; + }; + /** + * finds the nearest point on the curve to the given point. + */ + var _nearestPointOnCurve = function(point, curve) { + var td = _distanceFromCurve(point, curve); + return {point:_bezier(curve, curve.length - 1, td.location, null, null), location:td.location}; + }; + var _convertToBezier = function(point, curve) { + var degree = curve.length - 1, higherDegree = (2 * degree) - 1, + c = [], d = [], cdTable = [], w = [], + z = [ [1.0, 0.6, 0.3, 0.1], [0.4, 0.6, 0.6, 0.4], [0.1, 0.3, 0.6, 1.0] ]; + + for (var i = 0; i <= degree; i++) c[i] = Vectors.subtract(curve[i], point); + for (var i = 0; i <= degree - 1; i++) { + d[i] = Vectors.subtract(curve[i+1], curve[i]); + d[i] = Vectors.scale(d[i], 3.0); + } + for (var row = 0; row <= degree - 1; row++) { + for (var column = 0; column <= degree; column++) { + if (!cdTable[row]) cdTable[row] = []; + cdTable[row][column] = Vectors.dotProduct(d[row], c[column]); + } + } + for (i = 0; i <= higherDegree; i++) { + if (!w[i]) w[i] = []; + w[i].y = 0.0; + w[i].x = parseFloat(i) / higherDegree; + } + var n = degree, m = degree-1; + for (var k = 0; k <= n + m; k++) { + var lb = Math.max(0, k - m), + ub = Math.min(k, n); + for (i = lb; i <= ub; i++) { + var j = k - i; + w[i+j].y += cdTable[j][i] * z[j][i]; + } + } + return w; + }; + /** + * counts how many roots there are. + */ + var _findRoots = function(w, degree, t, depth) { + var left = [], right = [], + left_count, right_count, + left_t = [], right_t = []; + + switch (_getCrossingCount(w, degree)) { + case 0 : { + return 0; + } + case 1 : { + if (depth >= maxRecursion) { + t[0] = (w[0].x + w[degree].x) / 2.0; + return 1; + } + if (_isFlatEnough(w, degree)) { + t[0] = _computeXIntercept(w, degree); + return 1; + } + break; + } + } + _bezier(w, degree, 0.5, left, right); + left_count = _findRoots(left, degree, left_t, depth+1); + right_count = _findRoots(right, degree, right_t, depth+1); + for (var i = 0; i < left_count; i++) t[i] = left_t[i]; + for (var i = 0; i < right_count; i++) t[i+left_count] = right_t[i]; + return (left_count+right_count); + }; + var _getCrossingCount = function(curve, degree) { + var n_crossings = 0, sign, old_sign; + sign = old_sign = Math.sgn(curve[0].y); + for (var i = 1; i <= degree; i++) { + sign = Math.sgn(curve[i].y); + if (sign != old_sign) n_crossings++; + old_sign = sign; + } + return n_crossings; + }; + var _isFlatEnough = function(curve, degree) { + var error, + intercept_1, intercept_2, left_intercept, right_intercept, + a, b, c, det, dInv, a1, b1, c1, a2, b2, c2; + a = curve[0].y - curve[degree].y; + b = curve[degree].x - curve[0].x; + c = curve[0].x * curve[degree].y - curve[degree].x * curve[0].y; + + var max_distance_above, max_distance_below; + max_distance_above = max_distance_below = 0.0; + + for (var i = 1; i < degree; i++) { + var value = a * curve[i].x + b * curve[i].y + c; + if (value > max_distance_above) + max_distance_above = value; + else if (value < max_distance_below) + max_distance_below = value; + } + + a1 = 0.0; b1 = 1.0; c1 = 0.0; a2 = a; b2 = b; + c2 = c - max_distance_above; + det = a1 * b2 - a2 * b1; + dInv = 1.0/det; + intercept_1 = (b1 * c2 - b2 * c1) * dInv; + a2 = a; b2 = b; c2 = c - max_distance_below; + det = a1 * b2 - a2 * b1; + dInv = 1.0/det; + intercept_2 = (b1 * c2 - b2 * c1) * dInv; + left_intercept = Math.min(intercept_1, intercept_2); + right_intercept = Math.max(intercept_1, intercept_2); + error = right_intercept - left_intercept; + return (error < flatnessTolerance)? 1 : 0; + }; + var _computeXIntercept = function(curve, degree) { + var XLK = 1.0, YLK = 0.0, + XNM = curve[degree].x - curve[0].x, YNM = curve[degree].y - curve[0].y, + XMK = curve[0].x - 0.0, YMK = curve[0].y - 0.0, + det = XNM*YLK - YNM*XLK, detInv = 1.0/det, + S = (XNM*YMK - YNM*XMK) * detInv; + return 0.0 + XLK * S; + }; + var _bezier = function(curve, degree, t, left, right) { + var temp = [[]]; + for (var j =0; j <= degree; j++) temp[0][j] = curve[j]; + for (var i = 1; i <= degree; i++) { + for (var j =0 ; j <= degree - i; j++) { + if (!temp[i]) temp[i] = []; + if (!temp[i][j]) temp[i][j] = {}; + temp[i][j].x = (1.0 - t) * temp[i-1][j].x + t * temp[i-1][j+1].x; + temp[i][j].y = (1.0 - t) * temp[i-1][j].y + t * temp[i-1][j+1].y; + } + } + if (left != null) + for (j = 0; j <= degree; j++) left[j] = temp[j][0]; + if (right != null) + for (j = 0; j <= degree; j++) right[j] = temp[degree-j][j]; + + return (temp[degree][0]); + }; + + var _curveFunctionCache = {}; + var _getCurveFunctions = function(order) { + var fns = _curveFunctionCache[order]; + if (!fns) { + fns = []; + var f_term = function() { return function(t) { return Math.pow(t, order); }; }, + l_term = function() { return function(t) { return Math.pow((1-t), order); }; }, + c_term = function(c) { return function(t) { return c; }; }, + t_term = function() { return function(t) { return t; }; }, + one_minus_t_term = function() { return function(t) { return 1-t; }; }, + _termFunc = function(terms) { + return function(t) { + var p = 1; + for (var i = 0; i < terms.length; i++) p = p * terms[i](t); + return p; + }; + }; + + fns.push(new f_term()); // first is t to the power of the curve order + for (var i = 1; i < order; i++) { + var terms = [new c_term(order)]; + for (var j = 0 ; j < (order - i); j++) terms.push(new t_term()); + for (var j = 0 ; j < i; j++) terms.push(new one_minus_t_term()); + fns.push(new _termFunc(terms)); + } + fns.push(new l_term()); // last is (1-t) to the power of the curve order + + _curveFunctionCache[order] = fns; + } + + return fns; + }; + + + /** + * calculates a point on the curve, for a Bezier of arbitrary order. + * @param curve an array of control points, eg [{x:10,y:20}, {x:50,y:50}, {x:100,y:100}, {x:120,y:100}]. For a cubic bezier this should have four points. + * @param location a decimal indicating the distance along the curve the point should be located at. this is the distance along the curve as it travels, taking the way it bends into account. should be a number from 0 to 1, inclusive. + */ + var _pointOnPath = function(curve, location) { + var cc = _getCurveFunctions(curve.length - 1), + _x = 0, _y = 0; + for (var i = 0; i < curve.length ; i++) { + _x = _x + (curve[i].x * cc[i](location)); + _y = _y + (curve[i].y * cc[i](location)); + } + + return {x:_x, y:_y}; + }; + + var _dist = function(p1,p2) { + return Math.sqrt(Math.pow(p1.x - p2.x, 2) + Math.pow(p1.y - p2.y, 2)); + }; + + var _isPoint = function(curve) { + return curve[0].x === curve[1].x && curve[0].y === curve[1].y; + }; + + /** + * finds the point that is 'distance' along the path from 'location'. this method returns both the x,y location of the point and also + * its 'location' (proportion of travel along the path); the method below - _pointAlongPathFrom - calls this method and just returns the + * point. + */ + var _pointAlongPath = function(curve, location, distance) { + + if (_isPoint(curve)) { + return { + point:curve[0], + location:location + }; + } + + var prev = _pointOnPath(curve, location), + tally = 0, + curLoc = location, + direction = distance > 0 ? 1 : -1, + cur = null; + + while (tally < Math.abs(distance)) { + curLoc += (0.005 * direction); + cur = _pointOnPath(curve, curLoc); + tally += _dist(cur, prev); + prev = cur; + } + return {point:cur, location:curLoc}; + }; + + var _length = function(curve) { + if (_isPoint(curve)) return 0; + + var prev = _pointOnPath(curve, 0), + tally = 0, + curLoc = 0, + direction = 1, + cur = null; + + while (curLoc < 1) { + curLoc += (0.005 * direction); + cur = _pointOnPath(curve, curLoc); + tally += _dist(cur, prev); + prev = cur; + } + return tally; + }; + + /** + * finds the point that is 'distance' along the path from 'location'. + */ + var _pointAlongPathFrom = function(curve, location, distance) { + return _pointAlongPath(curve, location, distance).point; + }; + + /** + * finds the location that is 'distance' along the path from 'location'. + */ + var _locationAlongPathFrom = function(curve, location, distance) { + return _pointAlongPath(curve, location, distance).location; + }; + + /** + * returns the gradient of the curve at the given location, which is a decimal between 0 and 1 inclusive. + * + * thanks // http://bimixual.org/AnimationLibrary/beziertangents.html + */ + var _gradientAtPoint = function(curve, location) { + var p1 = _pointOnPath(curve, location), + p2 = _pointOnPath(curve.slice(0, curve.length - 1), location), + dy = p2.y - p1.y, dx = p2.x - p1.x; + return dy === 0 ? Infinity : Math.atan(dy / dx); + }; + + /** + returns the gradient of the curve at the point which is 'distance' from the given location. + if this point is greater than location 1, the gradient at location 1 is returned. + if this point is less than location 0, the gradient at location 0 is returned. + */ + var _gradientAtPointAlongPathFrom = function(curve, location, distance) { + var p = _pointAlongPath(curve, location, distance); + if (p.location > 1) p.location = 1; + if (p.location < 0) p.location = 0; + return _gradientAtPoint(curve, p.location); + }; + + /** + * calculates a line that is 'length' pixels long, perpendicular to, and centered on, the path at 'distance' pixels from the given location. + * if distance is not supplied, the perpendicular for the given location is computed (ie. we set distance to zero). + */ + var _perpendicularToPathAt = function(curve, location, length, distance) { + distance = distance == null ? 0 : distance; + var p = _pointAlongPath(curve, location, distance), + m = _gradientAtPoint(curve, p.location), + _theta2 = Math.atan(-1 / m), + y = length / 2 * Math.sin(_theta2), + x = length / 2 * Math.cos(_theta2); + return [{x:p.point.x + x, y:p.point.y + y}, {x:p.point.x - x, y:p.point.y - y}]; + }; + + /** + * Calculates all intersections of the given line with the given curve. + * @param x1 + * @param y1 + * @param x2 + * @param y2 + * @param curve + * @returns {Array} + */ + var _lineIntersection = function(x1, y1, x2, y2, curve) { + var a = y2 - y1, + b = x1 - x2, + c = (x1 * (y1 - y2)) + (y1 * (x2-x1)), + coeffs = _computeCoefficients(curve), + p = [ + (a*coeffs[0][0]) + (b * coeffs[1][0]), + (a*coeffs[0][1])+(b*coeffs[1][1]), + (a*coeffs[0][2])+(b*coeffs[1][2]), + (a*coeffs[0][3])+(b*coeffs[1][3]) + c + ], + r = _cubicRoots.apply(null, p), + intersections = []; + + if (r != null) { + + for (var i = 0; i < 3; i++) { + var t = r[i], + t2 = Math.pow(t, 2), + t3 = Math.pow(t, 3), + x = [ + (coeffs[0][0] * t3) + (coeffs[0][1] * t2) + (coeffs[0][2] * t) + coeffs[0][3], + (coeffs[1][0] * t3) + (coeffs[1][1] * t2) + (coeffs[1][2] * t) + coeffs[1][3] + ]; + + // check bounds of the line + var s; + if ((x2 - x1) !== 0) { + s = (x[0] - x1) / (x2 - x1); + } + else { + s = (x[1] - y1) / (y2 - y1); + } + + if (t >= 0 && t <= 1.0 && s >= 0 && s <= 1.0) { + intersections.push(x); + } + } + } + + return intersections; + }; + + /** + * Calculates all intersections of the given box with the given curve. + * @param x X position of top left corner of box + * @param y Y position of top left corner of box + * @param w width of box + * @param h height of box + * @param curve + * @returns {Array} + */ + var _boxIntersection = function(x, y, w, h, curve) { + var i = []; + i.push.apply(i, _lineIntersection(x, y, x + w, y, curve)); + i.push.apply(i, _lineIntersection(x + w, y, x + w, y + h, curve)); + i.push.apply(i, _lineIntersection(x + w, y + h, x, y + h, curve)); + i.push.apply(i, _lineIntersection(x, y + h, x, y, curve)); + return i; + }; + + /** + * Calculates all intersections of the given bounding box with the given curve. + * @param boundingBox Bounding box, in { x:.., y:..., w:..., h:... } format. + * @param curve + * @returns {Array} + */ + var _boundingBoxIntersection = function(boundingBox, curve) { + var i = []; + i.push.apply(i, _lineIntersection(boundingBox.x, boundingBox.y, boundingBox.x + boundingBox.w, boundingBox.y, curve)); + i.push.apply(i, _lineIntersection(boundingBox.x + boundingBox.w, boundingBox.y, boundingBox.x + boundingBox.w, boundingBox.y + boundingBox.h, curve)); + i.push.apply(i, _lineIntersection(boundingBox.x + boundingBox.w, boundingBox.y + boundingBox.h, boundingBox.x, boundingBox.y + boundingBox.h, curve)); + i.push.apply(i, _lineIntersection(boundingBox.x, boundingBox.y + boundingBox.h, boundingBox.x, boundingBox.y, curve)); + return i; + }; + + + function _computeCoefficientsForAxis(curve, axis) { + return [ + -(curve[0][axis]) + (3*curve[1][axis]) + (-3 * curve[2][axis]) + curve[3][axis], + (3*(curve[0][axis])) - (6*(curve[1][axis])) + (3*(curve[2][axis])), + -3*curve[0][axis] + 3*curve[1][axis], + curve[0][axis] + ]; + } + + function _computeCoefficients(curve) + { + return [ + _computeCoefficientsForAxis(curve, "x"), + _computeCoefficientsForAxis(curve, "y") + ]; + } + + function sgn(x) { + return x < 0 ? -1 : x > 0 ? 1 : 0; + } + + function _cubicRoots(a, b, c, d) { + var A = b / a, + B = c / a, + C = d / a, + Q = (3*B - Math.pow(A, 2))/9, + R = (9*A*B - 27*C - 2*Math.pow(A, 3))/54, + D = Math.pow(Q, 3) + Math.pow(R, 2), + S, + T, + t = []; + + if (D >= 0) // complex or duplicate roots + { + S = sgn(R + Math.sqrt(D))*Math.pow(Math.abs(R + Math.sqrt(D)),(1/3)); + T = sgn(R - Math.sqrt(D))*Math.pow(Math.abs(R - Math.sqrt(D)),(1/3)); + + t[0] = -A/3 + (S + T); + t[1] = -A/3 - (S + T)/2; + t[2] = -A/3 - (S + T)/2; + + /*discard complex roots*/ + if (Math.abs(Math.sqrt(3)*(S - T)/2) !== 0) { + t[1] = -1; + t[2] = -1; + } + } + else // distinct real roots + { + var th = Math.acos(R/Math.sqrt(-Math.pow(Q, 3))); + t[0] = 2*Math.sqrt(-Q)*Math.cos(th/3) - A/3; + t[1] = 2*Math.sqrt(-Q)*Math.cos((th + 2*Math.PI)/3) - A/3; + t[2] = 2*Math.sqrt(-Q)*Math.cos((th + 4*Math.PI)/3) - A/3; + } + + // discard out of spec roots + for (var i = 0; i < 3; i++) { + if (t[i] < 0 || t[i] > 1.0) { + t[i] = -1; + } + } + + return t; + } + + var jsBezier = this.jsBezier = { + distanceFromCurve : _distanceFromCurve, + gradientAtPoint : _gradientAtPoint, + gradientAtPointAlongCurveFrom : _gradientAtPointAlongPathFrom, + nearestPointOnCurve : _nearestPointOnCurve, + pointOnCurve : _pointOnPath, + pointAlongCurveFrom : _pointAlongPathFrom, + perpendicularToCurveAt : _perpendicularToPathAt, + locationAlongCurveFrom:_locationAlongPathFrom, + getLength:_length, + lineIntersection:_lineIntersection, + boxIntersection:_boxIntersection, + boundingBoxIntersection:_boundingBoxIntersection, + version:"0.9.0" + }; + + if (typeof exports !== "undefined") { + exports.jsBezier = jsBezier; + } + +}).call(typeof window !== 'undefined' ? window : this); + +/** + * Biltong v0.4.0 + * + * Various geometry functions written as part of jsPlumb and perhaps useful for others. + * + * Copyright (c) 2017 jsPlumb + * https://jsplumbtoolkit.com + * + * Permission is hereby granted, free of charge, to any person + * obtaining a copy of this software and associated documentation + * files (the "Software"), to deal in the Software without + * restriction, including without limitation the rights to use, + * copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following + * conditions: + * + * The above copyright notice and this permission notice shall be + * included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. + */ +;(function() { + + "use strict"; + var root = this; + + var Biltong = root.Biltong = { + version:"0.4.0" + }; + + if (typeof exports !== "undefined") { + exports.Biltong = Biltong; + } + + var _isa = function(a) { return Object.prototype.toString.call(a) === "[object Array]"; }, + _pointHelper = function(p1, p2, fn) { + p1 = _isa(p1) ? p1 : [p1.x, p1.y]; + p2 = _isa(p2) ? p2 : [p2.x, p2.y]; + return fn(p1, p2); + }, + /** + * @name Biltong.gradient + * @function + * @desc Calculates the gradient of a line between the two points. + * @param {Point} p1 First point, either as a 2 entry array or object with `left` and `top` properties. + * @param {Point} p2 Second point, either as a 2 entry array or object with `left` and `top` properties. + * @return {Float} The gradient of a line between the two points. + */ + _gradient = Biltong.gradient = function(p1, p2) { + return _pointHelper(p1, p2, function(_p1, _p2) { + if (_p2[0] == _p1[0]) + return _p2[1] > _p1[1] ? Infinity : -Infinity; + else if (_p2[1] == _p1[1]) + return _p2[0] > _p1[0] ? 0 : -0; + else + return (_p2[1] - _p1[1]) / (_p2[0] - _p1[0]); + }); + }, + /** + * @name Biltong.normal + * @function + * @desc Calculates the gradient of a normal to a line between the two points. + * @param {Point} p1 First point, either as a 2 entry array or object with `left` and `top` properties. + * @param {Point} p2 Second point, either as a 2 entry array or object with `left` and `top` properties. + * @return {Float} The gradient of a normal to a line between the two points. + */ + _normal = Biltong.normal = function(p1, p2) { + return -1 / _gradient(p1, p2); + }, + /** + * @name Biltong.lineLength + * @function + * @desc Calculates the length of a line between the two points. + * @param {Point} p1 First point, either as a 2 entry array or object with `left` and `top` properties. + * @param {Point} p2 Second point, either as a 2 entry array or object with `left` and `top` properties. + * @return {Float} The length of a line between the two points. + */ + _lineLength = Biltong.lineLength = function(p1, p2) { + return _pointHelper(p1, p2, function(_p1, _p2) { + return Math.sqrt(Math.pow(_p2[1] - _p1[1], 2) + Math.pow(_p2[0] - _p1[0], 2)); + }); + }, + /** + * @name Biltong.quadrant + * @function + * @desc Calculates the quadrant in which the angle between the two points lies. + * @param {Point} p1 First point, either as a 2 entry array or object with `left` and `top` properties. + * @param {Point} p2 Second point, either as a 2 entry array or object with `left` and `top` properties. + * @return {Integer} The quadrant - 1 for upper right, 2 for lower right, 3 for lower left, 4 for upper left. + */ + _quadrant = Biltong.quadrant = function(p1, p2) { + return _pointHelper(p1, p2, function(_p1, _p2) { + if (_p2[0] > _p1[0]) { + return (_p2[1] > _p1[1]) ? 2 : 1; + } + else if (_p2[0] == _p1[0]) { + return _p2[1] > _p1[1] ? 2 : 1; + } + else { + return (_p2[1] > _p1[1]) ? 3 : 4; + } + }); + }, + /** + * @name Biltong.theta + * @function + * @desc Calculates the angle between the two points. + * @param {Point} p1 First point, either as a 2 entry array or object with `left` and `top` properties. + * @param {Point} p2 Second point, either as a 2 entry array or object with `left` and `top` properties. + * @return {Float} The angle between the two points. + */ + _theta = Biltong.theta = function(p1, p2) { + return _pointHelper(p1, p2, function(_p1, _p2) { + var m = _gradient(_p1, _p2), + t = Math.atan(m), + s = _quadrant(_p1, _p2); + if ((s == 4 || s== 3)) t += Math.PI; + if (t < 0) t += (2 * Math.PI); + + return t; + }); + }, + /** + * @name Biltong.intersects + * @function + * @desc Calculates whether or not the two rectangles intersect. + * @param {Rectangle} r1 First rectangle, as a js object in the form `{x:.., y:.., w:.., h:..}` + * @param {Rectangle} r2 Second rectangle, as a js object in the form `{x:.., y:.., w:.., h:..}` + * @return {Boolean} True if the rectangles intersect, false otherwise. + */ + _intersects = Biltong.intersects = function(r1, r2) { + var x1 = r1.x, x2 = r1.x + r1.w, y1 = r1.y, y2 = r1.y + r1.h, + a1 = r2.x, a2 = r2.x + r2.w, b1 = r2.y, b2 = r2.y + r2.h; + + return ( (x1 <= a1 && a1 <= x2) && (y1 <= b1 && b1 <= y2) ) || + ( (x1 <= a2 && a2 <= x2) && (y1 <= b1 && b1 <= y2) ) || + ( (x1 <= a1 && a1 <= x2) && (y1 <= b2 && b2 <= y2) ) || + ( (x1 <= a2 && a1 <= x2) && (y1 <= b2 && b2 <= y2) ) || + ( (a1 <= x1 && x1 <= a2) && (b1 <= y1 && y1 <= b2) ) || + ( (a1 <= x2 && x2 <= a2) && (b1 <= y1 && y1 <= b2) ) || + ( (a1 <= x1 && x1 <= a2) && (b1 <= y2 && y2 <= b2) ) || + ( (a1 <= x2 && x1 <= a2) && (b1 <= y2 && y2 <= b2) ); + }, + /** + * @name Biltong.encloses + * @function + * @desc Calculates whether or not r2 is completely enclosed by r1. + * @param {Rectangle} r1 First rectangle, as a js object in the form `{x:.., y:.., w:.., h:..}` + * @param {Rectangle} r2 Second rectangle, as a js object in the form `{x:.., y:.., w:.., h:..}` + * @param {Boolean} [allowSharedEdges=false] If true, the concept of enclosure allows for one or more edges to be shared by the two rectangles. + * @return {Boolean} True if r1 encloses r2, false otherwise. + */ + _encloses = Biltong.encloses = function(r1, r2, allowSharedEdges) { + var x1 = r1.x, x2 = r1.x + r1.w, y1 = r1.y, y2 = r1.y + r1.h, + a1 = r2.x, a2 = r2.x + r2.w, b1 = r2.y, b2 = r2.y + r2.h, + c = function(v1, v2, v3, v4) { return allowSharedEdges ? v1 <= v2 && v3>= v4 : v1 < v2 && v3 > v4; }; + + return c(x1,a1,x2,a2) && c(y1,b1,y2,b2); + }, + _segmentMultipliers = [null, [1, -1], [1, 1], [-1, 1], [-1, -1] ], + _inverseSegmentMultipliers = [null, [-1, -1], [-1, 1], [1, 1], [1, -1] ], + /** + * @name Biltong.pointOnLine + * @function + * @desc Calculates a point on the line from `fromPoint` to `toPoint` that is `distance` units along the length of the line. + * @param {Point} p1 First point, either as a 2 entry array or object with `left` and `top` properties. + * @param {Point} p2 Second point, either as a 2 entry array or object with `left` and `top` properties. + * @return {Point} Point on the line, in the form `{ x:..., y:... }`. + */ + _pointOnLine = Biltong.pointOnLine = function(fromPoint, toPoint, distance) { + var m = _gradient(fromPoint, toPoint), + s = _quadrant(fromPoint, toPoint), + segmentMultiplier = distance > 0 ? _segmentMultipliers[s] : _inverseSegmentMultipliers[s], + theta = Math.atan(m), + y = Math.abs(distance * Math.sin(theta)) * segmentMultiplier[1], + x = Math.abs(distance * Math.cos(theta)) * segmentMultiplier[0]; + return { x:fromPoint.x + x, y:fromPoint.y + y }; + }, + /** + * @name Biltong.perpendicularLineTo + * @function + * @desc Calculates a line of length `length` that is perpendicular to the line from `fromPoint` to `toPoint` and passes through `toPoint`. + * @param {Point} p1 First point, either as a 2 entry array or object with `left` and `top` properties. + * @param {Point} p2 Second point, either as a 2 entry array or object with `left` and `top` properties. + * @return {Line} Perpendicular line, in the form `[ { x:..., y:... }, { x:..., y:... } ]`. + */ + _perpendicularLineTo = Biltong.perpendicularLineTo = function(fromPoint, toPoint, length) { + var m = _gradient(fromPoint, toPoint), + theta2 = Math.atan(-1 / m), + y = length / 2 * Math.sin(theta2), + x = length / 2 * Math.cos(theta2); + return [{x:toPoint.x + x, y:toPoint.y + y}, {x:toPoint.x - x, y:toPoint.y - y}]; + }; +}).call(typeof window !== 'undefined' ? window : this); +; +(function () { + + "use strict"; + + /** + * Creates a Touch object. + * @param view + * @param target + * @param pageX + * @param pageY + * @param screenX + * @param screenY + * @param clientX + * @param clientY + * @returns {Touch} + * @private + */ + function _touch(view, target, pageX, pageY, screenX, screenY, clientX, clientY) { + + return new Touch({ + target:target, + identifier:_uuid(), + pageX: pageX, + pageY: pageY, + screenX: screenX, + screenY: screenY, + clientX: clientX || screenX, + clientY: clientY || screenY + }); + } + + /** + * Create a synthetic touch list from the given list of Touch objects. + * @returns {Array} + * @private + */ + function _touchList() { + var list = []; + Array.prototype.push.apply(list, arguments); + list.item = function(index) { return this[index]; }; + return list; + } + + /** + * Create a Touch object and then insert it into a synthetic touch list, returning the list.s + * @param view + * @param target + * @param pageX + * @param pageY + * @param screenX + * @param screenY + * @param clientX + * @param clientY + * @returns {Array} + * @private + */ + function _touchAndList(view, target, pageX, pageY, screenX, screenY, clientX, clientY) { + return _touchList(_touch.apply(null, arguments)); + } + + var root = this, + matchesSelector = function (el, selector, ctx) { + ctx = ctx || el.parentNode; + var possibles = ctx.querySelectorAll(selector); + for (var i = 0; i < possibles.length; i++) { + if (possibles[i] === el) { + return true; + } + } + return false; + }, + _gel = function (el) { + return (typeof el == "string" || el.constructor === String) ? document.getElementById(el) : el; + }, + _t = function (e) { + return e.srcElement || e.target; + }, + // + // gets path info for the given event - the path from target to obj, in the event's bubble chain. if doCompute + // is false we just return target for the path. + // + _pi = function(e, target, obj, doCompute) { + if (!doCompute) return { path:[target], end:1 }; + else if (typeof e.path !== "undefined" && e.path.indexOf) { + return { path: e.path, end: e.path.indexOf(obj) }; + } else { + var out = { path:[], end:-1 }, _one = function(el) { + out.path.push(el); + if (el === obj) { + out.end = out.path.length - 1; + } + else if (el.parentNode != null) { + _one(el.parentNode) + } + }; + _one(target); + return out; + } + }, + _d = function (l, fn) { + for (var i = 0, j = l.length; i < j; i++) { + if (l[i] == fn) break; + } + if (i < l.length) l.splice(i, 1); + }, + guid = 1, + // + // this function generates a guid for every handler, sets it on the handler, then adds + // it to the associated object's map of handlers for the given event. this is what enables us + // to unbind all events of some type, or all events (the second of which can be requested by the user, + // but it also used by Mottle when an element is removed.) + _store = function (obj, event, fn) { + var g = guid++; + obj.__ta = obj.__ta || {}; + obj.__ta[event] = obj.__ta[event] || {}; + // store each handler with a unique guid. + obj.__ta[event][g] = fn; + // set the guid on the handler. + fn.__tauid = g; + return g; + }, + _unstore = function (obj, event, fn) { + obj.__ta && obj.__ta[event] && delete obj.__ta[event][fn.__tauid]; + // a handler might have attached extra functions, so we unbind those too. + if (fn.__taExtra) { + for (var i = 0; i < fn.__taExtra.length; i++) { + _unbind(obj, fn.__taExtra[i][0], fn.__taExtra[i][1]); + } + fn.__taExtra.length = 0; + } + // a handler might have attached an unstore callback + fn.__taUnstore && fn.__taUnstore(); + }, + _curryChildFilter = function (children, obj, fn, evt) { + if (children == null) return fn; + else { + var c = children.split(","), + _fn = function (e) { + _fn.__tauid = fn.__tauid; + var t = _t(e), target = t; // t is the target element on which the event occurred. it is the + // element we will wish to pass to any callbacks. + var pathInfo = _pi(e, t, obj, children != null) + if (pathInfo.end != -1) { + for (var p = 0; p < pathInfo.end; p++) { + target = pathInfo.path[p]; + for (var i = 0; i < c.length; i++) { + if (matchesSelector(target, c[i], obj)) { + fn.apply(target, arguments); + } + } + } + } + }; + registerExtraFunction(fn, evt, _fn); + return _fn; + } + }, + // + // registers an 'extra' function on some event listener function we were given - a function that we + // created and bound to the element as part of our housekeeping, and which we want to unbind and remove + // whenever the given function is unbound. + registerExtraFunction = function (fn, evt, newFn) { + fn.__taExtra = fn.__taExtra || []; + fn.__taExtra.push([evt, newFn]); + }, + DefaultHandler = function (obj, evt, fn, children) { + if (isTouchDevice && touchMap[evt]) { + var tfn = _curryChildFilter(children, obj, fn, touchMap[evt]); + _bind(obj, touchMap[evt], tfn , fn); + } + if (evt === "focus" && obj.getAttribute("tabindex") == null) { + obj.setAttribute("tabindex", "1"); + } + _bind(obj, evt, _curryChildFilter(children, obj, fn, evt), fn); + }, + SmartClickHandler = function (obj, evt, fn, children) { + if (obj.__taSmartClicks == null) { + var down = function (e) { + obj.__tad = _pageLocation(e); + }, + up = function (e) { + obj.__tau = _pageLocation(e); + }, + click = function (e) { + if (obj.__tad && obj.__tau && obj.__tad[0] === obj.__tau[0] && obj.__tad[1] === obj.__tau[1]) { + for (var i = 0; i < obj.__taSmartClicks.length; i++) + obj.__taSmartClicks[i].apply(_t(e), [ e ]); + } + }; + DefaultHandler(obj, "mousedown", down, children); + DefaultHandler(obj, "mouseup", up, children); + DefaultHandler(obj, "click", click, children); + obj.__taSmartClicks = []; + } + + // store in the list of callbacks + obj.__taSmartClicks.push(fn); + // the unstore function removes this function from the object's listener list for this type. + fn.__taUnstore = function () { + _d(obj.__taSmartClicks, fn); + }; + }, + _tapProfiles = { + "tap": {touches: 1, taps: 1}, + "dbltap": {touches: 1, taps: 2}, + "contextmenu": {touches: 2, taps: 1} + }, + TapHandler = function (clickThreshold, dblClickThreshold) { + return function (obj, evt, fn, children) { + // if event is contextmenu, for devices which are mouse only, we want to + // use the default bind. + if (evt == "contextmenu" && isMouseDevice) + DefaultHandler(obj, evt, fn, children); + else { + // the issue here is that this down handler gets registered only for the + // child nodes in the first registration. in fact it should be registered with + // no child selector and then on down we should cycle through the registered + // functions to see if one of them matches. on mouseup we should execute ALL of + // the functions whose children are either null or match the element. + if (obj.__taTapHandler == null) { + var tt = obj.__taTapHandler = { + tap: [], + dbltap: [], + contextmenu: [], + down: false, + taps: 0, + downSelectors: [] + }; + var down = function (e) { + var target = _t(e), pathInfo = _pi(e, target, obj, children != null), finished = false; + for (var p = 0; p < pathInfo.end; p++) { + if (finished) return; + target = pathInfo.path[p]; + for (var i = 0; i < tt.downSelectors.length; i++) { + if (tt.downSelectors[i] == null || matchesSelector(target, tt.downSelectors[i], obj)) { + tt.down = true; + setTimeout(clearSingle, clickThreshold); + setTimeout(clearDouble, dblClickThreshold); + finished = true; + break; // we only need one match on mousedown + } + } + } + }, + up = function (e) { + if (tt.down) { + var target = _t(e), currentTarget, pathInfo; + tt.taps++; + var tc = _touchCount(e); + for (var eventId in _tapProfiles) { + if (_tapProfiles.hasOwnProperty(eventId)) { + var p = _tapProfiles[eventId]; + if (p.touches === tc && (p.taps === 1 || p.taps === tt.taps)) { + for (var i = 0; i < tt[eventId].length; i++) { + pathInfo = _pi(e, target, obj, tt[eventId][i][1] != null); + for (var pLoop = 0; pLoop < pathInfo.end; pLoop++) { + currentTarget = pathInfo.path[pLoop]; + // this is a single event registration handler. + if (tt[eventId][i][1] == null || matchesSelector(currentTarget, tt[eventId][i][1], obj)) { + tt[eventId][i][0].apply(currentTarget, [ e ]); + break; + } + } + } + } + } + } + } + }, + clearSingle = function () { + tt.down = false; + }, + clearDouble = function () { + tt.taps = 0; + }; + + DefaultHandler(obj, "mousedown", down); + DefaultHandler(obj, "mouseup", up); + } + // add this child selector (it can be null, that's fine). + obj.__taTapHandler.downSelectors.push(children); + + obj.__taTapHandler[evt].push([fn, children]); + // the unstore function removes this function from the object's listener list for this type. + fn.__taUnstore = function () { + _d(obj.__taTapHandler[evt], fn); + }; + } + }; + }, + meeHelper = function (type, evt, obj, target) { + for (var i in obj.__tamee[type]) { + if (obj.__tamee[type].hasOwnProperty(i)) { + obj.__tamee[type][i].apply(target, [ evt ]); + } + } + }, + MouseEnterExitHandler = function () { + var activeElements = []; + return function (obj, evt, fn, children) { + if (!obj.__tamee) { + // __tamee holds a flag saying whether the mouse is currently "in" the element, and a list of + // both mouseenter and mouseexit functions. + obj.__tamee = { over: false, mouseenter: [], mouseexit: [] }; + // register over and out functions + var over = function (e) { + var t = _t(e); + if ((children == null && (t == obj && !obj.__tamee.over)) || (matchesSelector(t, children, obj) && (t.__tamee == null || !t.__tamee.over))) { + meeHelper("mouseenter", e, obj, t); + t.__tamee = t.__tamee || {}; + t.__tamee.over = true; + activeElements.push(t); + } + }, + out = function (e) { + var t = _t(e); + // is the current target one of the activeElements? and is the + // related target NOT a descendant of it? + for (var i = 0; i < activeElements.length; i++) { + if (t == activeElements[i] && !matchesSelector((e.relatedTarget || e.toElement), "*", t)) { + t.__tamee.over = false; + activeElements.splice(i, 1); + meeHelper("mouseexit", e, obj, t); + } + } + }; + + _bind(obj, "mouseover", _curryChildFilter(children, obj, over, "mouseover"), over); + _bind(obj, "mouseout", _curryChildFilter(children, obj, out, "mouseout"), out); + } + + fn.__taUnstore = function () { + delete obj.__tamee[evt][fn.__tauid]; + }; + + _store(obj, evt, fn); + obj.__tamee[evt][fn.__tauid] = fn; + }; + }, + isTouchDevice = "ontouchstart" in document.documentElement, + isMouseDevice = "onmousedown" in document.documentElement, + touchMap = { "mousedown": "touchstart", "mouseup": "touchend", "mousemove": "touchmove" }, + touchstart = "touchstart", touchend = "touchend", touchmove = "touchmove", + iev = (function () { + var rv = -1; + if (navigator.appName == 'Microsoft Internet Explorer') { + var ua = navigator.userAgent, + re = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})"); + if (re.exec(ua) != null) + rv = parseFloat(RegExp.$1); + } + return rv; + })(), + isIELT9 = iev > -1 && iev < 9, + _genLoc = function (e, prefix) { + if (e == null) return [ 0, 0 ]; + var ts = _touches(e), t = _getTouch(ts, 0); + return [t[prefix + "X"], t[prefix + "Y"]]; + }, + _pageLocation = function (e) { + if (e == null) return [ 0, 0 ]; + if (isIELT9) { + return [ e.clientX + document.documentElement.scrollLeft, e.clientY + document.documentElement.scrollTop ]; + } + else { + return _genLoc(e, "page"); + } + }, + _screenLocation = function (e) { + return _genLoc(e, "screen"); + }, + _clientLocation = function (e) { + return _genLoc(e, "client"); + }, + _getTouch = function (touches, idx) { + return touches.item ? touches.item(idx) : touches[idx]; + }, + _touches = function (e) { + return e.touches && e.touches.length > 0 ? e.touches : + e.changedTouches && e.changedTouches.length > 0 ? e.changedTouches : + e.targetTouches && e.targetTouches.length > 0 ? e.targetTouches : + [ e ]; + }, + _touchCount = function (e) { + return _touches(e).length; + }, + //http://www.quirksmode.org/blog/archives/2005/10/_and_the_winner_1.html + _bind = function (obj, type, fn, originalFn) { + _store(obj, type, fn); + originalFn.__tauid = fn.__tauid; + if (obj.addEventListener) + obj.addEventListener(type, fn, false); + else if (obj.attachEvent) { + var key = type + fn.__tauid; + obj["e" + key] = fn; + // TODO look at replacing with .call(..) + obj[key] = function () { + obj["e" + key] && obj["e" + key](window.event); + }; + obj.attachEvent("on" + type, obj[key]); + } + }, + _unbind = function (obj, type, fn) { + if (fn == null) return; + _each(obj, function () { + var _el = _gel(this); + _unstore(_el, type, fn); + // it has been bound if there is a tauid. otherwise it was not bound and we can ignore it. + if (fn.__tauid != null) { + if (_el.removeEventListener) { + _el.removeEventListener(type, fn, false); + if (isTouchDevice && touchMap[type]) _el.removeEventListener(touchMap[type], fn, false); + } + else if (this.detachEvent) { + var key = type + fn.__tauid; + _el[key] && _el.detachEvent("on" + type, _el[key]); + _el[key] = null; + _el["e" + key] = null; + } + } + + // if a touch event was also registered, deregister now. + if (fn.__taTouchProxy) { + _unbind(obj, fn.__taTouchProxy[1], fn.__taTouchProxy[0]); + } + }); + }, + _each = function (obj, fn) { + if (obj == null) return; + // if a list (or list-like), use it. if a string, get a list + // by running the string through querySelectorAll. else, assume + // it's an Element. + // obj.top is "unknown" in IE8. + obj = (typeof Window !== "undefined" && (typeof obj.top !== "unknown" && obj == obj.top)) ? [ obj ] : + (typeof obj !== "string") && (obj.tagName == null && obj.length != null) ? obj : + typeof obj === "string" ? document.querySelectorAll(obj) + : [ obj ]; + + for (var i = 0; i < obj.length; i++) + fn.apply(obj[i]); + }, + _uuid = function () { + return ('xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) { + var r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8); + return v.toString(16); + })); + }; + + /** + * Mottle offers support for abstracting out the differences + * between touch and mouse devices, plus "smart click" functionality + * (don't fire click if the mouse has moved between mousedown and mouseup), + * and synthesized click/tap events. + * @class Mottle + * @constructor + * @param {Object} params Constructor params + * @param {Number} [params.clickThreshold=250] Threshold, in milliseconds beyond which a touchstart followed by a touchend is not considered to be a click. + * @param {Number} [params.dblClickThreshold=450] Threshold, in milliseconds beyond which two successive tap events are not considered to be a click. + * @param {Boolean} [params.smartClicks=false] If true, won't fire click events if the mouse has moved between mousedown and mouseup. Note that this functionality + * requires that Mottle consume the mousedown event, and so may not be viable in all use cases. + */ + root.Mottle = function (params) { + params = params || {}; + var clickThreshold = params.clickThreshold || 250, + dblClickThreshold = params.dblClickThreshold || 450, + mouseEnterExitHandler = new MouseEnterExitHandler(), + tapHandler = new TapHandler(clickThreshold, dblClickThreshold), + _smartClicks = params.smartClicks, + _doBind = function (obj, evt, fn, children) { + if (fn == null) return; + _each(obj, function () { + var _el = _gel(this); + if (_smartClicks && evt === "click") + SmartClickHandler(_el, evt, fn, children); + else if (evt === "tap" || evt === "dbltap" || evt === "contextmenu") { + tapHandler(_el, evt, fn, children); + } + else if (evt === "mouseenter" || evt == "mouseexit") + mouseEnterExitHandler(_el, evt, fn, children); + else + DefaultHandler(_el, evt, fn, children); + }); + }; + + /** + * Removes an element from the DOM, and deregisters all event handlers for it. You should use this + * to ensure you don't leak memory. + * @method remove + * @param {String|Element} el Element, or id of the element, to remove. + * @return {Mottle} The current Mottle instance; you can chain this method. + */ + this.remove = function (el) { + _each(el, function () { + var _el = _gel(this); + if (_el.__ta) { + for (var evt in _el.__ta) { + if (_el.__ta.hasOwnProperty(evt)) { + for (var h in _el.__ta[evt]) { + if (_el.__ta[evt].hasOwnProperty(h)) + _unbind(_el, evt, _el.__ta[evt][h]); + } + } + } + } + _el.parentNode && _el.parentNode.removeChild(_el); + }); + return this; + }; + + /** + * Register an event handler, optionally as a delegate for some set of descendant elements. Note + * that this method takes either 3 or 4 arguments - if you supply 3 arguments it is assumed you have + * omitted the `children` parameter, and that the event handler should be bound directly to the given element. + * @method on + * @param {Element[]|Element|String} el Either an Element, or a CSS spec for a list of elements, or an array of Elements. + * @param {String} [children] Comma-delimited list of selectors identifying allowed children. + * @param {String} event Event ID. + * @param {Function} fn Event handler function. + * @return {Mottle} The current Mottle instance; you can chain this method. + */ + this.on = function (el, event, children, fn) { + var _el = arguments[0], + _c = arguments.length == 4 ? arguments[2] : null, + _e = arguments[1], + _f = arguments[arguments.length - 1]; + + _doBind(_el, _e, _f, _c); + return this; + }; + + /** + * Cancel delegate event handling for the given function. Note that unlike with 'on' you do not supply + * a list of child selectors here: it removes event delegation from all of the child selectors for which the + * given function was registered (if any). + * @method off + * @param {Element[]|Element|String} el Element - or ID of element - from which to remove event listener. + * @param {String} event Event ID. + * @param {Function} fn Event handler function. + * @return {Mottle} The current Mottle instance; you can chain this method. + */ + this.off = function (el, event, fn) { + _unbind(el, event, fn); + return this; + }; + + /** + * Triggers some event for a given element. + * @method trigger + * @param {Element} el Element for which to trigger the event. + * @param {String} event Event ID. + * @param {Event} originalEvent The original event. Should be optional of course, but currently is not, due + * to the jsPlumb use case that caused this method to be added. + * @param {Object} [payload] Optional object to set as `payload` on the generated event; useful for message passing. + * @return {Mottle} The current Mottle instance; you can chain this method. + */ + this.trigger = function (el, event, originalEvent, payload) { + // MouseEvent undefined in old IE; that's how we know it's a mouse event. A fine Microsoft paradox. + var originalIsMouse = isMouseDevice && (typeof MouseEvent === "undefined" || originalEvent == null || originalEvent.constructor === MouseEvent); + + var eventToBind = (isTouchDevice && !isMouseDevice && touchMap[event]) ? touchMap[event] : event, + bindingAMouseEvent = !(isTouchDevice && !isMouseDevice && touchMap[event]); + + var pl = _pageLocation(originalEvent), sl = _screenLocation(originalEvent), cl = _clientLocation(originalEvent); + _each(el, function () { + var _el = _gel(this), evt; + originalEvent = originalEvent || { + screenX: sl[0], + screenY: sl[1], + clientX: cl[0], + clientY: cl[1] + }; + + var _decorate = function (_evt) { + if (payload) _evt.payload = payload; + }; + + var eventGenerators = { + "TouchEvent": function (evt) { + + var touchList = _touchAndList(window, _el, 0, pl[0], pl[1], sl[0], sl[1], cl[0], cl[1]), + init = evt.initTouchEvent || evt.initEvent; + + init(eventToBind, true, true, window, null, sl[0], sl[1], + cl[0], cl[1], false, false, false, false, + touchList, touchList, touchList, 1, 0); + }, + "MouseEvents": function (evt) { + evt.initMouseEvent(eventToBind, true, true, window, 0, + sl[0], sl[1], + cl[0], cl[1], + false, false, false, false, 1, _el); + } + }; + + if (document.createEvent) { + + var ite = !bindingAMouseEvent && !originalIsMouse && (isTouchDevice && touchMap[event]), + evtName = ite ? "TouchEvent" : "MouseEvents"; + + evt = document.createEvent(evtName); + eventGenerators[evtName](evt); + _decorate(evt); + _el.dispatchEvent(evt); + } + else if (document.createEventObject) { + evt = document.createEventObject(); + evt.eventType = evt.eventName = eventToBind; + evt.screenX = sl[0]; + evt.screenY = sl[1]; + evt.clientX = cl[0]; + evt.clientY = cl[1]; + _decorate(evt); + _el.fireEvent('on' + eventToBind, evt); + } + }); + return this; + } + }; + + /** + * Static method to assist in 'consuming' an element: uses `stopPropagation` where available, or sets + * `e.returnValue=false` where it is not. + * @method Mottle.consume + * @param {Event} e Event to consume + * @param {Boolean} [doNotPreventDefault=false] If true, does not call `preventDefault()` on the event. + */ + root.Mottle.consume = function (e, doNotPreventDefault) { + if (e.stopPropagation) + e.stopPropagation(); + else + e.returnValue = false; + + if (!doNotPreventDefault && e.preventDefault) + e.preventDefault(); + }; + + /** + * Gets the page location corresponding to the given event. For touch events this means get the page location of the first touch. + * @method Mottle.pageLocation + * @param {Event} e Event to get page location for. + * @return {Number[]} [left, top] for the given event. + */ + root.Mottle.pageLocation = _pageLocation; + + /** + * Forces touch events to be turned "on". Useful for testing: even if you don't have a touch device, you can still + * trigger a touch event when this is switched on and it will be captured and acted on. + * @method setForceTouchEvents + * @param {Boolean} value If true, force touch events to be on. + */ + root.Mottle.setForceTouchEvents = function (value) { + isTouchDevice = value; + }; + + /** + * Forces mouse events to be turned "on". Useful for testing: even if you don't have a mouse, you can still + * trigger a mouse event when this is switched on and it will be captured and acted on. + * @method setForceMouseEvents + * @param {Boolean} value If true, force mouse events to be on. + */ + root.Mottle.setForceMouseEvents = function (value) { + isMouseDevice = value; + }; + + root.Mottle.version = "0.8.0"; + + if (typeof exports !== "undefined") { + exports.Mottle = root.Mottle; + } + +}).call(typeof window === "undefined" ? this : window); + +/** + drag/drop functionality for use with jsPlumb but with + no knowledge of jsPlumb. supports multiple scopes (separated by whitespace), dragging + multiple elements, constrain to parent, drop filters, drag start filters, custom + css classes. + + a lot of the functionality of this script is expected to be plugged in: + + addClass + removeClass + + addEvent + removeEvent + + getPosition + setPosition + getSize + + indexOf + intersects + + the name came from here: + + http://mrsharpoblunto.github.io/foswig.js/ + + copyright 2016 jsPlumb + */ + +;(function() { + + "use strict"; + var root = this; + + var _suggest = function(list, item, head) { + if (list.indexOf(item) === -1) { + head ? list.unshift(item) : list.push(item); + return true; + } + return false; + }; + + var _vanquish = function(list, item) { + var idx = list.indexOf(item); + if (idx !== -1) list.splice(idx, 1); + }; + + var _difference = function(l1, l2) { + var d = []; + for (var i = 0; i < l1.length; i++) { + if (l2.indexOf(l1[i]) === -1) + d.push(l1[i]); + } + return d; + }; + + var _isString = function(f) { + return f == null ? false : (typeof f === "string" || f.constructor === String); + }; + + var getOffsetRect = function (elem) { + // (1) + var box = elem.getBoundingClientRect(), + body = document.body, + docElem = document.documentElement, + // (2) + scrollTop = window.pageYOffset || docElem.scrollTop || body.scrollTop, + scrollLeft = window.pageXOffset || docElem.scrollLeft || body.scrollLeft, + // (3) + clientTop = docElem.clientTop || body.clientTop || 0, + clientLeft = docElem.clientLeft || body.clientLeft || 0, + // (4) + top = box.top + scrollTop - clientTop, + left = box.left + scrollLeft - clientLeft; + + return { top: Math.round(top), left: Math.round(left) }; + }; + + var matchesSelector = function(el, selector, ctx) { + ctx = ctx || el.parentNode; + var possibles = ctx.querySelectorAll(selector); + for (var i = 0; i < possibles.length; i++) { + if (possibles[i] === el) + return true; + } + return false; + }; + + var findDelegateElement = function(parentElement, childElement, selector) { + if (matchesSelector(childElement, selector, parentElement)) { + return childElement; + } else { + var currentParent = childElement.parentNode; + while (currentParent != null && currentParent !== parentElement) { + if (matchesSelector(currentParent, selector, parentElement)) { + return currentParent; + } else { + currentParent = currentParent.parentNode; + } + } + } + }; + + /** + * Finds all elements matching the given selector, for the given parent. In order to support "scoped root" selectors, + * ie. things like "> .someClass", that is .someClass elements that are direct children of `parentElement`, we have to + * jump through a small hoop here: when a delegate draggable is registered, we write a `katavorio-draggable` attribute + * on the element on which the draggable is registered. Then when this method runs, we grab the value of that attribute and + * prepend it as part of the selector we're looking for. So "> .someClass" ends up being written as + * "[katavorio-draggable='...' > .someClass]", which works with querySelectorAll. + * + * @param availableSelectors + * @param parentElement + * @param childElement + * @returns {*} + */ + var findMatchingSelector = function(availableSelectors, parentElement, childElement) { + var el = null; + var draggableId = parentElement.getAttribute("katavorio-draggable"), + prefix = draggableId != null ? "[katavorio-draggable='" + draggableId + "'] " : ""; + + for (var i = 0; i < availableSelectors.length; i++) { + el = findDelegateElement(parentElement, childElement, prefix + availableSelectors[i].selector); + if (el != null) { + return [ availableSelectors[i], el ]; + } + } + return null; + }; + + var iev = (function() { + var rv = -1; + if (navigator.appName === 'Microsoft Internet Explorer') { + var ua = navigator.userAgent, + re = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})"); + if (re.exec(ua) != null) + rv = parseFloat(RegExp.$1); + } + return rv; + })(), + DEFAULT_GRID_X = 10, + DEFAULT_GRID_Y = 10, + isIELT9 = iev > -1 && iev < 9, + isIE9 = iev === 9, + _pl = function(e) { + if (isIELT9) { + return [ e.clientX + document.documentElement.scrollLeft, e.clientY + document.documentElement.scrollTop ]; + } + else { + var ts = _touches(e), t = _getTouch(ts, 0); + // for IE9 pageX might be null if the event was synthesized. We try for pageX/pageY first, + // falling back to clientX/clientY if necessary. In every other browser we want to use pageX/pageY. + return isIE9 ? [t.pageX || t.clientX, t.pageY || t.clientY] : [t.pageX, t.pageY]; + } + }, + _getTouch = function(touches, idx) { return touches.item ? touches.item(idx) : touches[idx]; }, + _touches = function(e) { + return e.touches && e.touches.length > 0 ? e.touches : + e.changedTouches && e.changedTouches.length > 0 ? e.changedTouches : + e.targetTouches && e.targetTouches.length > 0 ? e.targetTouches : + [ e ]; + }, + _classes = { + delegatedDraggable:"katavorio-delegated-draggable", // elements that are the delegated drag handler for a bunch of other elements + draggable:"katavorio-draggable", // draggable elements + droppable:"katavorio-droppable", // droppable elements + drag : "katavorio-drag", // elements currently being dragged + selected:"katavorio-drag-selected", // elements in current drag selection + active : "katavorio-drag-active", // droppables that are targets of a currently dragged element + hover : "katavorio-drag-hover", // droppables over which a matching drag element is hovering + noSelect : "katavorio-drag-no-select", // added to the body to provide a hook to suppress text selection + ghostProxy:"katavorio-ghost-proxy", // added to a ghost proxy element in use when a drag has exited the bounds of its parent. + clonedDrag:"katavorio-clone-drag" // added to a node that is a clone of an element created at the start of a drag + }, + _defaultScope = "katavorio-drag-scope", + _events = [ "stop", "start", "drag", "drop", "over", "out", "beforeStart" ], + _devNull = function() {}, + _true = function() { return true; }, + _foreach = function(l, fn, from) { + for (var i = 0; i < l.length; i++) { + if (l[i] != from) + fn(l[i]); + } + }, + _setDroppablesActive = function(dd, val, andHover, drag) { + _foreach(dd, function(e) { + e.setActive(val); + if (val) e.updatePosition(); + if (andHover) e.setHover(drag, val); + }); + }, + _each = function(obj, fn) { + if (obj == null) return; + obj = !_isString(obj) && (obj.tagName == null && obj.length != null) ? obj : [ obj ]; + for (var i = 0; i < obj.length; i++) + fn.apply(obj[i], [ obj[i] ]); + }, + _consume = function(e) { + if (e.stopPropagation) { + e.stopPropagation(); + e.preventDefault(); + } + else { + e.returnValue = false; + } + }, + _defaultInputFilterSelector = "input,textarea,select,button,option", + // + // filters out events on all input elements, like textarea, checkbox, input, select. + _inputFilter = function(e, el, _katavorio) { + var t = e.srcElement || e.target; + return !matchesSelector(t, _katavorio.getInputFilterSelector(), el); + }; + + var Super = function(el, params, css, scope) { + this.params = params || {}; + this.el = el; + this.params.addClass(this.el, this._class); + this.uuid = _uuid(); + var enabled = true; + this.setEnabled = function(e) { enabled = e; }; + this.isEnabled = function() { return enabled; }; + this.toggleEnabled = function() { enabled = !enabled; }; + this.setScope = function(scopes) { + this.scopes = scopes ? scopes.split(/\s+/) : [ scope ]; + }; + this.addScope = function(scopes) { + var m = {}; + _each(this.scopes, function(s) { m[s] = true;}); + _each(scopes ? scopes.split(/\s+/) : [], function(s) { m[s] = true;}); + this.scopes = []; + for (var i in m) this.scopes.push(i); + }; + this.removeScope = function(scopes) { + var m = {}; + _each(this.scopes, function(s) { m[s] = true;}); + _each(scopes ? scopes.split(/\s+/) : [], function(s) { delete m[s];}); + this.scopes = []; + for (var i in m) this.scopes.push(i); + }; + this.toggleScope = function(scopes) { + var m = {}; + _each(this.scopes, function(s) { m[s] = true;}); + _each(scopes ? scopes.split(/\s+/) : [], function(s) { + if (m[s]) delete m[s]; + else m[s] = true; + }); + this.scopes = []; + for (var i in m) this.scopes.push(i); + }; + this.setScope(params.scope); + this.k = params.katavorio; + return params.katavorio; + }; + + var TRUE = function() { return true; }; + var FALSE = function() { return false; }; + + var Drag = function(el, params, css, scope) { + this._class = css.draggable; + var k = Super.apply(this, arguments); + this.rightButtonCanDrag = this.params.rightButtonCanDrag; + var downAt = [0,0], posAtDown = null, pagePosAtDown = null, pageDelta = [0,0], moving = false, initialScroll = [0,0], + consumeStartEvent = this.params.consumeStartEvent !== false, + dragEl = this.el, + clone = this.params.clone, + scroll = this.params.scroll, + _multipleDrop = params.multipleDrop !== false, + isConstrained = false, + useGhostProxy = params.ghostProxy === true ? TRUE : params.ghostProxy && typeof params.ghostProxy === "function" ? params.ghostProxy : FALSE, + ghostProxy = function(el) { return el.cloneNode(true); }, + elementToDrag = null, + availableSelectors = [], + activeSelectorParams = null, // which, if any, selector config is currently active. + ghostProxyParent = params.ghostProxyParent, + currentParentPosition, + ghostParentPosition, + ghostDx, + ghostDy; + + // if an initial selector was provided, push the entire set of params as a selector config. + if (params.selector) { + var draggableId = el.getAttribute("katavorio-draggable"); + if (draggableId == null) { + draggableId = "" + new Date().getTime(); + el.setAttribute("katavorio-draggable", draggableId); + } + + availableSelectors.push(params); + } + + var snapThreshold = params.snapThreshold, + _snap = function(pos, gridX, gridY, thresholdX, thresholdY) { + var _dx = Math.floor(pos[0] / gridX), + _dxl = gridX * _dx, + _dxt = _dxl + gridX, + _x = Math.abs(pos[0] - _dxl) <= thresholdX ? _dxl : Math.abs(_dxt - pos[0]) <= thresholdX ? _dxt : pos[0]; + + var _dy = Math.floor(pos[1] / gridY), + _dyl = gridY * _dy, + _dyt = _dyl + gridY, + _y = Math.abs(pos[1] - _dyl) <= thresholdY ? _dyl : Math.abs(_dyt - pos[1]) <= thresholdY ? _dyt : pos[1]; + + return [ _x, _y]; + }; + + this.posses = []; + this.posseRoles = {}; + + this.toGrid = function(pos) { + if (this.params.grid == null) { + return pos; + } + else { + var tx = this.params.grid ? this.params.grid[0] / 2 : snapThreshold ? snapThreshold : DEFAULT_GRID_X / 2, + ty = this.params.grid ? this.params.grid[1] / 2 : snapThreshold ? snapThreshold : DEFAULT_GRID_Y / 2; + + return _snap(pos, this.params.grid[0], this.params.grid[1], tx, ty); + } + }; + + this.snap = function(x, y) { + if (dragEl == null) return; + x = x || (this.params.grid ? this.params.grid[0] : DEFAULT_GRID_X); + y = y || (this.params.grid ? this.params.grid[1] : DEFAULT_GRID_Y); + var p = this.params.getPosition(dragEl), + tx = this.params.grid ? this.params.grid[0] / 2 : snapThreshold, + ty = this.params.grid ? this.params.grid[1] / 2 : snapThreshold; + + this.params.setPosition(dragEl, _snap(p, x, y, tx, ty)); + }; + + this.setUseGhostProxy = function(val) { + useGhostProxy = val ? TRUE : FALSE; + }; + + var constrain; + var negativeFilter = function(pos) { + return (params.allowNegative === false) ? [ Math.max (0, pos[0]), Math.max(0, pos[1]) ] : pos; + }; + + var _setConstrain = function(value) { + constrain = typeof value === "function" ? value : value ? function(pos, dragEl, _constrainRect, _size) { + return negativeFilter([ + Math.max(0, Math.min(_constrainRect.w - _size[0], pos[0])), + Math.max(0, Math.min(_constrainRect.h - _size[1], pos[1])) + ]); + }.bind(this) : function(pos) { return negativeFilter(pos); }; + }.bind(this); + + _setConstrain(typeof this.params.constrain === "function" ? this.params.constrain : (this.params.constrain || this.params.containment)); + + + /** + * Sets whether or not the Drag is constrained. A value of 'true' means constrain to parent bounds; a function + * will be executed and returns true if the position is allowed. + * @param value + */ + this.setConstrain = function(value) { + _setConstrain(value); + }; + + var revertFunction; + /** + * Sets a function to call on drag stop, which, if it returns true, indicates that the given element should + * revert to its position before the previous drag. + * @param fn + */ + this.setRevert = function(fn) { + revertFunction = fn; + }; + + if (this.params.revert) { + revertFunction = this.params.revert; + } + + var _assignId = function(obj) { + if (typeof obj === "function") { + obj._katavorioId = _uuid(); + return obj._katavorioId; + } else { + return obj; + } + }, + // a map of { spec -> [ fn, exclusion ] } entries. + _filters = {}, + _testFilter = function(e) { + for (var key in _filters) { + var f = _filters[key]; + var rv = f[0](e); + if (f[1]) rv = !rv; + if (!rv) return false; + } + return true; + }, + _setFilter = this.setFilter = function(f, _exclude) { + if (f) { + var key = _assignId(f); + _filters[key] = [ + function(e) { + var t = e.srcElement || e.target, m; + if (_isString(f)) { + m = matchesSelector(t, f, el); + } + else if (typeof f === "function") { + m = f(e, el); + } + return m; + }, + _exclude !== false + ]; + + } + }, + _addFilter = this.addFilter = _setFilter, + _removeFilter = this.removeFilter = function(f) { + var key = typeof f === "function" ? f._katavorioId : f; + delete _filters[key]; + }; + + this.clearAllFilters = function() { + _filters = {}; + }; + + this.canDrag = this.params.canDrag || _true; + + var constrainRect, + matchingDroppables = [], + intersectingDroppables = []; + + this.addSelector = function(params) { + if (params.selector) { + availableSelectors.push(params); + } + }; + + this.downListener = function(e) { + if (e.defaultPrevented) { return; } + var isNotRightClick = this.rightButtonCanDrag || (e.which !== 3 && e.button !== 2); + if (isNotRightClick && this.isEnabled() && this.canDrag()) { + + var _f = _testFilter(e) && _inputFilter(e, this.el, this.k); + if (_f) { + + activeSelectorParams = null; + elementToDrag = null; + + // if (selector) { + // elementToDrag = findDelegateElement(this.el, e.target || e.srcElement, selector); + // if(elementToDrag == null) { + // return; + // } + // } + if (availableSelectors.length > 0) { + var match = findMatchingSelector(availableSelectors, this.el, e.target || e.srcElement); + if (match != null) { + activeSelectorParams = match[0]; + elementToDrag = match[1]; + } + // elementToDrag = findDelegateElement(this.el, e.target || e.srcElement, selector); + if(elementToDrag == null) { + return; + } + } + else { + elementToDrag = this.el; + } + + if (clone) { + dragEl = elementToDrag.cloneNode(true); + this.params.addClass(dragEl, _classes.clonedDrag); + + dragEl.setAttribute("id", null); + dragEl.style.position = "absolute"; + + if (this.params.parent != null) { + var p = this.params.getPosition(this.el); + dragEl.style.left = p[0] + "px"; + dragEl.style.top = p[1] + "px"; + this.params.parent.appendChild(dragEl); + } else { + // the clone node is added to the body; getOffsetRect gives us a value + // relative to the body. + var b = getOffsetRect(elementToDrag); + dragEl.style.left = b.left + "px"; + dragEl.style.top = b.top + "px"; + + document.body.appendChild(dragEl); + } + + } else { + dragEl = elementToDrag; + } + + consumeStartEvent && _consume(e); + downAt = _pl(e); + if (dragEl && dragEl.parentNode) + { + initialScroll = [dragEl.parentNode.scrollLeft, dragEl.parentNode.scrollTop]; + } + // + this.params.bind(document, "mousemove", this.moveListener); + this.params.bind(document, "mouseup", this.upListener); + k.markSelection(this); + k.markPosses(this); + this.params.addClass(document.body, css.noSelect); + _dispatch("beforeStart", {el:this.el, pos:posAtDown, e:e, drag:this}); + } + else if (this.params.consumeFilteredEvents) { + _consume(e); + } + } + }.bind(this); + + this.moveListener = function(e) { + if (downAt) { + if (!moving) { + var _continue = _dispatch("start", {el:this.el, pos:posAtDown, e:e, drag:this}); + if (_continue !== false) { + if (!downAt) { + return; + } + this.mark(true); + moving = true; + } else { + this.abort(); + } + } + + // it is possible that the start event caused the drag to be aborted. So we check + // again that we are currently dragging. + if (downAt) { + intersectingDroppables.length = 0; + var pos = _pl(e), dx = pos[0] - downAt[0], dy = pos[1] - downAt[1], + z = this.params.ignoreZoom ? 1 : k.getZoom(); + if (dragEl && dragEl.parentNode) + { + dx += dragEl.parentNode.scrollLeft - initialScroll[0]; + dy += dragEl.parentNode.scrollTop - initialScroll[1]; + } + dx /= z; + dy /= z; + this.moveBy(dx, dy, e); + k.updateSelection(dx, dy, this); + k.updatePosses(dx, dy, this); + } + } + }.bind(this); + + this.upListener = function(e) { + if (downAt) { + downAt = null; + this.params.unbind(document, "mousemove", this.moveListener); + this.params.unbind(document, "mouseup", this.upListener); + this.params.removeClass(document.body, css.noSelect); + this.unmark(e); + k.unmarkSelection(this, e); + k.unmarkPosses(this, e); + this.stop(e); + + k.notifyPosseDragStop(this, e); + moving = false; + intersectingDroppables.length = 0; + + if (clone) { + dragEl && dragEl.parentNode && dragEl.parentNode.removeChild(dragEl); + dragEl = null; + } else { + if (revertFunction && revertFunction(dragEl, this.params.getPosition(dragEl)) === true) { + this.params.setPosition(dragEl, posAtDown); + _dispatch("revert", dragEl); + } + } + + } + }.bind(this); + + this.getFilters = function() { return _filters; }; + + this.abort = function() { + if (downAt != null) { + this.upListener(); + } + }; + + /** + * Returns the element that was last dragged. This may be some original element from the DOM, or if `clone` is + * set, then its actually a copy of some original DOM element. In some client calls to this method, it is the + * actual element that was dragged that is desired. In others, it is the original DOM element that the user + * wishes to get - in which case, pass true for `retrieveOriginalElement`. + * + * @returns {*} + */ + this.getDragElement = function(retrieveOriginalElement) { + return retrieveOriginalElement ? elementToDrag || this.el : dragEl || this.el; + }; + + var listeners = {"start":[], "drag":[], "stop":[], "over":[], "out":[], "beforeStart":[], "revert":[] }; + if (params.events.start) listeners.start.push(params.events.start); + if (params.events.beforeStart) listeners.beforeStart.push(params.events.beforeStart); + if (params.events.stop) listeners.stop.push(params.events.stop); + if (params.events.drag) listeners.drag.push(params.events.drag); + if (params.events.revert) listeners.revert.push(params.events.revert); + + this.on = function(evt, fn) { + if (listeners[evt]) listeners[evt].push(fn); + }; + + this.off = function(evt, fn) { + if (listeners[evt]) { + var l = []; + for (var i = 0; i < listeners[evt].length; i++) { + if (listeners[evt][i] !== fn) l.push(listeners[evt][i]); + } + listeners[evt] = l; + } + }; + + var _dispatch = function(evt, value) { + var result = null; + if (activeSelectorParams && activeSelectorParams[evt]) { + activeSelectorParams[evt](value); + } else if (listeners[evt]) { + for (var i = 0; i < listeners[evt].length; i++) { + try { + var v = listeners[evt][i](value); + if (v != null) { + result = v; + } + } + catch (e) { } + } + } + return result; + }; + + this.notifyStart = function(e) { + _dispatch("start", {el:this.el, pos:this.params.getPosition(dragEl), e:e, drag:this}); + }; + + this.stop = function(e, force) { + if (force || moving) { + var positions = [], + sel = k.getSelection(), + dPos = this.params.getPosition(dragEl); + + if (sel.length > 0) { + for (var i = 0; i < sel.length; i++) { + var p = this.params.getPosition(sel[i].el); + positions.push([ sel[i].el, { left: p[0], top: p[1] }, sel[i] ]); + } + } + else { + positions.push([ dragEl, {left:dPos[0], top:dPos[1]}, this ]); + } + + _dispatch("stop", { + el: dragEl, + pos: ghostProxyOffsets || dPos, + finalPos:dPos, + e: e, + drag: this, + selection:positions + }); + } + }; + + this.mark = function(andNotify) { + posAtDown = this.params.getPosition(dragEl); + pagePosAtDown = this.params.getPosition(dragEl, true); + pageDelta = [pagePosAtDown[0] - posAtDown[0], pagePosAtDown[1] - posAtDown[1]]; + this.size = this.params.getSize(dragEl); + matchingDroppables = k.getMatchingDroppables(this); + _setDroppablesActive(matchingDroppables, true, false, this); + this.params.addClass(dragEl, this.params.dragClass || css.drag); + + var cs; + if (this.params.getConstrainingRectangle) { + cs = this.params.getConstrainingRectangle(dragEl) + } else { + cs = this.params.getSize(dragEl.parentNode); + } + constrainRect = {w: cs[0], h: cs[1]}; + + ghostDx = 0; + ghostDy = 0; + + if (andNotify) { + k.notifySelectionDragStart(this); + } + }; + var ghostProxyOffsets; + this.unmark = function(e, doNotCheckDroppables) { + _setDroppablesActive(matchingDroppables, false, true, this); + + if (isConstrained && useGhostProxy(elementToDrag)) { + ghostProxyOffsets = [dragEl.offsetLeft - ghostDx, dragEl.offsetTop - ghostDy]; + dragEl.parentNode.removeChild(dragEl); + dragEl = elementToDrag; + } + else { + ghostProxyOffsets = null; + } + + this.params.removeClass(dragEl, this.params.dragClass || css.drag); + matchingDroppables.length = 0; + isConstrained = false; + if (!doNotCheckDroppables) { + if (intersectingDroppables.length > 0 && ghostProxyOffsets) { + params.setPosition(elementToDrag, ghostProxyOffsets); + } + intersectingDroppables.sort(_rankSort); + for (var i = 0; i < intersectingDroppables.length; i++) { + var retVal = intersectingDroppables[i].drop(this, e); + if (retVal === true) break; + } + } + }; + this.moveBy = function(dx, dy, e) { + intersectingDroppables.length = 0; + + var desiredLoc = this.toGrid([posAtDown[0] + dx, posAtDown[1] + dy]), + cPos = constrain(desiredLoc, dragEl, constrainRect, this.size); + + // if we should use a ghost proxy... + if (useGhostProxy(this.el)) { + // and the element has been dragged outside of its parent bounds + if (desiredLoc[0] !== cPos[0] || desiredLoc[1] !== cPos[1]) { + + // ...if ghost proxy not yet created + if (!isConstrained) { + // create it + var gp = ghostProxy(elementToDrag); + params.addClass(gp, _classes.ghostProxy); + + if (ghostProxyParent) { + ghostProxyParent.appendChild(gp); + // find offset between drag el's parent the ghost parent + currentParentPosition = params.getPosition(elementToDrag.parentNode, true); + ghostParentPosition = params.getPosition(params.ghostProxyParent, true); + ghostDx = currentParentPosition[0] - ghostParentPosition[0]; + ghostDy = currentParentPosition[1] - ghostParentPosition[1]; + + } else { + elementToDrag.parentNode.appendChild(gp); + } + + // the ghost proxy is the drag element + dragEl = gp; + // set this flag so we dont recreate the ghost proxy + isConstrained = true; + } + // now the drag position can be the desired position, as the ghost proxy can support it. + cPos = desiredLoc; + } + else { + // if the element is not outside of its parent bounds, and ghost proxy is in place, + if (isConstrained) { + // remove the ghost proxy from the dom + dragEl.parentNode.removeChild(dragEl); + // reset the drag element to the original element + dragEl = elementToDrag; + // clear this flag. + isConstrained = false; + currentParentPosition = null; + ghostParentPosition = null; + ghostDx = 0; + ghostDy = 0; + } + } + } + + var rect = { x:cPos[0], y:cPos[1], w:this.size[0], h:this.size[1]}, + pageRect = { x:rect.x + pageDelta[0], y:rect.y + pageDelta[1], w:rect.w, h:rect.h}, + focusDropElement = null; + + this.params.setPosition(dragEl, [cPos[0] + ghostDx, cPos[1] + ghostDy]); + + for (var i = 0; i < matchingDroppables.length; i++) { + var r2 = { x:matchingDroppables[i].pagePosition[0], y:matchingDroppables[i].pagePosition[1], w:matchingDroppables[i].size[0], h:matchingDroppables[i].size[1]}; + if (this.params.intersects(pageRect, r2) && (_multipleDrop || focusDropElement == null || focusDropElement === matchingDroppables[i].el) && matchingDroppables[i].canDrop(this)) { + if (!focusDropElement) focusDropElement = matchingDroppables[i].el; + intersectingDroppables.push(matchingDroppables[i]); + matchingDroppables[i].setHover(this, true, e); + } + else if (matchingDroppables[i].isHover()) { + matchingDroppables[i].setHover(this, false, e); + } + } + + _dispatch("drag", {el:this.el, pos:cPos, e:e, drag:this}); + + /* test to see if the parent needs to be scrolled (future) + if (scroll) { + var pnsl = dragEl.parentNode.scrollLeft, pnst = dragEl.parentNode.scrollTop; + console.log("scroll!", pnsl, pnst); + }*/ + }; + this.destroy = function() { + this.params.unbind(this.el, "mousedown", this.downListener); + this.params.unbind(document, "mousemove", this.moveListener); + this.params.unbind(document, "mouseup", this.upListener); + this.downListener = null; + this.upListener = null; + this.moveListener = null; + }; + + // init:register mousedown, and perhaps set a filter + this.params.bind(this.el, "mousedown", this.downListener); + + // if handle provided, use that. otherwise, try to set a filter. + // note that a `handle` selector always results in filterExclude being set to false, ie. + // the selector defines the handle element(s). + if (this.params.handle) + _setFilter(this.params.handle, false); + else + _setFilter(this.params.filter, this.params.filterExclude); + }; + + var Drop = function(el, params, css, scope) { + this._class = css.droppable; + this.params = params || {}; + this.rank = params.rank || 0; + this._activeClass = this.params.activeClass || css.active; + this._hoverClass = this.params.hoverClass || css.hover; + Super.apply(this, arguments); + var hover = false; + this.allowLoopback = this.params.allowLoopback !== false; + + this.setActive = function(val) { + this.params[val ? "addClass" : "removeClass"](this.el, this._activeClass); + }; + + this.updatePosition = function() { + this.position = this.params.getPosition(this.el); + this.pagePosition = this.params.getPosition(this.el, true); + this.size = this.params.getSize(this.el); + }; + + this.canDrop = this.params.canDrop || function(drag) { + return true; + }; + + this.isHover = function() { return hover; }; + + this.setHover = function(drag, val, e) { + // if turning off hover but this was not the drag that caused the hover, ignore. + if (val || this.el._katavorioDragHover == null || this.el._katavorioDragHover === drag.el._katavorio) { + this.params[val ? "addClass" : "removeClass"](this.el, this._hoverClass); + this.el._katavorioDragHover = val ? drag.el._katavorio : null; + if (hover !== val) { + this.params.events[val ? "over" : "out"]({el: this.el, e: e, drag: drag, drop: this}); + } + hover = val; + } + }; + + /** + * A drop event. `drag` is the corresponding Drag object, which may be a Drag for some specific element, or it + * may be a Drag on some element acting as a delegate for elements contained within it. + * @param drag + * @param event + * @returns {*} + */ + this.drop = function(drag, event) { + return this.params.events["drop"]({ drag:drag, e:event, drop:this }); + }; + + this.destroy = function() { + this._class = null; + this._activeClass = null; + this._hoverClass = null; + hover = null; + }; + }; + + var _uuid = function() { + return ('xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) { + var r = Math.random()*16|0, v = c === 'x' ? r : (r&0x3|0x8); + return v.toString(16); + })); + }; + + var _rankSort = function(a,b) { + return a.rank < b.rank ? 1 : a.rank > b.rank ? -1 : 0; + }; + + var _gel = function(el) { + if (el == null) return null; + el = (typeof el === "string" || el.constructor === String) ? document.getElementById(el) : el; + if (el == null) return null; + el._katavorio = el._katavorio || _uuid(); + return el; + }; + + root.Katavorio = function(katavorioParams) { + + var _selection = [], + _selectionMap = {}; + + this._dragsByScope = {}; + this._dropsByScope = {}; + var _zoom = 1, + _reg = function(obj, map) { + _each(obj, function(_obj) { + for(var i = 0; i < _obj.scopes.length; i++) { + map[_obj.scopes[i]] = map[_obj.scopes[i]] || []; + map[_obj.scopes[i]].push(_obj); + } + }); + }, + _unreg = function(obj, map) { + var c = 0; + _each(obj, function(_obj) { + for(var i = 0; i < _obj.scopes.length; i++) { + if (map[_obj.scopes[i]]) { + var idx = katavorioParams.indexOf(map[_obj.scopes[i]], _obj); + if (idx !== -1) { + map[_obj.scopes[i]].splice(idx, 1); + c++; + } + } + } + }); + + return c > 0 ; + }, + _getMatchingDroppables = this.getMatchingDroppables = function(drag) { + var dd = [], _m = {}; + for (var i = 0; i < drag.scopes.length; i++) { + var _dd = this._dropsByScope[drag.scopes[i]]; + if (_dd) { + for (var j = 0; j < _dd.length; j++) { + if (_dd[j].canDrop(drag) && !_m[_dd[j].uuid] && (_dd[j].allowLoopback || _dd[j].el !== drag.el)) { + _m[_dd[j].uuid] = true; + dd.push(_dd[j]); + } + } + } + } + dd.sort(_rankSort); + return dd; + }, + _prepareParams = function(p) { + p = p || {}; + var _p = { + events:{} + }, i; + for (i in katavorioParams) _p[i] = katavorioParams[i]; + for (i in p) _p[i] = p[i]; + // events + + for (i = 0; i < _events.length; i++) { + _p.events[_events[i]] = p[_events[i]] || _devNull; + } + _p.katavorio = this; + return _p; + }.bind(this), + _mistletoe = function(existingDrag, params) { + for (var i = 0; i < _events.length; i++) { + if (params[_events[i]]) { + existingDrag.on(_events[i], params[_events[i]]); + } + } + }.bind(this), + _css = {}, + overrideCss = katavorioParams.css || {}, + _scope = katavorioParams.scope || _defaultScope; + + // prepare map of css classes based on defaults frst, then optional overrides + for (var i in _classes) _css[i] = _classes[i]; + for (var i in overrideCss) _css[i] = overrideCss[i]; + + var inputFilterSelector = katavorioParams.inputFilterSelector || _defaultInputFilterSelector; + /** + * Gets the selector identifying which input elements to filter from drag events. + * @method getInputFilterSelector + * @return {String} Current input filter selector. + */ + this.getInputFilterSelector = function() { return inputFilterSelector; }; + + /** + * Sets the selector identifying which input elements to filter from drag events. + * @method setInputFilterSelector + * @param {String} selector Input filter selector to set. + * @return {Katavorio} Current instance; method may be chained. + */ + this.setInputFilterSelector = function(selector) { + inputFilterSelector = selector; + return this; + }; + + /** + * Either makes the given element draggable, or identifies it as an element inside which some identified list + * of elements may be draggable. + * @param el + * @param params + * @returns {Array} + */ + this.draggable = function(el, params) { + var o = []; + _each(el, function (_el) { + _el = _gel(_el); + if (_el != null) { + if (_el._katavorioDrag == null) { + var p = _prepareParams(params); + _el._katavorioDrag = new Drag(_el, p, _css, _scope); + _reg(_el._katavorioDrag, this._dragsByScope); + o.push(_el._katavorioDrag); + katavorioParams.addClass(_el, p.selector ? _css.delegatedDraggable : _css.draggable); + } + else { + _mistletoe(_el._katavorioDrag, params); + } + } + }.bind(this)); + return o; + }; + + this.droppable = function(el, params) { + var o = []; + _each(el, function(_el) { + _el = _gel(_el); + if (_el != null) { + var drop = new Drop(_el, _prepareParams(params), _css, _scope); + _el._katavorioDrop = _el._katavorioDrop || []; + _el._katavorioDrop.push(drop); + _reg(drop, this._dropsByScope); + o.push(drop); + katavorioParams.addClass(_el, _css.droppable); + } + }.bind(this)); + return o; + }; + + /** + * @name Katavorio#select + * @function + * @desc Adds an element to the current selection (for multiple node drag) + * @param {Element|String} DOM element - or id of the element - to add. + */ + this.select = function(el) { + _each(el, function() { + var _el = _gel(this); + if (_el && _el._katavorioDrag) { + if (!_selectionMap[_el._katavorio]) { + _selection.push(_el._katavorioDrag); + _selectionMap[_el._katavorio] = [ _el, _selection.length - 1 ]; + katavorioParams.addClass(_el, _css.selected); + } + } + }); + return this; + }; + + /** + * @name Katavorio#deselect + * @function + * @desc Removes an element from the current selection (for multiple node drag) + * @param {Element|String} DOM element - or id of the element - to remove. + */ + this.deselect = function(el) { + _each(el, function() { + var _el = _gel(this); + if (_el && _el._katavorio) { + var e = _selectionMap[_el._katavorio]; + if (e) { + var _s = []; + for (var i = 0; i < _selection.length; i++) + if (_selection[i].el !== _el) _s.push(_selection[i]); + _selection = _s; + delete _selectionMap[_el._katavorio]; + katavorioParams.removeClass(_el, _css.selected); + } + } + }); + return this; + }; + + this.deselectAll = function() { + for (var i in _selectionMap) { + var d = _selectionMap[i]; + katavorioParams.removeClass(d[0], _css.selected); + } + + _selection.length = 0; + _selectionMap = {}; + }; + + this.markSelection = function(drag) { + _foreach(_selection, function(e) { e.mark(); }, drag); + }; + + this.markPosses = function(drag) { + if (drag.posses) { + _each(drag.posses, function(p) { + if (drag.posseRoles[p] && _posses[p]) { + _foreach(_posses[p].members, function (d) { + d.mark(); + }, drag); + } + }) + } + }; + + this.unmarkSelection = function(drag, event) { + _foreach(_selection, function(e) { e.unmark(event); }, drag); + }; + + this.unmarkPosses = function(drag, event) { + if (drag.posses) { + _each(drag.posses, function(p) { + if (drag.posseRoles[p] && _posses[p]) { + _foreach(_posses[p].members, function (d) { + d.unmark(event, true); + }, drag); + } + }); + } + }; + + this.getSelection = function() { return _selection.slice(0); }; + + this.updateSelection = function(dx, dy, drag) { + _foreach(_selection, function(e) { e.moveBy(dx, dy); }, drag); + }; + + var _posseAction = function(fn, drag) { + if (drag.posses) { + _each(drag.posses, function(p) { + if (drag.posseRoles[p] && _posses[p]) { + _foreach(_posses[p].members, function (e) { + fn(e); + }, drag); + } + }); + } + }; + + this.updatePosses = function(dx, dy, drag) { + _posseAction(function(e) { e.moveBy(dx, dy); }, drag); + }; + + this.notifyPosseDragStop = function(drag, evt) { + _posseAction(function(e) { e.stop(evt, true); }, drag); + }; + + this.notifySelectionDragStop = function(drag, evt) { + _foreach(_selection, function(e) { e.stop(evt, true); }, drag); + }; + + this.notifySelectionDragStart = function(drag, evt) { + _foreach(_selection, function(e) { e.notifyStart(evt);}, drag); + }; + + this.setZoom = function(z) { _zoom = z; }; + this.getZoom = function() { return _zoom; }; + + // does the work of changing scopes + var _scopeManip = function(kObj, scopes, map, fn) { + _each(kObj, function(_kObj) { + _unreg(_kObj, map); // deregister existing scopes + _kObj[fn](scopes); // set scopes + _reg(_kObj, map); // register new ones + }); + }; + + _each([ "set", "add", "remove", "toggle"], function(v) { + this[v + "Scope"] = function(el, scopes) { + _scopeManip(el._katavorioDrag, scopes, this._dragsByScope, v + "Scope"); + _scopeManip(el._katavorioDrop, scopes, this._dropsByScope, v + "Scope"); + }.bind(this); + this[v + "DragScope"] = function(el, scopes) { + _scopeManip(el.constructor === Drag ? el : el._katavorioDrag, scopes, this._dragsByScope, v + "Scope"); + }.bind(this); + this[v + "DropScope"] = function(el, scopes) { + _scopeManip(el.constructor === Drop ? el : el._katavorioDrop, scopes, this._dropsByScope, v + "Scope"); + }.bind(this); + }.bind(this)); + + this.snapToGrid = function(x, y) { + for (var s in this._dragsByScope) { + _foreach(this._dragsByScope[s], function(d) { d.snap(x, y); }); + } + }; + + this.getDragsForScope = function(s) { return this._dragsByScope[s]; }; + this.getDropsForScope = function(s) { return this._dropsByScope[s]; }; + + var _destroy = function(el, type, map) { + el = _gel(el); + if (el[type]) { + + // remove from selection, if present. + var selIdx = _selection.indexOf(el[type]); + if (selIdx >= 0) { + _selection.splice(selIdx, 1); + } + + if (_unreg(el[type], map)) { + _each(el[type], function(kObj) { kObj.destroy() }); + } + + delete el[type]; + } + }; + + var _removeListener = function(el, type, evt, fn) { + el = _gel(el); + if (el[type]) { + el[type].off(evt, fn); + } + }; + + this.elementRemoved = function(el) { + this.destroyDraggable(el); + this.destroyDroppable(el); + }; + + /** + * Either completely remove drag functionality from the given element, or remove a specific event handler. If you + * call this method with a single argument - the element - all drag functionality is removed from it. Otherwise, if + * you provide an event name and listener function, this function is de-registered (if found). + * @param el Element to update + * @param {string} [evt] Optional event name to unsubscribe + * @param {Function} [fn] Optional function to unsubscribe + */ + this.destroyDraggable = function(el, evt, fn) { + if (arguments.length === 1) { + _destroy(el, "_katavorioDrag", this._dragsByScope); + } else { + _removeListener(el, "_katavorioDrag", evt, fn); + } + }; + + /** + * Either completely remove drop functionality from the given element, or remove a specific event handler. If you + * call this method with a single argument - the element - all drop functionality is removed from it. Otherwise, if + * you provide an event name and listener function, this function is de-registered (if found). + * @param el Element to update + * @param {string} [evt] Optional event name to unsubscribe + * @param {Function} [fn] Optional function to unsubscribe + */ + this.destroyDroppable = function(el, evt, fn) { + if (arguments.length === 1) { + _destroy(el, "_katavorioDrop", this._dropsByScope); + } else { + _removeListener(el, "_katavorioDrop", evt, fn); + } + }; + + this.reset = function() { + this._dragsByScope = {}; + this._dropsByScope = {}; + _selection = []; + _selectionMap = {}; + _posses = {}; + }; + + // ----- groups + var _posses = {}; + + var _processOneSpec = function(el, _spec, dontAddExisting) { + var posseId = _isString(_spec) ? _spec : _spec.id; + var active = _isString(_spec) ? true : _spec.active !== false; + var posse = _posses[posseId] || (function() { + var g = {name:posseId, members:[]}; + _posses[posseId] = g; + return g; + })(); + _each(el, function(_el) { + if (_el._katavorioDrag) { + + if (dontAddExisting && _el._katavorioDrag.posseRoles[posse.name] != null) return; + + _suggest(posse.members, _el._katavorioDrag); + _suggest(_el._katavorioDrag.posses, posse.name); + _el._katavorioDrag.posseRoles[posse.name] = active; + } + }); + return posse; + }; + + /** + * Add the given element to the posse with the given id, creating the group if it at first does not exist. + * @method addToPosse + * @param {Element} el Element to add. + * @param {String...|Object...} spec Variable args parameters. Each argument can be a either a String, indicating + * the ID of a Posse to which the element should be added as an active participant, or an Object containing + * `{ id:"posseId", active:false/true}`. In the latter case, if `active` is not provided it is assumed to be + * true. + * @returns {Posse|Posse[]} The Posse(s) to which the element(s) was/were added. + */ + this.addToPosse = function(el, spec) { + + var posses = []; + + for (var i = 1; i < arguments.length; i++) { + posses.push(_processOneSpec(el, arguments[i])); + } + + return posses.length === 1 ? posses[0] : posses; + }; + + /** + * Sets the posse(s) for the element with the given id, creating those that do not yet exist, and removing from + * the element any current Posses that are not specified by this method call. This method will not change the + * active/passive state if it is given a posse in which the element is already a member. + * @method setPosse + * @param {Element} el Element to set posse(s) on. + * @param {String...|Object...} spec Variable args parameters. Each argument can be a either a String, indicating + * the ID of a Posse to which the element should be added as an active participant, or an Object containing + * `{ id:"posseId", active:false/true}`. In the latter case, if `active` is not provided it is assumed to be + * true. + * @returns {Posse|Posse[]} The Posse(s) to which the element(s) now belongs. + */ + this.setPosse = function(el, spec) { + + var posses = []; + + for (var i = 1; i < arguments.length; i++) { + posses.push(_processOneSpec(el, arguments[i], true).name); + } + + _each(el, function(_el) { + if (_el._katavorioDrag) { + var diff = _difference(_el._katavorioDrag.posses, posses); + var p = []; + Array.prototype.push.apply(p, _el._katavorioDrag.posses); + for (var i = 0; i < diff.length; i++) { + this.removeFromPosse(_el, diff[i]); + } + } + }.bind(this)); + + return posses.length === 1 ? posses[0] : posses; + }; + + /** + * Remove the given element from the given posse(s). + * @method removeFromPosse + * @param {Element} el Element to remove. + * @param {String...} posseId Varargs parameter: one value for each posse to remove the element from. + */ + this.removeFromPosse = function(el, posseId) { + if (arguments.length < 2) throw new TypeError("No posse id provided for remove operation"); + for(var i = 1; i < arguments.length; i++) { + posseId = arguments[i]; + _each(el, function (_el) { + if (_el._katavorioDrag && _el._katavorioDrag.posses) { + var d = _el._katavorioDrag; + _each(posseId, function (p) { + _vanquish(_posses[p].members, d); + _vanquish(d.posses, p); + delete d.posseRoles[p]; + }); + } + }); + } + }; + + /** + * Remove the given element from all Posses to which it belongs. + * @method removeFromAllPosses + * @param {Element|Element[]} el Element to remove from Posses. + */ + this.removeFromAllPosses = function(el) { + _each(el, function(_el) { + if (_el._katavorioDrag && _el._katavorioDrag.posses) { + var d = _el._katavorioDrag; + _each(d.posses, function(p) { + _vanquish(_posses[p].members, d); + }); + d.posses.length = 0; + d.posseRoles = {}; + } + }); + }; + + /** + * Changes the participation state for the element in the Posse with the given ID. + * @param {Element|Element[]} el Element(s) to change state for. + * @param {String} posseId ID of the Posse to change element state for. + * @param {Boolean} state True to make active, false to make passive. + */ + this.setPosseState = function(el, posseId, state) { + var posse = _posses[posseId]; + if (posse) { + _each(el, function(_el) { + if (_el._katavorioDrag && _el._katavorioDrag.posses) { + _el._katavorioDrag.posseRoles[posse.name] = state; + } + }); + } + }; + + }; + + root.Katavorio.version = "1.0.0"; + + if (typeof exports !== "undefined") { + exports.Katavorio = root.Katavorio; + } + +}).call(typeof window !== 'undefined' ? window : this); + + +(function() { + + var root = this; + root.jsPlumbUtil = root.jsPlumbUtil || {}; + var jsPlumbUtil = root.jsPlumbUtil; + + if (typeof exports !=='undefined') { exports.jsPlumbUtil = jsPlumbUtil;} + + + function isArray(a) { + return Object.prototype.toString.call(a) === "[object Array]"; + } + jsPlumbUtil.isArray = isArray; + function isNumber(n) { + return Object.prototype.toString.call(n) === "[object Number]"; + } + jsPlumbUtil.isNumber = isNumber; + function isString(s) { + return typeof s === "string"; + } + jsPlumbUtil.isString = isString; + function isBoolean(s) { + return typeof s === "boolean"; + } + jsPlumbUtil.isBoolean = isBoolean; + function isNull(s) { + return s == null; + } + jsPlumbUtil.isNull = isNull; + function isObject(o) { + return o == null ? false : Object.prototype.toString.call(o) === "[object Object]"; + } + jsPlumbUtil.isObject = isObject; + function isDate(o) { + return Object.prototype.toString.call(o) === "[object Date]"; + } + jsPlumbUtil.isDate = isDate; + function isFunction(o) { + return Object.prototype.toString.call(o) === "[object Function]"; + } + jsPlumbUtil.isFunction = isFunction; + function isNamedFunction(o) { + return isFunction(o) && o.name != null && o.name.length > 0; + } + jsPlumbUtil.isNamedFunction = isNamedFunction; + function isEmpty(o) { + for (var i in o) { + if (o.hasOwnProperty(i)) { + return false; + } + } + return true; + } + jsPlumbUtil.isEmpty = isEmpty; + function clone(a) { + if (isString(a)) { + return "" + a; + } + else if (isBoolean(a)) { + return !!a; + } + else if (isDate(a)) { + return new Date(a.getTime()); + } + else if (isFunction(a)) { + return a; + } + else if (isArray(a)) { + var b = []; + for (var i = 0; i < a.length; i++) { + b.push(clone(a[i])); + } + return b; + } + else if (isObject(a)) { + var c = {}; + for (var j in a) { + c[j] = clone(a[j]); + } + return c; + } + else { + return a; + } + } + jsPlumbUtil.clone = clone; + function merge(a, b, collations, overwrites) { + // first change the collations array - if present - into a lookup table, because its faster. + var cMap = {}, ar, i, oMap = {}; + collations = collations || []; + overwrites = overwrites || []; + for (i = 0; i < collations.length; i++) { + cMap[collations[i]] = true; + } + for (i = 0; i < overwrites.length; i++) { + oMap[overwrites[i]] = true; + } + var c = clone(a); + for (i in b) { + if (c[i] == null || oMap[i]) { + c[i] = b[i]; + } + else if (isString(b[i]) || isBoolean(b[i])) { + if (!cMap[i]) { + c[i] = b[i]; // if we dont want to collate, just copy it in. + } + else { + ar = []; + // if c's object is also an array we can keep its values. + ar.push.apply(ar, isArray(c[i]) ? c[i] : [c[i]]); + ar.push.apply(ar, isBoolean(b[i]) ? b[i] : [b[i]]); + c[i] = ar; + } + } + else { + if (isArray(b[i])) { + ar = []; + // if c's object is also an array we can keep its values. + if (isArray(c[i])) { + ar.push.apply(ar, c[i]); + } + ar.push.apply(ar, b[i]); + c[i] = ar; + } + else if (isObject(b[i])) { + // overwrite c's value with an object if it is not already one. + if (!isObject(c[i])) { + c[i] = {}; + } + for (var j in b[i]) { + c[i][j] = b[i][j]; + } + } + } + } + return c; + } + jsPlumbUtil.merge = merge; + function replace(inObj, path, value) { + if (inObj == null) { + return; + } + var q = inObj, t = q; + path.replace(/([^\.])+/g, function (term, lc, pos, str) { + var array = term.match(/([^\[0-9]+){1}(\[)([0-9+])/), last = pos + term.length >= str.length, _getArray = function () { + return t[array[1]] || (function () { + t[array[1]] = []; + return t[array[1]]; + })(); + }; + if (last) { + // set term = value on current t, creating term as array if necessary. + if (array) { + _getArray()[array[3]] = value; + } + else { + t[term] = value; + } + } + else { + // set to current t[term], creating t[term] if necessary. + if (array) { + var a_1 = _getArray(); + t = a_1[array[3]] || (function () { + a_1[array[3]] = {}; + return a_1[array[3]]; + })(); + } + else { + t = t[term] || (function () { + t[term] = {}; + return t[term]; + })(); + } + } + return ""; + }); + return inObj; + } + jsPlumbUtil.replace = replace; + // + // chain a list of functions, supplied by [ object, method name, args ], and return on the first + // one that returns the failValue. if none return the failValue, return the successValue. + // + function functionChain(successValue, failValue, fns) { + for (var i = 0; i < fns.length; i++) { + var o = fns[i][0][fns[i][1]].apply(fns[i][0], fns[i][2]); + if (o === failValue) { + return o; + } + } + return successValue; + } + jsPlumbUtil.functionChain = functionChain; + /** + * + * Take the given model and expand out any parameters. 'functionPrefix' is optional, and if present, helps jsplumb figure out what to do if a value is a Function. + * if you do not provide it (and doNotExpandFunctions is null, or false), jsplumb will run the given values through any functions it finds, and use the function's + * output as the value in the result. if you do provide the prefix, only functions that are named and have this prefix + * will be executed; other functions will be passed as values to the output. + * + * @param model + * @param values + * @param functionPrefix + * @param doNotExpandFunctions + * @returns {any} + */ + function populate(model, values, functionPrefix, doNotExpandFunctions) { + // for a string, see if it has parameter matches, and if so, try to make the substitutions. + var getValue = function (fromString) { + var matches = fromString.match(/(\${.*?})/g); + if (matches != null) { + for (var i = 0; i < matches.length; i++) { + var val = values[matches[i].substring(2, matches[i].length - 1)] || ""; + if (val != null) { + fromString = fromString.replace(matches[i], val); + } + } + } + return fromString; + }; + // process one entry. + var _one = function (d) { + if (d != null) { + if (isString(d)) { + return getValue(d); + } + else if (isFunction(d) && !doNotExpandFunctions && (functionPrefix == null || (d.name || "").indexOf(functionPrefix) === 0)) { + return d(values); + } + else if (isArray(d)) { + var r = []; + for (var i = 0; i < d.length; i++) { + r.push(_one(d[i])); + } + return r; + } + else if (isObject(d)) { + var s = {}; + for (var j in d) { + s[j] = _one(d[j]); + } + return s; + } + else { + return d; + } + } + }; + return _one(model); + } + jsPlumbUtil.populate = populate; + function findWithFunction(a, f) { + if (a) { + for (var i = 0; i < a.length; i++) { + if (f(a[i])) { + return i; + } + } + } + return -1; + } + jsPlumbUtil.findWithFunction = findWithFunction; + function removeWithFunction(a, f) { + var idx = findWithFunction(a, f); + if (idx > -1) { + a.splice(idx, 1); + } + return idx !== -1; + } + jsPlumbUtil.removeWithFunction = removeWithFunction; + function remove(l, v) { + var idx = l.indexOf(v); + if (idx > -1) { + l.splice(idx, 1); + } + return idx !== -1; + } + jsPlumbUtil.remove = remove; + function addWithFunction(list, item, hashFunction) { + if (findWithFunction(list, hashFunction) === -1) { + list.push(item); + } + } + jsPlumbUtil.addWithFunction = addWithFunction; + function addToList(map, key, value, insertAtStart) { + var l = map[key]; + if (l == null) { + l = []; + map[key] = l; + } + l[insertAtStart ? "unshift" : "push"](value); + return l; + } + jsPlumbUtil.addToList = addToList; + function suggest(list, item, insertAtHead) { + if (list.indexOf(item) === -1) { + if (insertAtHead) { + list.unshift(item); + } + else { + list.push(item); + } + return true; + } + return false; + } + jsPlumbUtil.suggest = suggest; + // + // extends the given obj (which can be an array) with the given constructor function, prototype functions, and + // class members, any of which may be null. + // + function extend(child, parent, _protoFn) { + var i; + parent = isArray(parent) ? parent : [parent]; + var _copyProtoChain = function (focus) { + var proto = focus.__proto__; + while (proto != null) { + if (proto.prototype != null) { + for (var j in proto.prototype) { + if (proto.prototype.hasOwnProperty(j) && !child.prototype.hasOwnProperty(j)) { + child.prototype[j] = proto.prototype[j]; + } + } + proto = proto.prototype.__proto__; + } + else { + proto = null; + } + } + }; + for (i = 0; i < parent.length; i++) { + for (var j in parent[i].prototype) { + if (parent[i].prototype.hasOwnProperty(j) && !child.prototype.hasOwnProperty(j)) { + child.prototype[j] = parent[i].prototype[j]; + } + } + _copyProtoChain(parent[i]); + } + var _makeFn = function (name, protoFn) { + return function () { + for (i = 0; i < parent.length; i++) { + if (parent[i].prototype[name]) { + parent[i].prototype[name].apply(this, arguments); + } + } + return protoFn.apply(this, arguments); + }; + }; + var _oneSet = function (fns) { + for (var k in fns) { + child.prototype[k] = _makeFn(k, fns[k]); + } + }; + if (arguments.length > 2) { + for (i = 2; i < arguments.length; i++) { + _oneSet(arguments[i]); + } + } + return child; + } + jsPlumbUtil.extend = extend; + function uuid() { + return ('xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) { + var r = Math.random() * 16 | 0, v = c === 'x' ? r : (r & 0x3 | 0x8); + return v.toString(16); + })); + } + jsPlumbUtil.uuid = uuid; + function fastTrim(s) { + if (s == null) { + return null; + } + var str = s.replace(/^\s\s*/, ''), ws = /\s/, i = str.length; + while (ws.test(str.charAt(--i))) { + } + return str.slice(0, i + 1); + } + jsPlumbUtil.fastTrim = fastTrim; + function each(obj, fn) { + obj = obj.length == null || typeof obj === "string" ? [obj] : obj; + for (var i = 0; i < obj.length; i++) { + fn(obj[i]); + } + } + jsPlumbUtil.each = each; + function map(obj, fn) { + var o = []; + for (var i = 0; i < obj.length; i++) { + o.push(fn(obj[i])); + } + return o; + } + jsPlumbUtil.map = map; + function mergeWithParents(type, map, parentAttribute) { + parentAttribute = parentAttribute || "parent"; + var _def = function (id) { + return id ? map[id] : null; + }; + var _parent = function (def) { + return def ? _def(def[parentAttribute]) : null; + }; + var _one = function (parent, def) { + if (parent == null) { + return def; + } + else { + var d_1 = merge(parent, def); + return _one(_parent(parent), d_1); + } + }; + var _getDef = function (t) { + if (t == null) { + return {}; + } + if (typeof t === "string") { + return _def(t); + } + else if (t.length) { + var done = false, i = 0, _dd = void 0; + while (!done && i < t.length) { + _dd = _getDef(t[i]); + if (_dd) { + done = true; + } + else { + i++; + } + } + return _dd; + } + }; + var d = _getDef(type); + if (d) { + return _one(_parent(d), d); + } + else { + return {}; + } + } + jsPlumbUtil.mergeWithParents = mergeWithParents; + jsPlumbUtil.logEnabled = true; + function log() { + var args = []; + for (var _i = 0; _i < arguments.length; _i++) { + args[_i] = arguments[_i]; + } + if (jsPlumbUtil.logEnabled && typeof console !== "undefined") { + try { + var msg = arguments[arguments.length - 1]; + console.log(msg); + } + catch (e) { + } + } + } + jsPlumbUtil.log = log; + /** + * Wraps one function with another, creating a placeholder for the + * wrapped function if it was null. this is used to wrap the various + * drag/drop event functions - to allow jsPlumb to be notified of + * important lifecycle events without imposing itself on the user's + * drag/drop functionality. + * @method jsPlumbUtil.wrap + * @param {Function} wrappedFunction original function to wrap; may be null. + * @param {Function} newFunction function to wrap the original with. + * @param {Object} [returnOnThisValue] Optional. Indicates that the wrappedFunction should + * not be executed if the newFunction returns a value matching 'returnOnThisValue'. + * note that this is a simple comparison and only works for primitives right now. + */ + function wrap(wrappedFunction, newFunction, returnOnThisValue) { + return function () { + var r = null; + try { + if (newFunction != null) { + r = newFunction.apply(this, arguments); + } + } + catch (e) { + log("jsPlumb function failed : " + e); + } + if ((wrappedFunction != null) && (returnOnThisValue == null || (r !== returnOnThisValue))) { + try { + r = wrappedFunction.apply(this, arguments); + } + catch (e) { + log("wrapped function failed : " + e); + } + } + return r; + }; + } + jsPlumbUtil.wrap = wrap; + var EventGenerator = /** @class */ (function () { + function EventGenerator() { + var _this = this; + this._listeners = {}; + this.eventsSuspended = false; + this.tick = false; + // this is a list of events that should re-throw any errors that occur during their dispatch. + this.eventsToDieOn = { "ready": true }; + this.queue = []; + this.bind = function (event, listener, insertAtStart) { + var _one = function (evt) { + addToList(_this._listeners, evt, listener, insertAtStart); + listener.__jsPlumb = listener.__jsPlumb || {}; + listener.__jsPlumb[uuid()] = evt; + }; + if (typeof event === "string") { + _one(event); + } + else if (event.length != null) { + for (var i = 0; i < event.length; i++) { + _one(event[i]); + } + } + return _this; + }; + this.fire = function (event, value, originalEvent) { + if (!this.tick) { + this.tick = true; + if (!this.eventsSuspended && this._listeners[event]) { + var l = this._listeners[event].length, i = 0, _gone = false, ret = null; + if (!this.shouldFireEvent || this.shouldFireEvent(event, value, originalEvent)) { + while (!_gone && i < l && ret !== false) { + // doing it this way rather than catching and then possibly re-throwing means that an error propagated by this + // method will have the whole call stack available in the debugger. + if (this.eventsToDieOn[event]) { + this._listeners[event][i].apply(this, [value, originalEvent]); + } + else { + try { + ret = this._listeners[event][i].apply(this, [value, originalEvent]); + } + catch (e) { + log("jsPlumb: fire failed for event " + event + " : " + e); + } + } + i++; + if (this._listeners == null || this._listeners[event] == null) { + _gone = true; + } + } + } + } + this.tick = false; + this._drain(); + } + else { + this.queue.unshift(arguments); + } + return this; + }; + this._drain = function () { + var n = _this.queue.pop(); + if (n) { + _this.fire.apply(_this, n); + } + }; + this.unbind = function (eventOrListener, listener) { + if (arguments.length === 0) { + this._listeners = {}; + } + else if (arguments.length === 1) { + if (typeof eventOrListener === "string") { + delete this._listeners[eventOrListener]; + } + else if (eventOrListener.__jsPlumb) { + var evt = void 0; + for (var i in eventOrListener.__jsPlumb) { + evt = eventOrListener.__jsPlumb[i]; + remove(this._listeners[evt] || [], eventOrListener); + } + } + } + else if (arguments.length === 2) { + remove(this._listeners[eventOrListener] || [], listener); + } + return this; + }; + this.getListener = function (forEvent) { + return _this._listeners[forEvent]; + }; + this.setSuspendEvents = function (val) { + _this.eventsSuspended = val; + }; + this.isSuspendEvents = function () { + return _this.eventsSuspended; + }; + this.silently = function (fn) { + _this.setSuspendEvents(true); + try { + fn(); + } + catch (e) { + log("Cannot execute silent function " + e); + } + _this.setSuspendEvents(false); + }; + this.cleanupListeners = function () { + for (var i in _this._listeners) { + _this._listeners[i] = null; + } + }; + } + return EventGenerator; + }()); + jsPlumbUtil.EventGenerator = EventGenerator; + +}).call(typeof window !== 'undefined' ? window : this); +/* + * This file contains utility functions that run in browsers only. + * + * Copyright (c) 2010 - 2018 jsPlumb (hello@jsplumbtoolkit.com) + * + * https://jsplumbtoolkit.com + * https://github.com/jsplumb/jsplumb + * + * Dual licensed under the MIT and GPL2 licenses. + */ + ;(function() { + + "use strict"; + + var root = this; + + root.jsPlumbUtil.matchesSelector = function(el, selector, ctx) { + ctx = ctx || el.parentNode; + var possibles = ctx.querySelectorAll(selector); + for (var i = 0; i < possibles.length; i++) { + if (possibles[i] === el) { + return true; + } + } + return false; + }; + + root.jsPlumbUtil.consume = function(e, doNotPreventDefault) { + if (e.stopPropagation) { + e.stopPropagation(); + } + else { + e.returnValue = false; + } + + if (!doNotPreventDefault && e.preventDefault){ + e.preventDefault(); + } + }; + + /* + * Function: sizeElement + * Helper to size and position an element. You would typically use + * this when writing your own Connector or Endpoint implementation. + * + * Parameters: + * x - [int] x position for the element origin + * y - [int] y position for the element origin + * w - [int] width of the element + * h - [int] height of the element + * + */ + root.jsPlumbUtil.sizeElement = function(el, x, y, w, h) { + if (el) { + el.style.height = h + "px"; + el.height = h; + el.style.width = w + "px"; + el.width = w; + el.style.left = x + "px"; + el.style.top = y + "px"; + } + }; + + }).call(typeof window !== 'undefined' ? window : this); + +/* + * This file contains the core code. + * + * Copyright (c) 2010 - 2018 jsPlumb (hello@jsplumbtoolkit.com) + * + * https://jsplumbtoolkit.com + * https://github.com/jsplumb/jsplumb + * + * Dual licensed under the MIT and GPL2 licenses. + */ +;(function () { + + "use strict"; + + var root = this; + + var _ju = root.jsPlumbUtil, + + /** + * creates a timestamp, using milliseconds since 1970, but as a string. + */ + _timestamp = function () { + return "" + (new Date()).getTime(); + }, + + // helper method to update the hover style whenever it, or paintStyle, changes. + // we use paintStyle as the foundation and merge hoverPaintStyle over the + // top. + _updateHoverStyle = function (component) { + if (component._jsPlumb.paintStyle && component._jsPlumb.hoverPaintStyle) { + var mergedHoverStyle = {}; + jsPlumb.extend(mergedHoverStyle, component._jsPlumb.paintStyle); + jsPlumb.extend(mergedHoverStyle, component._jsPlumb.hoverPaintStyle); + delete component._jsPlumb.hoverPaintStyle; + // we want the fill of paintStyle to override a gradient, if possible. + if (mergedHoverStyle.gradient && component._jsPlumb.paintStyle.fill) { + delete mergedHoverStyle.gradient; + } + component._jsPlumb.hoverPaintStyle = mergedHoverStyle; + } + }, + events = ["tap", "dbltap", "click", "dblclick", "mouseover", "mouseout", "mousemove", "mousedown", "mouseup", "contextmenu" ], + eventFilters = { "mouseout": "mouseleave", "mouseexit": "mouseleave" }, + _updateAttachedElements = function (component, state, timestamp, sourceElement) { + var affectedElements = component.getAttachedElements(); + if (affectedElements) { + for (var i = 0, j = affectedElements.length; i < j; i++) { + if (!sourceElement || sourceElement !== affectedElements[i]) { + affectedElements[i].setHover(state, true, timestamp); // tell the attached elements not to inform their own attached elements. + } + } + } + }, + _splitType = function (t) { + return t == null ? null : t.split(" "); + }, + _mapType = function(map, obj, typeId) { + for (var i in obj) { + map[i] = typeId; + } + }, + _each = function(fn, obj) { + obj = _ju.isArray(obj) || (obj.length != null && !_ju.isString(obj)) ? obj : [ obj ]; + for (var i = 0; i < obj.length; i++) { + try { + fn.apply(obj[i], [ obj[i] ]); + } + catch (e) { + _ju.log(".each iteration failed : " + e); + } + } + }, + _applyTypes = function (component, params, doNotRepaint) { + if (component.getDefaultType) { + var td = component.getTypeDescriptor(), map = {}; + var defType = component.getDefaultType(); + var o = _ju.merge({}, defType); + _mapType(map, defType, "__default"); + for (var i = 0, j = component._jsPlumb.types.length; i < j; i++) { + var tid = component._jsPlumb.types[i]; + if (tid !== "__default") { + var _t = component._jsPlumb.instance.getType(tid, td); + if (_t != null) { + o = _ju.merge(o, _t, [ "cssClass" ], [ "connector" ]); + _mapType(map, _t, tid); + } + } + } + + if (params) { + o = _ju.populate(o, params, "_"); + } + + component.applyType(o, doNotRepaint, map); + if (!doNotRepaint) { + component.repaint(); + } + } + }, + +// ------------------------------ BEGIN jsPlumbUIComponent -------------------------------------------- + + jsPlumbUIComponent = root.jsPlumbUIComponent = function (params) { + + _ju.EventGenerator.apply(this, arguments); + + var self = this, + a = arguments, + idPrefix = self.idPrefix, + id = idPrefix + (new Date()).getTime(); + + this._jsPlumb = { + instance: params._jsPlumb, + parameters: params.parameters || {}, + paintStyle: null, + hoverPaintStyle: null, + paintStyleInUse: null, + hover: false, + beforeDetach: params.beforeDetach, + beforeDrop: params.beforeDrop, + overlayPlacements: [], + hoverClass: params.hoverClass || params._jsPlumb.Defaults.HoverClass, + types: [], + typeCache:{} + }; + + this.cacheTypeItem = function(key, item, typeId) { + this._jsPlumb.typeCache[typeId] = this._jsPlumb.typeCache[typeId] || {}; + this._jsPlumb.typeCache[typeId][key] = item; + }; + this.getCachedTypeItem = function(key, typeId) { + return this._jsPlumb.typeCache[typeId] ? this._jsPlumb.typeCache[typeId][key] : null; + }; + + this.getId = function () { + return id; + }; + +// ----------------------------- default type -------------------------------------------- + + + var o = params.overlays || [], oo = {}; + if (this.defaultOverlayKeys) { + for (var i = 0; i < this.defaultOverlayKeys.length; i++) { + Array.prototype.push.apply(o, this._jsPlumb.instance.Defaults[this.defaultOverlayKeys[i]] || []); + } + + for (i = 0; i < o.length; i++) { + // if a string, convert to object representation so that we can store the typeid on it. + // also assign an id. + var fo = jsPlumb.convertToFullOverlaySpec(o[i]); + oo[fo[1].id] = fo; + } + } + + var _defaultType = { + overlays:oo, + parameters: params.parameters || {}, + scope: params.scope || this._jsPlumb.instance.getDefaultScope() + }; + this.getDefaultType = function() { + return _defaultType; + }; + this.appendToDefaultType = function(obj) { + for (var i in obj) { + _defaultType[i] = obj[i]; + } + }; + +// ----------------------------- end default type -------------------------------------------- + + // all components can generate events + + if (params.events) { + for (var evtName in params.events) { + self.bind(evtName, params.events[evtName]); + } + } + + // all components get this clone function. + // TODO issue 116 showed a problem with this - it seems 'a' that is in + // the clone function's scope is shared by all invocations of it, the classic + // JS closure problem. for now, jsPlumb does a version of this inline where + // it used to call clone. but it would be nice to find some time to look + // further at this. + this.clone = function () { + var o = Object.create(this.constructor.prototype); + this.constructor.apply(o, a); + return o; + }.bind(this); + + // user can supply a beforeDetach callback, which will be executed before a detach + // is performed; returning false prevents the detach. + this.isDetachAllowed = function (connection) { + var r = true; + if (this._jsPlumb.beforeDetach) { + try { + r = this._jsPlumb.beforeDetach(connection); + } + catch (e) { + _ju.log("jsPlumb: beforeDetach callback failed", e); + } + } + return r; + }; + + // user can supply a beforeDrop callback, which will be executed before a dropped + // connection is confirmed. user can return false to reject connection. + this.isDropAllowed = function (sourceId, targetId, scope, connection, dropEndpoint, source, target) { + var r = this._jsPlumb.instance.checkCondition("beforeDrop", { + sourceId: sourceId, + targetId: targetId, + scope: scope, + connection: connection, + dropEndpoint: dropEndpoint, + source: source, target: target + }); + if (this._jsPlumb.beforeDrop) { + try { + r = this._jsPlumb.beforeDrop({ + sourceId: sourceId, + targetId: targetId, + scope: scope, + connection: connection, + dropEndpoint: dropEndpoint, + source: source, target: target + }); + } + catch (e) { + _ju.log("jsPlumb: beforeDrop callback failed", e); + } + } + return r; + }; + + var domListeners = []; + + // sets the component associated with listener events. for instance, an overlay delegates + // its events back to a connector. but if the connector is swapped on the underlying connection, + // then this component must be changed. This is called by setConnector in the Connection class. + this.setListenerComponent = function (c) { + for (var i = 0; i < domListeners.length; i++) { + domListeners[i][3] = c; + } + }; + + + }; + + var _removeTypeCssHelper = function (component, typeIndex) { + var typeId = component._jsPlumb.types[typeIndex], + type = component._jsPlumb.instance.getType(typeId, component.getTypeDescriptor()); + + if (type != null && type.cssClass && component.canvas) { + component._jsPlumb.instance.removeClass(component.canvas, type.cssClass); + } + }; + + _ju.extend(root.jsPlumbUIComponent, _ju.EventGenerator, { + + getParameter: function (name) { + return this._jsPlumb.parameters[name]; + }, + + setParameter: function (name, value) { + this._jsPlumb.parameters[name] = value; + }, + + getParameters: function () { + return this._jsPlumb.parameters; + }, + + setParameters: function (p) { + this._jsPlumb.parameters = p; + }, + + getClass:function() { + return jsPlumb.getClass(this.canvas); + }, + + hasClass:function(clazz) { + return jsPlumb.hasClass(this.canvas, clazz); + }, + + addClass: function (clazz) { + jsPlumb.addClass(this.canvas, clazz); + }, + + removeClass: function (clazz) { + jsPlumb.removeClass(this.canvas, clazz); + }, + + updateClasses: function (classesToAdd, classesToRemove) { + jsPlumb.updateClasses(this.canvas, classesToAdd, classesToRemove); + }, + + setType: function (typeId, params, doNotRepaint) { + this.clearTypes(); + this._jsPlumb.types = _splitType(typeId) || []; + _applyTypes(this, params, doNotRepaint); + }, + + getType: function () { + return this._jsPlumb.types; + }, + + reapplyTypes: function (params, doNotRepaint) { + _applyTypes(this, params, doNotRepaint); + }, + + hasType: function (typeId) { + return this._jsPlumb.types.indexOf(typeId) !== -1; + }, + + addType: function (typeId, params, doNotRepaint) { + var t = _splitType(typeId), _cont = false; + if (t != null) { + for (var i = 0, j = t.length; i < j; i++) { + if (!this.hasType(t[i])) { + this._jsPlumb.types.push(t[i]); + _cont = true; + } + } + if (_cont) { + _applyTypes(this, params, doNotRepaint); + } + } + }, + + removeType: function (typeId, params, doNotRepaint) { + var t = _splitType(typeId), _cont = false, _one = function (tt) { + var idx = this._jsPlumb.types.indexOf(tt); + if (idx !== -1) { + // remove css class if necessary + _removeTypeCssHelper(this, idx); + this._jsPlumb.types.splice(idx, 1); + return true; + } + return false; + }.bind(this); + + if (t != null) { + for (var i = 0, j = t.length; i < j; i++) { + _cont = _one(t[i]) || _cont; + } + if (_cont) { + _applyTypes(this, params, doNotRepaint); + } + } + }, + clearTypes: function (params, doNotRepaint) { + var i = this._jsPlumb.types.length; + for (var j = 0; j < i; j++) { + _removeTypeCssHelper(this, 0); + this._jsPlumb.types.splice(0, 1); + } + _applyTypes(this, params, doNotRepaint); + }, + + toggleType: function (typeId, params, doNotRepaint) { + var t = _splitType(typeId); + if (t != null) { + for (var i = 0, j = t.length; i < j; i++) { + var idx = this._jsPlumb.types.indexOf(t[i]); + if (idx !== -1) { + _removeTypeCssHelper(this, idx); + this._jsPlumb.types.splice(idx, 1); + } + else { + this._jsPlumb.types.push(t[i]); + } + } + + _applyTypes(this, params, doNotRepaint); + } + }, + applyType: function (t, doNotRepaint) { + this.setPaintStyle(t.paintStyle, doNotRepaint); + this.setHoverPaintStyle(t.hoverPaintStyle, doNotRepaint); + if (t.parameters) { + for (var i in t.parameters) { + this.setParameter(i, t.parameters[i]); + } + } + this._jsPlumb.paintStyleInUse = this.getPaintStyle(); + }, + setPaintStyle: function (style, doNotRepaint) { + // this._jsPlumb.paintStyle = jsPlumb.extend({}, style); + // TODO figure out if we want components to clone paintStyle so as not to share it. + this._jsPlumb.paintStyle = style; + this._jsPlumb.paintStyleInUse = this._jsPlumb.paintStyle; + _updateHoverStyle(this); + if (!doNotRepaint) { + this.repaint(); + } + }, + getPaintStyle: function () { + return this._jsPlumb.paintStyle; + }, + setHoverPaintStyle: function (style, doNotRepaint) { + //this._jsPlumb.hoverPaintStyle = jsPlumb.extend({}, style); + // TODO figure out if we want components to clone paintStyle so as not to share it. + this._jsPlumb.hoverPaintStyle = style; + _updateHoverStyle(this); + if (!doNotRepaint) { + this.repaint(); + } + }, + getHoverPaintStyle: function () { + return this._jsPlumb.hoverPaintStyle; + }, + destroy: function (force) { + if (force || this.typeId == null) { + this.cleanupListeners(); // this is on EventGenerator + this.clone = null; + this._jsPlumb = null; + } + }, + + isHover: function () { + return this._jsPlumb.hover; + }, + + setHover: function (hover, ignoreAttachedElements, timestamp) { + // while dragging, we ignore these events. this keeps the UI from flashing and + // swishing and whatevering. + if (this._jsPlumb && !this._jsPlumb.instance.currentlyDragging && !this._jsPlumb.instance.isHoverSuspended()) { + + this._jsPlumb.hover = hover; + var method = hover ? "addClass" : "removeClass"; + + if (this.canvas != null) { + if (this._jsPlumb.instance.hoverClass != null) { + this._jsPlumb.instance[method](this.canvas, this._jsPlumb.instance.hoverClass); + } + if (this._jsPlumb.hoverClass != null) { + this._jsPlumb.instance[method](this.canvas, this._jsPlumb.hoverClass); + } + } + if (this._jsPlumb.hoverPaintStyle != null) { + this._jsPlumb.paintStyleInUse = hover ? this._jsPlumb.hoverPaintStyle : this._jsPlumb.paintStyle; + if (!this._jsPlumb.instance.isSuspendDrawing()) { + timestamp = timestamp || _timestamp(); + this.repaint({timestamp: timestamp, recalc: false}); + } + } + // get the list of other affected elements, if supported by this component. + // for a connection, its the endpoints. for an endpoint, its the connections! surprise. + if (this.getAttachedElements && !ignoreAttachedElements) { + _updateAttachedElements(this, hover, _timestamp(), this); + } + } + } + }); + +// ------------------------------ END jsPlumbUIComponent -------------------------------------------- + + var _jsPlumbInstanceIndex = 0, + getInstanceIndex = function () { + var i = _jsPlumbInstanceIndex + 1; + _jsPlumbInstanceIndex++; + return i; + }; + + var jsPlumbInstance = root.jsPlumbInstance = function (_defaults) { + + this.version = "2.9.3"; + + this.Defaults = { + Anchor: "Bottom", + Anchors: [ null, null ], + ConnectionsDetachable: true, + ConnectionOverlays: [ ], + Connector: "Bezier", + Container: null, + DoNotThrowErrors: false, + DragOptions: { }, + DropOptions: { }, + Endpoint: "Dot", + EndpointOverlays: [ ], + Endpoints: [ null, null ], + EndpointStyle: { fill: "#456" }, + EndpointStyles: [ null, null ], + EndpointHoverStyle: null, + EndpointHoverStyles: [ null, null ], + HoverPaintStyle: null, + LabelStyle: { color: "black" }, + LogEnabled: false, + Overlays: [ ], + MaxConnections: 1, + PaintStyle: { "stroke-width": 4, stroke: "#456" }, + ReattachConnections: false, + RenderMode: "svg", + Scope: "jsPlumb_DefaultScope" + }; + + if (_defaults) { + jsPlumb.extend(this.Defaults, _defaults); + } + + this.logEnabled = this.Defaults.LogEnabled; + this._connectionTypes = {}; + this._endpointTypes = {}; + + _ju.EventGenerator.apply(this); + + var _currentInstance = this, + _instanceIndex = getInstanceIndex(), + _bb = _currentInstance.bind, + _initialDefaults = {}, + _zoom = 1, + _info = function (el) { + if (el == null) { + return null; + } + else if (el.nodeType === 3 || el.nodeType === 8) { + return { el:el, text:true }; + } + else { + var _el = _currentInstance.getElement(el); + return { el: _el, id: (_ju.isString(el) && _el == null) ? el : _getId(_el) }; + } + }; + + this.getInstanceIndex = function () { + return _instanceIndex; + }; + + // CONVERTED + this.setZoom = function (z, repaintEverything) { + _zoom = z; + _currentInstance.fire("zoom", _zoom); + if (repaintEverything) { + _currentInstance.repaintEverything(); + } + return true; + }; + // CONVERTED + this.getZoom = function () { + return _zoom; + }; + + for (var i in this.Defaults) { + _initialDefaults[i] = this.Defaults[i]; + } + + var _container, _containerDelegations = []; + this.unbindContainer = function() { + if (_container != null && _containerDelegations.length > 0) { + for (var i = 0; i < _containerDelegations.length; i++) { + _currentInstance.off(_container, _containerDelegations[i][0], _containerDelegations[i][1]); + } + } + }; + this.setContainer = function (c) { + + this.unbindContainer(); + + // get container as dom element. + c = this.getElement(c); + // move existing connections and endpoints, if any. + this.select().each(function (conn) { + conn.moveParent(c); + }); + this.selectEndpoints().each(function (ep) { + ep.moveParent(c); + }); + + // set container. + var previousContainer = _container; + _container = c; + _containerDelegations.length = 0; + var eventAliases = { + "endpointclick":"endpointClick", + "endpointdblclick":"endpointDblClick" + }; + + var _oneDelegateHandler = function (id, e, componentType) { + var t = e.srcElement || e.target, + jp = (t && t.parentNode ? t.parentNode._jsPlumb : null) || (t ? t._jsPlumb : null) || (t && t.parentNode && t.parentNode.parentNode ? t.parentNode.parentNode._jsPlumb : null); + if (jp) { + jp.fire(id, jp, e); + var alias = componentType ? eventAliases[componentType + id] || id : id; + // jsplumb also fires every event coming from components/overlays. That's what the test for `jp.component` is for. + _currentInstance.fire(alias, jp.component || jp, e); + } + }; + + var _addOneDelegate = function(eventId, selector, fn) { + _containerDelegations.push([eventId, fn]); + _currentInstance.on(_container, eventId, selector, fn); + }; + + // delegate one event on the container to jsplumb elements. it might be possible to + // abstract this out: each of endpoint, connection and overlay could register themselves with + // jsplumb as "component types" or whatever, and provide a suitable selector. this would be + // done by the renderer (although admittedly from 2.0 onwards we're not supporting vml anymore) + var _oneDelegate = function (id) { + // connections. + _addOneDelegate(id, ".jtk-connector", function (e) { + _oneDelegateHandler(id, e); + }); + // endpoints. note they can have an enclosing div, or not. + _addOneDelegate(id, ".jtk-endpoint", function (e) { + _oneDelegateHandler(id, e, "endpoint"); + }); + // overlays + _addOneDelegate(id, ".jtk-overlay", function (e) { + _oneDelegateHandler(id, e); + }); + }; + + for (var i = 0; i < events.length; i++) { + _oneDelegate(events[i]); + } + + // managed elements + for (var elId in managedElements) { + var el = managedElements[elId].el; + if (el.parentNode === previousContainer) { + previousContainer.removeChild(el); + _container.appendChild(el); + } + } + + }; + this.getContainer = function () { + return _container; + }; + + this.bind = function (event, fn) { + if ("ready" === event && initialized) { + fn(); + } + else { + _bb.apply(_currentInstance, [event, fn]); + } + }; + + _currentInstance.importDefaults = function (d) { + for (var i in d) { + _currentInstance.Defaults[i] = d[i]; + } + if (d.Container) { + _currentInstance.setContainer(d.Container); + } + + return _currentInstance; + }; + + _currentInstance.restoreDefaults = function () { + _currentInstance.Defaults = jsPlumb.extend({}, _initialDefaults); + return _currentInstance; + }; + + var log = null, + initialized = false, + // TODO remove from window scope + connections = [], + // map of element id -> endpoint lists. an element can have an arbitrary + // number of endpoints on it, and not all of them have to be connected + // to anything. + endpointsByElement = {}, + endpointsByUUID = {}, + managedElements = {}, + offsets = {}, + offsetTimestamps = {}, + draggableStates = {}, + connectionBeingDragged = false, + sizes = [], + _suspendDrawing = false, + _suspendedAt = null, + DEFAULT_SCOPE = this.Defaults.Scope, + _curIdStamp = 1, + _idstamp = function () { + return "" + _curIdStamp++; + }, + + // + // appends an element to some other element, which is calculated as follows: + // + // 1. if Container exists, use that element. + // 2. if the 'parent' parameter exists, use that. + // 3. otherwise just use the root element. + // + // + _appendElement = function (el, parent) { + if (_container) { + _container.appendChild(el); + } + else if (!parent) { + this.appendToRoot(el); + } + else { + this.getElement(parent).appendChild(el); + } + }.bind(this), + + // + // Draws an endpoint and its connections. this is the main entry point into drawing connections as well + // as endpoints, since jsPlumb is endpoint-centric under the hood. + // + // @param element element to draw (of type library specific element object) + // @param ui UI object from current library's event system. optional. + // @param timestamp timestamp for this paint cycle. used to speed things up a little by cutting down the amount of offset calculations we do. + // @param clearEdits defaults to false; indicates that mouse edits for connectors should be cleared + /// + _draw = function (element, ui, timestamp, clearEdits) { + + if (!_suspendDrawing) { + var id = _getId(element), + repaintEls, + dm = _currentInstance.getDragManager(); + + if (dm) { + repaintEls = dm.getElementsForDraggable(id); + } + + if (timestamp == null) { + timestamp = _timestamp(); + } + + // update the offset of everything _before_ we try to draw anything. + var o = _updateOffset({ elId: id, offset: ui, recalc: false, timestamp: timestamp }); + + if (repaintEls && o && o.o) { + for (var i in repaintEls) { + _updateOffset({ + elId: repaintEls[i].id, + offset: { + left: o.o.left + repaintEls[i].offset.left, + top: o.o.top + repaintEls[i].offset.top + }, + recalc: false, + timestamp: timestamp + }); + } + } + + _currentInstance.anchorManager.redraw(id, ui, timestamp, null, clearEdits); + + if (repaintEls) { + for (var j in repaintEls) { + _currentInstance.anchorManager.redraw(repaintEls[j].id, ui, timestamp, repaintEls[j].offset, clearEdits, true); + } + } + } + }, + + // + // gets an Endpoint by uuid. + // + _getEndpoint = function (uuid) { + return endpointsByUUID[uuid]; + }, + + /** + * inits a draggable if it's not already initialised. + * TODO: somehow abstract this to the adapter, because the concept of "draggable" has no + * place on the server. + */ + + + _scopeMatch = function (e1, e2) { + var s1 = e1.scope.split(/\s/), s2 = e2.scope.split(/\s/); + for (var i = 0; i < s1.length; i++) { + for (var j = 0; j < s2.length; j++) { + if (s2[j] === s1[i]) { + return true; + } + } + } + + return false; + }, + + _mergeOverrides = function (def, values) { + var m = jsPlumb.extend({}, def); + for (var i in values) { + if (values[i]) { + m[i] = values[i]; + } + } + return m; + }, + + /* + * prepares a final params object that can be passed to _newConnection, taking into account defaults, events, etc. + */ + _prepareConnectionParams = function (params, referenceParams) { + var _p = jsPlumb.extend({ }, params); + if (referenceParams) { + jsPlumb.extend(_p, referenceParams); + } + + // hotwire endpoints passed as source or target to sourceEndpoint/targetEndpoint, respectively. + if (_p.source) { + if (_p.source.endpoint) { + _p.sourceEndpoint = _p.source; + } + else { + _p.source = _currentInstance.getElement(_p.source); + } + } + if (_p.target) { + if (_p.target.endpoint) { + _p.targetEndpoint = _p.target; + } + else { + _p.target = _currentInstance.getElement(_p.target); + } + } + + // test for endpoint uuids to connect + if (params.uuids) { + _p.sourceEndpoint = _getEndpoint(params.uuids[0]); + _p.targetEndpoint = _getEndpoint(params.uuids[1]); + } + + // now ensure that if we do have Endpoints already, they're not full. + // source: + if (_p.sourceEndpoint && _p.sourceEndpoint.isFull()) { + _ju.log(_currentInstance, "could not add connection; source endpoint is full"); + return; + } + + // target: + if (_p.targetEndpoint && _p.targetEndpoint.isFull()) { + _ju.log(_currentInstance, "could not add connection; target endpoint is full"); + return; + } + + // if source endpoint mandates connection type and nothing specified in our params, use it. + if (!_p.type && _p.sourceEndpoint) { + _p.type = _p.sourceEndpoint.connectionType; + } + + // copy in any connectorOverlays that were specified on the source endpoint. + // it doesnt copy target endpoint overlays. i'm not sure if we want it to or not. + if (_p.sourceEndpoint && _p.sourceEndpoint.connectorOverlays) { + _p.overlays = _p.overlays || []; + for (var i = 0, j = _p.sourceEndpoint.connectorOverlays.length; i < j; i++) { + _p.overlays.push(_p.sourceEndpoint.connectorOverlays[i]); + } + } + + // scope + if (_p.sourceEndpoint && _p.sourceEndpoint.scope) { + _p.scope = _p.sourceEndpoint.scope; + } + + // pointer events + if (!_p["pointer-events"] && _p.sourceEndpoint && _p.sourceEndpoint.connectorPointerEvents) { + _p["pointer-events"] = _p.sourceEndpoint.connectorPointerEvents; + } + + + var _addEndpoint = function (el, def, idx) { + return _currentInstance.addEndpoint(el, _mergeOverrides(def, { + anchor: _p.anchors ? _p.anchors[idx] : _p.anchor, + endpoint: _p.endpoints ? _p.endpoints[idx] : _p.endpoint, + paintStyle: _p.endpointStyles ? _p.endpointStyles[idx] : _p.endpointStyle, + hoverPaintStyle: _p.endpointHoverStyles ? _p.endpointHoverStyles[idx] : _p.endpointHoverStyle + })); + }; + + // check for makeSource/makeTarget specs. + + var _oneElementDef = function (type, idx, defs, matchType) { + if (_p[type] && !_p[type].endpoint && !_p[type + "Endpoint"] && !_p.newConnection) { + var tid = _getId(_p[type]), tep = defs[tid]; + + tep = tep ? tep[matchType] : null; + + if (tep) { + // if not enabled, return. + if (!tep.enabled) { + return false; + } + var newEndpoint = tep.endpoint != null && tep.endpoint._jsPlumb ? tep.endpoint : _addEndpoint(_p[type], tep.def, idx); + if (newEndpoint.isFull()) { + return false; + } + _p[type + "Endpoint"] = newEndpoint; + if (!_p.scope && tep.def.scope) { + _p.scope = tep.def.scope; + } // provide scope if not already provided and endpoint def has one. + if (tep.uniqueEndpoint) { + if (!tep.endpoint) { + tep.endpoint = newEndpoint; + newEndpoint.setDeleteOnEmpty(false); + } + else { + newEndpoint.finalEndpoint = tep.endpoint; + } + } else { + newEndpoint.setDeleteOnEmpty(true); + } + + // + // copy in connector overlays if present on the source definition. + // + if (idx === 0 && tep.def.connectorOverlays) { + _p.overlays = _p.overlays || []; + Array.prototype.push.apply(_p.overlays, tep.def.connectorOverlays); + } + } + } + }; + + if (_oneElementDef("source", 0, this.sourceEndpointDefinitions, _p.type || "default") === false) { + return; + } + if (_oneElementDef("target", 1, this.targetEndpointDefinitions, _p.type || "default") === false) { + return; + } + + // last, ensure scopes match + if (_p.sourceEndpoint && _p.targetEndpoint) { + if (!_scopeMatch(_p.sourceEndpoint, _p.targetEndpoint)) { + _p = null; + } + } + + return _p; + }.bind(_currentInstance), + + _newConnection = function (params) { + var connectionFunc = _currentInstance.Defaults.ConnectionType || _currentInstance.getDefaultConnectionType(); + + params._jsPlumb = _currentInstance; + params.newConnection = _newConnection; + params.newEndpoint = _newEndpoint; + params.endpointsByUUID = endpointsByUUID; + params.endpointsByElement = endpointsByElement; + params.finaliseConnection = _finaliseConnection; + params.id = "con_" + _idstamp(); + var con = new connectionFunc(params); + + // if the connection is draggable, then maybe we need to tell the target endpoint to init the + // dragging code. it won't run again if it already configured to be draggable. + if (con.isDetachable()) { + con.endpoints[0].initDraggable("_jsPlumbSource"); + con.endpoints[1].initDraggable("_jsPlumbTarget"); + } + + return con; + }, + + // + // adds the connection to the backing model, fires an event if necessary and then redraws + // + _finaliseConnection = _currentInstance.finaliseConnection = function (jpc, params, originalEvent, doInformAnchorManager) { + params = params || {}; + // add to list of connections (by scope). + if (!jpc.suspendedEndpoint) { + connections.push(jpc); + } + + jpc.pending = null; + + // turn off isTemporarySource on the source endpoint (only viable on first draw) + jpc.endpoints[0].isTemporarySource = false; + + // always inform the anchor manager + // except that if jpc has a suspended endpoint it's not true to say the + // connection is new; it has just (possibly) moved. the question is whether + // to make that call here or in the anchor manager. i think perhaps here. + if (doInformAnchorManager !== false) { + _currentInstance.anchorManager.newConnection(jpc); + } + + // force a paint + _draw(jpc.source); + + // fire an event + if (!params.doNotFireConnectionEvent && params.fireEvent !== false) { + + var eventArgs = { + connection: jpc, + source: jpc.source, target: jpc.target, + sourceId: jpc.sourceId, targetId: jpc.targetId, + sourceEndpoint: jpc.endpoints[0], targetEndpoint: jpc.endpoints[1] + }; + + _currentInstance.fire("connection", eventArgs, originalEvent); + } + }, + + /* + factory method to prepare a new endpoint. this should always be used instead of creating Endpoints + manually, since this method attaches event listeners and an id. + */ + _newEndpoint = function (params, id) { + var endpointFunc = _currentInstance.Defaults.EndpointType || jsPlumb.Endpoint; + var _p = jsPlumb.extend({}, params); + _p._jsPlumb = _currentInstance; + _p.newConnection = _newConnection; + _p.newEndpoint = _newEndpoint; + _p.endpointsByUUID = endpointsByUUID; + _p.endpointsByElement = endpointsByElement; + _p.fireDetachEvent = fireDetachEvent; + _p.elementId = id || _getId(_p.source); + var ep = new endpointFunc(_p); + ep.id = "ep_" + _idstamp(); + _manage(_p.elementId, _p.source); + + if (!jsPlumb.headless) { + _currentInstance.getDragManager().endpointAdded(_p.source, id); + } + + return ep; + }, + + /* + * performs the given function operation on all the connections found + * for the given element id; this means we find all the endpoints for + * the given element, and then for each endpoint find the connectors + * connected to it. then we pass each connection in to the given + * function. + */ + _operation = function (elId, func, endpointFunc) { + var endpoints = endpointsByElement[elId]; + if (endpoints && endpoints.length) { + for (var i = 0, ii = endpoints.length; i < ii; i++) { + for (var j = 0, jj = endpoints[i].connections.length; j < jj; j++) { + var retVal = func(endpoints[i].connections[j]); + // if the function passed in returns true, we exit. + // most functions return false. + if (retVal) { + return; + } + } + if (endpointFunc) { + endpointFunc(endpoints[i]); + } + } + } + }, + + _setDraggable = function (element, draggable) { + return jsPlumb.each(element, function (el) { + if (_currentInstance.isDragSupported(el)) { + draggableStates[_currentInstance.getAttribute(el, "id")] = draggable; + _currentInstance.setElementDraggable(el, draggable); + } + }); + }, + /* + * private method to do the business of hiding/showing. + * + * @param el + * either Id of the element in question or a library specific + * object for the element. + * @param state + * String specifying a value for the css 'display' property + * ('block' or 'none'). + */ + _setVisible = function (el, state, alsoChangeEndpoints) { + state = state === "block"; + var endpointFunc = null; + if (alsoChangeEndpoints) { + endpointFunc = function (ep) { + ep.setVisible(state, true, true); + }; + } + var info = _info(el); + _operation(info.id, function (jpc) { + if (state && alsoChangeEndpoints) { + // this test is necessary because this functionality is new, and i wanted to maintain backwards compatibility. + // this block will only set a connection to be visible if the other endpoint in the connection is also visible. + var oidx = jpc.sourceId === info.id ? 1 : 0; + if (jpc.endpoints[oidx].isVisible()) { + jpc.setVisible(true); + } + } + else { // the default behaviour for show, and what always happens for hide, is to just set the visibility without getting clever. + jpc.setVisible(state); + } + }, endpointFunc); + }, + /** + * private method to do the business of toggling hiding/showing. + */ + _toggleVisible = function (elId, changeEndpoints) { + var endpointFunc = null; + if (changeEndpoints) { + endpointFunc = function (ep) { + var state = ep.isVisible(); + ep.setVisible(!state); + }; + } + _operation(elId, function (jpc) { + var state = jpc.isVisible(); + jpc.setVisible(!state); + }, endpointFunc); + }, + + // TODO comparison performance + _getCachedData = function (elId) { + var o = offsets[elId]; + if (!o) { + return _updateOffset({elId: elId}); + } + else { + return {o: o, s: sizes[elId]}; + } + }, + + /** + * gets an id for the given element, creating and setting one if + * necessary. the id is of the form + * + * jsPlumb_<instance index>_<index in instance> + * + * where "index in instance" is a monotonically increasing integer that starts at 0, + * for each instance. this method is used not only to assign ids to elements that do not + * have them but also to connections and endpoints. + */ + _getId = function (element, uuid, doNotCreateIfNotFound) { + if (_ju.isString(element)) { + return element; + } + if (element == null) { + return null; + } + var id = _currentInstance.getAttribute(element, "id"); + if (!id || id === "undefined") { + // check if fixed uuid parameter is given + if (arguments.length === 2 && arguments[1] !== undefined) { + id = uuid; + } + else if (arguments.length === 1 || (arguments.length === 3 && !arguments[2])) { + id = "jsPlumb_" + _instanceIndex + "_" + _idstamp(); + } + + if (!doNotCreateIfNotFound) { + _currentInstance.setAttribute(element, "id", id); + } + } + return id; + }; + + this.setConnectionBeingDragged = function (v) { + connectionBeingDragged = v; + }; + this.isConnectionBeingDragged = function () { + return connectionBeingDragged; + }; + + /** + * Returns a map of all the elements this jsPlumbInstance is currently managing. + * @returns {Object} Map of [id-> {el, endpoint[], connection, position}] information. + */ + this.getManagedElements = function() { + return managedElements; + }; + + this.connectorClass = "jtk-connector"; + this.connectorOutlineClass = "jtk-connector-outline"; + this.connectedClass = "jtk-connected"; + this.hoverClass = "jtk-hover"; + this.endpointClass = "jtk-endpoint"; + this.endpointConnectedClass = "jtk-endpoint-connected"; + this.endpointFullClass = "jtk-endpoint-full"; + this.endpointDropAllowedClass = "jtk-endpoint-drop-allowed"; + this.endpointDropForbiddenClass = "jtk-endpoint-drop-forbidden"; + this.overlayClass = "jtk-overlay"; + this.draggingClass = "jtk-dragging";// CONVERTED + this.elementDraggingClass = "jtk-element-dragging";// CONVERTED + this.sourceElementDraggingClass = "jtk-source-element-dragging"; // CONVERTED + this.targetElementDraggingClass = "jtk-target-element-dragging";// CONVERTED + this.endpointAnchorClassPrefix = "jtk-endpoint-anchor"; + this.hoverSourceClass = "jtk-source-hover"; + this.hoverTargetClass = "jtk-target-hover"; + this.dragSelectClass = "jtk-drag-select"; + + this.Anchors = {}; + this.Connectors = { "svg": {} }; + this.Endpoints = { "svg": {} }; + this.Overlays = { "svg": {} } ; + this.ConnectorRenderers = {}; + this.SVG = "svg"; + +// --------------------------- jsPlumbInstance public API --------------------------------------------------------- + + + this.addEndpoint = function (el, params, referenceParams) { + referenceParams = referenceParams || {}; + var p = jsPlumb.extend({}, referenceParams); + jsPlumb.extend(p, params); + p.endpoint = p.endpoint || _currentInstance.Defaults.Endpoint; + p.paintStyle = p.paintStyle || _currentInstance.Defaults.EndpointStyle; + + var results = [], + inputs = (_ju.isArray(el) || (el.length != null && !_ju.isString(el))) ? el : [ el ]; + + for (var i = 0, j = inputs.length; i < j; i++) { + p.source = _currentInstance.getElement(inputs[i]); + _ensureContainer(p.source); + + var id = _getId(p.source), e = _newEndpoint(p, id); + + // ensure element is managed. + var myOffset = _manage(id, p.source).info.o; + _ju.addToList(endpointsByElement, id, e); + + if (!_suspendDrawing) { + e.paint({ + anchorLoc: e.anchor.compute({ xy: [ myOffset.left, myOffset.top ], wh: sizes[id], element: e, timestamp: _suspendedAt }), + timestamp: _suspendedAt + }); + } + + results.push(e); + } + + return results.length === 1 ? results[0] : results; + }; + + this.addEndpoints = function (el, endpoints, referenceParams) { + var results = []; + for (var i = 0, j = endpoints.length; i < j; i++) { + var e = _currentInstance.addEndpoint(el, endpoints[i], referenceParams); + if (_ju.isArray(e)) { + Array.prototype.push.apply(results, e); + } + else { + results.push(e); + } + } + return results; + }; + + this.animate = function (el, properties, options) { + if (!this.animationSupported) { + return false; + } + + options = options || {}; + var del = _currentInstance.getElement(el), + id = _getId(del), + stepFunction = jsPlumb.animEvents.step, + completeFunction = jsPlumb.animEvents.complete; + + options[stepFunction] = _ju.wrap(options[stepFunction], function () { + _currentInstance.revalidate(id); + }); + + // onComplete repaints, just to make sure everything looks good at the end of the animation. + options[completeFunction] = _ju.wrap(options[completeFunction], function () { + _currentInstance.revalidate(id); + }); + + _currentInstance.doAnimate(del, properties, options); + }; + + /** + * checks for a listener for the given condition, executing it if found, passing in the given value. + * condition listeners would have been attached using "bind" (which is, you could argue, now overloaded, since + * firing click events etc is a bit different to what this does). i thought about adding a "bindCondition" + * or something, but decided against it, for the sake of simplicity. jsPlumb will never fire one of these + * condition events anyway. + */ + this.checkCondition = function (conditionName, args) { + var l = _currentInstance.getListener(conditionName), + r = true; + + if (l && l.length > 0) { + var values = Array.prototype.slice.call(arguments, 1); + try { + for (var i = 0, j = l.length; i < j; i++) { + r = r && l[i].apply(l[i], values); + } + } + catch (e) { + _ju.log(_currentInstance, "cannot check condition [" + conditionName + "]" + e); + } + } + return r; + }; + + this.connect = function (params, referenceParams) { + // prepare a final set of parameters to create connection with + var _p = _prepareConnectionParams(params, referenceParams), jpc; + // TODO probably a nicer return value if the connection was not made. _prepareConnectionParams + // will return null (and log something) if either endpoint was full. what would be nicer is to + // create a dedicated 'error' object. + if (_p) { + if (_p.source == null && _p.sourceEndpoint == null) { + _ju.log("Cannot establish connection - source does not exist"); + return; + } + if (_p.target == null && _p.targetEndpoint == null) { + _ju.log("Cannot establish connection - target does not exist"); + return; + } + _ensureContainer(_p.source); + // create the connection. it is not yet registered + jpc = _newConnection(_p); + // now add it the model, fire an event, and redraw + _finaliseConnection(jpc, _p); + } + return jpc; + }; + + var stTypes = [ + { el: "source", elId: "sourceId", epDefs: "sourceEndpointDefinitions" }, + { el: "target", elId: "targetId", epDefs: "targetEndpointDefinitions" } + ]; + + var _set = function (c, el, idx, doNotRepaint) { + var ep, _st = stTypes[idx], cId = c[_st.elId], cEl = c[_st.el], sid, sep, + oldEndpoint = c.endpoints[idx]; + + var evtParams = { + index: idx, + originalSourceId: idx === 0 ? cId : c.sourceId, + newSourceId: c.sourceId, + originalTargetId: idx === 1 ? cId : c.targetId, + newTargetId: c.targetId, + connection: c + }; + + if (el.constructor === jsPlumb.Endpoint) { + ep = el; + ep.addConnection(c); + el = ep.element; + } + else { + sid = _getId(el); + sep = this[_st.epDefs][sid]; + + if (sid === c[_st.elId]) { + ep = null; // dont change source/target if the element is already the one given. + } + else if (sep) { + for (var t in sep) { + if (!sep[t].enabled) { + return; + } + ep = sep[t].endpoint != null && sep[t].endpoint._jsPlumb ? sep[t].endpoint : this.addEndpoint(el, sep[t].def); + if (sep[t].uniqueEndpoint) { + sep[t].endpoint = ep; + } + ep.addConnection(c); + } + } + else { + ep = c.makeEndpoint(idx === 0, el, sid); + } + } + + if (ep != null) { + oldEndpoint.detachFromConnection(c); + c.endpoints[idx] = ep; + c[_st.el] = ep.element; + c[_st.elId] = ep.elementId; + evtParams[idx === 0 ? "newSourceId" : "newTargetId"] = ep.elementId; + + fireMoveEvent(evtParams); + + if (!doNotRepaint) { + c.repaint(); + } + } + + evtParams.element = el; + return evtParams; + + }.bind(this); + + this.setSource = function (connection, el, doNotRepaint) { + var p = _set(connection, el, 0, doNotRepaint); + this.anchorManager.sourceChanged(p.originalSourceId, p.newSourceId, connection, p.el); + }; + this.setTarget = function (connection, el, doNotRepaint) { + var p = _set(connection, el, 1, doNotRepaint); + this.anchorManager.updateOtherEndpoint(p.originalSourceId, p.originalTargetId, p.newTargetId, connection); + }; + + this.deleteEndpoint = function (object, dontUpdateHover, deleteAttachedObjects) { + var endpoint = (typeof object === "string") ? endpointsByUUID[object] : object; + if (endpoint) { + _currentInstance.deleteObject({ endpoint: endpoint, dontUpdateHover: dontUpdateHover, deleteAttachedObjects:deleteAttachedObjects }); + } + return _currentInstance; + }; + + this.deleteEveryEndpoint = function () { + var _is = _currentInstance.setSuspendDrawing(true); + for (var id in endpointsByElement) { + var endpoints = endpointsByElement[id]; + if (endpoints && endpoints.length) { + for (var i = 0, j = endpoints.length; i < j; i++) { + _currentInstance.deleteEndpoint(endpoints[i], true); + } + } + } + endpointsByElement = {}; + managedElements = {}; + endpointsByUUID = {}; + offsets = {}; + offsetTimestamps = {}; + _currentInstance.anchorManager.reset(); + var dm = _currentInstance.getDragManager(); + if (dm) { + dm.reset(); + } + if (!_is) { + _currentInstance.setSuspendDrawing(false); + } + return _currentInstance; + }; + + var fireDetachEvent = function (jpc, doFireEvent, originalEvent) { + // may have been given a connection, or in special cases, an object + var connType = _currentInstance.Defaults.ConnectionType || _currentInstance.getDefaultConnectionType(), + argIsConnection = jpc.constructor === connType, + params = argIsConnection ? { + connection: jpc, + source: jpc.source, target: jpc.target, + sourceId: jpc.sourceId, targetId: jpc.targetId, + sourceEndpoint: jpc.endpoints[0], targetEndpoint: jpc.endpoints[1] + } : jpc; + + if (doFireEvent) { + _currentInstance.fire("connectionDetached", params, originalEvent); + } + + // always fire this. used by internal jsplumb stuff. + _currentInstance.fire("internal.connectionDetached", params, originalEvent); + + _currentInstance.anchorManager.connectionDetached(params); + }; + + var fireMoveEvent = _currentInstance.fireMoveEvent = function (params, evt) { + _currentInstance.fire("connectionMoved", params, evt); + }; + + this.unregisterEndpoint = function (endpoint) { + if (endpoint._jsPlumb.uuid) { + endpointsByUUID[endpoint._jsPlumb.uuid] = null; + } + _currentInstance.anchorManager.deleteEndpoint(endpoint); + // TODO at least replace this with a removeWithFunction call. + for (var e in endpointsByElement) { + var endpoints = endpointsByElement[e]; + if (endpoints) { + var newEndpoints = []; + for (var i = 0, j = endpoints.length; i < j; i++) { + if (endpoints[i] !== endpoint) { + newEndpoints.push(endpoints[i]); + } + } + + endpointsByElement[e] = newEndpoints; + } + if (endpointsByElement[e].length < 1) { + delete endpointsByElement[e]; + } + } + }; + + var IS_DETACH_ALLOWED = "isDetachAllowed"; + var BEFORE_DETACH = "beforeDetach"; + var CHECK_CONDITION = "checkCondition"; + + /** + * Deletes a Connection. + * @method deleteConnection + * @param connection Connection to delete + * @param {Object} [params] Optional delete parameters + * @param {Boolean} [params.doNotFireEvent=false] If true, a connection detached event will not be fired. Otherwise one will. + * @param {Boolean} [params.force=false] If true, the connection will be deleted even if a beforeDetach interceptor tries to stop the deletion. + * @returns {Boolean} True if the connection was deleted, false otherwise. + */ + this.deleteConnection = function(connection, params) { + + if (connection != null) { + params = params || {}; + + if (params.force || _ju.functionChain(true, false, [ + [ connection.endpoints[0], IS_DETACH_ALLOWED, [ connection ] ], + [ connection.endpoints[1], IS_DETACH_ALLOWED, [ connection ] ], + [ connection, IS_DETACH_ALLOWED, [ connection ] ], + [ _currentInstance, CHECK_CONDITION, [ BEFORE_DETACH, connection ] ] + ])) { + + connection.setHover(false); + fireDetachEvent(connection, !connection.pending && params.fireEvent !== false, params.originalEvent); + + connection.endpoints[0].detachFromConnection(connection); + connection.endpoints[1].detachFromConnection(connection); + _ju.removeWithFunction(connections, function (_c) { + return connection.id === _c.id; + }); + + connection.cleanup(); + connection.destroy(); + return true; + } + } + return false; + }; + + /** + * Remove all Connections from all elements, but leaves Endpoints in place ((unless a connection is set to auto delete its Endpoints). + * @method deleteEveryConnection + * @param {Object} [params] optional params object for the call + * @param {Boolean} [params.fireEvent=true] Whether or not to fire detach events + * @param {Boolean} [params.forceDetach=false] If true, this call will ignore any `beforeDetach` interceptors. + * @returns {Number} The number of connections that were deleted. + */ + this.deleteEveryConnection = function (params) { + params = params || {}; + var count = connections.length, deletedCount = 0; + _currentInstance.batch(function () { + for (var i = 0; i < count; i++) { + deletedCount += _currentInstance.deleteConnection(connections[0], params) ? 1 : 0; + } + }); + return deletedCount; + }; + + /** + * Removes all an element's Connections. + * @method deleteConnectionsForElement + * @param {Object} el Either the id of the element, or a selector for the element. + * @param {Object} [params] Optional parameters. + * @param {Boolean} [params.fireEvent=true] Whether or not to fire the detach event. + * @param {Boolean} [params.forceDetach=false] If true, this call will ignore any `beforeDetach` interceptors. + * @return {jsPlumbInstance} The current jsPlumb instance. + */ + this.deleteConnectionsForElement = function (el, params) { + params = params || {}; + el = _currentInstance.getElement(el); + var id = _getId(el), endpoints = endpointsByElement[id]; + if (endpoints && endpoints.length) { + for (var i = 0, j = endpoints.length; i < j; i++) { + endpoints[i].deleteEveryConnection(params); + } + } + return _currentInstance; + }; + + /// not public. but of course its exposed. how to change this. + this.deleteObject = function (params) { + var result = { + endpoints: {}, + connections: {}, + endpointCount: 0, + connectionCount: 0 + }, + deleteAttachedObjects = params.deleteAttachedObjects !== false; + + var unravelConnection = function (connection) { + if (connection != null && result.connections[connection.id] == null) { + if (!params.dontUpdateHover && connection._jsPlumb != null) { + connection.setHover(false); + } + result.connections[connection.id] = connection; + result.connectionCount++; + } + }; + var unravelEndpoint = function (endpoint) { + if (endpoint != null && result.endpoints[endpoint.id] == null) { + if (!params.dontUpdateHover && endpoint._jsPlumb != null) { + endpoint.setHover(false); + } + result.endpoints[endpoint.id] = endpoint; + result.endpointCount++; + + if (deleteAttachedObjects) { + for (var i = 0; i < endpoint.connections.length; i++) { + var c = endpoint.connections[i]; + unravelConnection(c); + } + } + } + }; + + if (params.connection) { + unravelConnection(params.connection); + } + else { + unravelEndpoint(params.endpoint); + } + + // loop through connections + for (var i in result.connections) { + var c = result.connections[i]; + if (c._jsPlumb) { + _ju.removeWithFunction(connections, function (_c) { + return c.id === _c.id; + }); + + fireDetachEvent(c, params.fireEvent === false ? false : !c.pending, params.originalEvent); + var doNotCleanup = params.deleteAttachedObjects == null ? null : !params.deleteAttachedObjects; + + c.endpoints[0].detachFromConnection(c, null, doNotCleanup); + c.endpoints[1].detachFromConnection(c, null, doNotCleanup); + + c.cleanup(true); + c.destroy(true); + } + } + + // loop through endpoints + for (var j in result.endpoints) { + var e = result.endpoints[j]; + if (e._jsPlumb) { + _currentInstance.unregisterEndpoint(e); + // FIRE some endpoint deleted event? + e.cleanup(true); + e.destroy(true); + } + } + + return result; + }; + + + // helpers for select/selectEndpoints + var _setOperation = function (list, func, args, selector) { + for (var i = 0, j = list.length; i < j; i++) { + list[i][func].apply(list[i], args); + } + return selector(list); + }, + _getOperation = function (list, func, args) { + var out = []; + for (var i = 0, j = list.length; i < j; i++) { + out.push([ list[i][func].apply(list[i], args), list[i] ]); + } + return out; + }, + setter = function (list, func, selector) { + return function () { + return _setOperation(list, func, arguments, selector); + }; + }, + getter = function (list, func) { + return function () { + return _getOperation(list, func, arguments); + }; + }, + prepareList = function (input, doNotGetIds) { + var r = []; + if (input) { + if (typeof input === 'string') { + if (input === "*") { + return input; + } + r.push(input); + } + else { + if (doNotGetIds) { + r = input; + } + else { + if (input.length) { + for (var i = 0, j = input.length; i < j; i++) { + r.push(_info(input[i]).id); + } + } + else { + r.push(_info(input).id); + } + } + } + } + return r; + }, + filterList = function (list, value, missingIsFalse) { + if (list === "*") { + return true; + } + return list.length > 0 ? list.indexOf(value) !== -1 : !missingIsFalse; + }; + + // get some connections, specifying source/target/scope + this.getConnections = function (options, flat) { + if (!options) { + options = {}; + } else if (options.constructor === String) { + options = { "scope": options }; + } + var scope = options.scope || _currentInstance.getDefaultScope(), + scopes = prepareList(scope, true), + sources = prepareList(options.source), + targets = prepareList(options.target), + results = (!flat && scopes.length > 1) ? {} : [], + _addOne = function (scope, obj) { + if (!flat && scopes.length > 1) { + var ss = results[scope]; + if (ss == null) { + ss = results[scope] = []; + } + ss.push(obj); + } else { + results.push(obj); + } + }; + + for (var j = 0, jj = connections.length; j < jj; j++) { + var c = connections[j], + sourceId = c.proxies && c.proxies[0] ? c.proxies[0].originalEp.elementId : c.sourceId, + targetId = c.proxies && c.proxies[1] ? c.proxies[1].originalEp.elementId : c.targetId; + + if (filterList(scopes, c.scope) && filterList(sources, sourceId) && filterList(targets, targetId)) { + _addOne(c.scope, c); + } + } + + return results; + }; + + var _curryEach = function (list, executor) { + return function (f) { + for (var i = 0, ii = list.length; i < ii; i++) { + f(list[i]); + } + return executor(list); + }; + }, + _curryGet = function (list) { + return function (idx) { + return list[idx]; + }; + }; + + var _makeCommonSelectHandler = function (list, executor) { + var out = { + length: list.length, + each: _curryEach(list, executor), + get: _curryGet(list) + }, + setters = ["setHover", "removeAllOverlays", "setLabel", "addClass", "addOverlay", "removeOverlay", + "removeOverlays", "showOverlay", "hideOverlay", "showOverlays", "hideOverlays", "setPaintStyle", + "setHoverPaintStyle", "setSuspendEvents", "setParameter", "setParameters", "setVisible", + "repaint", "addType", "toggleType", "removeType", "removeClass", "setType", "bind", "unbind" ], + + getters = ["getLabel", "getOverlay", "isHover", "getParameter", "getParameters", "getPaintStyle", + "getHoverPaintStyle", "isVisible", "hasType", "getType", "isSuspendEvents" ], + i, ii; + + for (i = 0, ii = setters.length; i < ii; i++) { + out[setters[i]] = setter(list, setters[i], executor); + } + + for (i = 0, ii = getters.length; i < ii; i++) { + out[getters[i]] = getter(list, getters[i]); + } + + return out; + }; + + var _makeConnectionSelectHandler = function (list) { + var common = _makeCommonSelectHandler(list, _makeConnectionSelectHandler); + return jsPlumb.extend(common, { + // setters + setDetachable: setter(list, "setDetachable", _makeConnectionSelectHandler), + setReattach: setter(list, "setReattach", _makeConnectionSelectHandler), + setConnector: setter(list, "setConnector", _makeConnectionSelectHandler), + delete: function () { + for (var i = 0, ii = list.length; i < ii; i++) { + _currentInstance.deleteConnection(list[i]); + } + }, + // getters + isDetachable: getter(list, "isDetachable"), + isReattach: getter(list, "isReattach") + }); + }; + + var _makeEndpointSelectHandler = function (list) { + var common = _makeCommonSelectHandler(list, _makeEndpointSelectHandler); + return jsPlumb.extend(common, { + setEnabled: setter(list, "setEnabled", _makeEndpointSelectHandler), + setAnchor: setter(list, "setAnchor", _makeEndpointSelectHandler), + isEnabled: getter(list, "isEnabled"), + deleteEveryConnection: function () { + for (var i = 0, ii = list.length; i < ii; i++) { + list[i].deleteEveryConnection(); + } + }, + "delete": function () { + for (var i = 0, ii = list.length; i < ii; i++) { + _currentInstance.deleteEndpoint(list[i]); + } + } + }); + }; + + this.select = function (params) { + params = params || {}; + params.scope = params.scope || "*"; + return _makeConnectionSelectHandler(params.connections || _currentInstance.getConnections(params, true)); + }; + + this.selectEndpoints = function (params) { + params = params || {}; + params.scope = params.scope || "*"; + var noElementFilters = !params.element && !params.source && !params.target, + elements = noElementFilters ? "*" : prepareList(params.element), + sources = noElementFilters ? "*" : prepareList(params.source), + targets = noElementFilters ? "*" : prepareList(params.target), + scopes = prepareList(params.scope, true); + + var ep = []; + + for (var el in endpointsByElement) { + var either = filterList(elements, el, true), + source = filterList(sources, el, true), + sourceMatchExact = sources !== "*", + target = filterList(targets, el, true), + targetMatchExact = targets !== "*"; + + // if they requested 'either' then just match scope. otherwise if they requested 'source' (not as a wildcard) then we have to match only endpoints that have isSource set to to true, and the same thing with isTarget. + if (either || source || target) { + inner: + for (var i = 0, ii = endpointsByElement[el].length; i < ii; i++) { + var _ep = endpointsByElement[el][i]; + if (filterList(scopes, _ep.scope, true)) { + + var noMatchSource = (sourceMatchExact && sources.length > 0 && !_ep.isSource), + noMatchTarget = (targetMatchExact && targets.length > 0 && !_ep.isTarget); + + if (noMatchSource || noMatchTarget) { + continue inner; + } + + ep.push(_ep); + } + } + } + } + + return _makeEndpointSelectHandler(ep); + }; + + // get all connections managed by the instance of jsplumb. + this.getAllConnections = function () { + return connections; + }; + this.getDefaultScope = function () { + return DEFAULT_SCOPE; + }; + // get an endpoint by uuid. + this.getEndpoint = _getEndpoint; + /** + * Gets the list of Endpoints for a given element. + * @method getEndpoints + * @param {String|Element|Selector} el The element to get endpoints for. + * @return {Endpoint[]} An array of Endpoints for the specified element. + */ + this.getEndpoints = function (el) { + return endpointsByElement[_info(el).id] || []; + }; + // gets the default endpoint type. used when subclassing. see wiki. + this.getDefaultEndpointType = function () { + return jsPlumb.Endpoint; + }; + // gets the default connection type. used when subclassing. see wiki. + this.getDefaultConnectionType = function () { + return jsPlumb.Connection; + }; + /* + * Gets an element's id, creating one if necessary. really only exposed + * for the lib-specific functionality to access; would be better to pass + * the current instance into the lib-specific code (even though this is + * a static call. i just don't want to expose it to the public API). + */ + this.getId = _getId; + this.draw = _draw; + this.info = _info; + + this.appendElement = _appendElement; + + var _hoverSuspended = false; + this.isHoverSuspended = function () { + return _hoverSuspended; + }; + this.setHoverSuspended = function (s) { + _hoverSuspended = s; + }; + + // set an element's connections to be hidden + this.hide = function (el, changeEndpoints) { + _setVisible(el, "none", changeEndpoints); + return _currentInstance; + }; + + // exposed for other objects to use to get a unique id. + this.idstamp = _idstamp; + + // ensure that, if the current container exists, it is a DOM element and not a selector. + // if it does not exist and `candidate` is supplied, the offset parent of that element will be set as the Container. + // this is used to do a better default behaviour for the case that the user has not set a container: + // addEndpoint, makeSource, makeTarget and connect all call this method with the offsetParent of the + // element in question (for connect it is the source element). So if no container is set, it is inferred + // to be the offsetParent of the first element the user tries to connect. + var _ensureContainer = function (candidate) { + if (!_container && candidate) { + var can = _currentInstance.getElement(candidate); + if (can.offsetParent) { + _currentInstance.setContainer(can.offsetParent); + } + } + }; + + var _getContainerFromDefaults = function () { + if (_currentInstance.Defaults.Container) { + _currentInstance.setContainer(_currentInstance.Defaults.Container); + } + }; + + // check if a given element is managed or not. if not, add to our map. if drawing is not suspended then + // we'll also stash its dimensions; otherwise we'll do this in a lazy way through updateOffset. + var _manage = _currentInstance.manage = function (id, element, _transient) { + if (!managedElements[id]) { + managedElements[id] = { + el: element, + endpoints: [], + connections: [] + }; + + managedElements[id].info = _updateOffset({ elId: id, timestamp: _suspendedAt }); + _currentInstance.addClass(element, "jtk-managed"); + if (!_transient) { + _currentInstance.fire("manageElement", { id:id, info:managedElements[id].info, el:element }); + } + } + + return managedElements[id]; + }; + + var _unmanage = _currentInstance.unmanage = function(id) { + if (managedElements[id]) { + _currentInstance.removeClass(managedElements[id].el, "jtk-managed"); + delete managedElements[id]; + _currentInstance.fire("unmanageElement", id); + } + }; + + /** + * updates the offset and size for a given element, and stores the + * values. if 'offset' is not null we use that (it would have been + * passed in from a drag call) because it's faster; but if it is null, + * or if 'recalc' is true in order to force a recalculation, we get the current values. + * @method updateOffset + */ + var _updateOffset = function (params) { + + var timestamp = params.timestamp, recalc = params.recalc, offset = params.offset, elId = params.elId, s; + if (_suspendDrawing && !timestamp) { + timestamp = _suspendedAt; + } + if (!recalc) { + if (timestamp && timestamp === offsetTimestamps[elId]) { + return {o: params.offset || offsets[elId], s: sizes[elId]}; + } + } + if (recalc || (!offset && offsets[elId] == null)) { // if forced repaint or no offset available, we recalculate. + + // get the current size and offset, and store them + s = managedElements[elId] ? managedElements[elId].el : null; + if (s != null) { + sizes[elId] = _currentInstance.getSize(s); + offsets[elId] = _currentInstance.getOffset(s); + offsetTimestamps[elId] = timestamp; + } + } else { + offsets[elId] = offset || offsets[elId]; + if (sizes[elId] == null) { + s = managedElements[elId].el; + if (s != null) { + sizes[elId] = _currentInstance.getSize(s); + } + } + offsetTimestamps[elId] = timestamp; + } + + if (offsets[elId] && !offsets[elId].right) { + offsets[elId].right = offsets[elId].left + sizes[elId][0]; + offsets[elId].bottom = offsets[elId].top + sizes[elId][1]; + offsets[elId].width = sizes[elId][0]; + offsets[elId].height = sizes[elId][1]; + offsets[elId].centerx = offsets[elId].left + (offsets[elId].width / 2); + offsets[elId].centery = offsets[elId].top + (offsets[elId].height / 2); + } + + return {o: offsets[elId], s: sizes[elId]}; + }; + + this.updateOffset = _updateOffset; + + /** + * callback from the current library to tell us to prepare ourselves (attach + * mouse listeners etc; can't do that until the library has provided a bind method) + */ + this.init = function () { + if (!initialized) { + _getContainerFromDefaults(); + _currentInstance.anchorManager = new root.jsPlumb.AnchorManager({jsPlumbInstance: _currentInstance}); + initialized = true; + _currentInstance.fire("ready", _currentInstance); + } + }.bind(this); + + this.log = log; + this.jsPlumbUIComponent = jsPlumbUIComponent; + + /* + * Creates an anchor with the given params. + * + * + * Returns: The newly created Anchor. + * Throws: an error if a named anchor was not found. + */ + this.makeAnchor = function () { + var pp, _a = function (t, p) { + if (root.jsPlumb.Anchors[t]) { + return new root.jsPlumb.Anchors[t](p); + } + if (!_currentInstance.Defaults.DoNotThrowErrors) { + throw { msg: "jsPlumb: unknown anchor type '" + t + "'" }; + } + }; + if (arguments.length === 0) { + return null; + } + var specimen = arguments[0], elementId = arguments[1], jsPlumbInstance = arguments[2], newAnchor = null; + // if it appears to be an anchor already... + if (specimen.compute && specimen.getOrientation) { + return specimen; + } //TODO hazy here about whether it should be added or is already added somehow. + // is it the name of an anchor type? + else if (typeof specimen === "string") { + newAnchor = _a(arguments[0], {elementId: elementId, jsPlumbInstance: _currentInstance}); + } + // is it an array? it will be one of: + // an array of [spec, params] - this defines a single anchor, which may be dynamic, but has parameters. + // an array of arrays - this defines some dynamic anchors + // an array of numbers - this defines a single anchor. + else if (_ju.isArray(specimen)) { + if (_ju.isArray(specimen[0]) || _ju.isString(specimen[0])) { + // if [spec, params] format + if (specimen.length === 2 && _ju.isObject(specimen[1])) { + // if first arg is a string, its a named anchor with params + if (_ju.isString(specimen[0])) { + pp = root.jsPlumb.extend({elementId: elementId, jsPlumbInstance: _currentInstance}, specimen[1]); + newAnchor = _a(specimen[0], pp); + } + // otherwise first arg is array, second is params. we treat as a dynamic anchor, which is fine + // even if the first arg has only one entry. you could argue all anchors should be implicitly dynamic in fact. + else { + pp = root.jsPlumb.extend({elementId: elementId, jsPlumbInstance: _currentInstance, anchors: specimen[0]}, specimen[1]); + newAnchor = new root.jsPlumb.DynamicAnchor(pp); + } + } + else { + newAnchor = new jsPlumb.DynamicAnchor({anchors: specimen, selector: null, elementId: elementId, jsPlumbInstance: _currentInstance}); + } + + } + else { + var anchorParams = { + x: specimen[0], y: specimen[1], + orientation: (specimen.length >= 4) ? [ specimen[2], specimen[3] ] : [0, 0], + offsets: (specimen.length >= 6) ? [ specimen[4], specimen[5] ] : [ 0, 0 ], + elementId: elementId, + jsPlumbInstance: _currentInstance, + cssClass: specimen.length === 7 ? specimen[6] : null + }; + newAnchor = new root.jsPlumb.Anchor(anchorParams); + newAnchor.clone = function () { + return new root.jsPlumb.Anchor(anchorParams); + }; + } + } + + if (!newAnchor.id) { + newAnchor.id = "anchor_" + _idstamp(); + } + return newAnchor; + }; + + /** + * makes a list of anchors from the given list of types or coords, eg + * ["TopCenter", "RightMiddle", "BottomCenter", [0, 1, -1, -1] ] + */ + this.makeAnchors = function (types, elementId, jsPlumbInstance) { + var r = []; + for (var i = 0, ii = types.length; i < ii; i++) { + if (typeof types[i] === "string") { + r.push(root.jsPlumb.Anchors[types[i]]({elementId: elementId, jsPlumbInstance: jsPlumbInstance})); + } + else if (_ju.isArray(types[i])) { + r.push(_currentInstance.makeAnchor(types[i], elementId, jsPlumbInstance)); + } + } + return r; + }; + + /** + * Makes a dynamic anchor from the given list of anchors (which may be in shorthand notation as strings or dimension arrays, or Anchor + * objects themselves) and the given, optional, anchorSelector function (jsPlumb uses a default if this is not provided; most people will + * not need to provide this - i think). + */ + this.makeDynamicAnchor = function (anchors, anchorSelector) { + return new root.jsPlumb.DynamicAnchor({anchors: anchors, selector: anchorSelector, elementId: null, jsPlumbInstance: _currentInstance}); + }; + +// --------------------- makeSource/makeTarget ---------------------------------------------- + + this.targetEndpointDefinitions = {}; + this.sourceEndpointDefinitions = {}; + + var selectorFilter = function (evt, _el, selector, _instance, negate) { + var t = evt.target || evt.srcElement, ok = false, + sel = _instance.getSelector(_el, selector); + for (var j = 0; j < sel.length; j++) { + if (sel[j] === t) { + ok = true; + break; + } + } + return negate ? !ok : ok; + }; + + var _makeElementDropHandler = function (elInfo, p, dropOptions, isSource, isTarget) { + var proxyComponent = new jsPlumbUIComponent(p); + var _drop = p._jsPlumb.EndpointDropHandler({ + jsPlumb: _currentInstance, + enabled: function () { + return elInfo.def.enabled; + }, + isFull: function () { + var targetCount = _currentInstance.select({target: elInfo.id}).length; + return elInfo.def.maxConnections > 0 && targetCount >= elInfo.def.maxConnections; + }, + element: elInfo.el, + elementId: elInfo.id, + isSource: isSource, + isTarget: isTarget, + addClass: function (clazz) { + _currentInstance.addClass(elInfo.el, clazz); + }, + removeClass: function (clazz) { + _currentInstance.removeClass(elInfo.el, clazz); + }, + onDrop: function (jpc) { + var source = jpc.endpoints[0]; + source.anchor.unlock(); + }, + isDropAllowed: function () { + return proxyComponent.isDropAllowed.apply(proxyComponent, arguments); + }, + isRedrop:function(jpc) { + return (jpc.suspendedElement != null && jpc.suspendedEndpoint != null && jpc.suspendedEndpoint.element === elInfo.el); + }, + getEndpoint: function (jpc) { + + // make a new Endpoint for the target, or get it from the cache if uniqueEndpoint + // is set. if its a redrop the new endpoint will be immediately cleaned up. + + var newEndpoint = elInfo.def.endpoint; + + // if no cached endpoint, or there was one but it has been cleaned up + // (ie. detached), create a new one + if (newEndpoint == null || newEndpoint._jsPlumb == null) { + var eps = _currentInstance.deriveEndpointAndAnchorSpec(jpc.getType().join(" "), true); + var pp = eps.endpoints ? root.jsPlumb.extend(p, { + endpoint:elInfo.def.def.endpoint || eps.endpoints[1] + }) :p; + if (eps.anchors) { + pp = root.jsPlumb.extend(pp, { + anchor:elInfo.def.def.anchor || eps.anchors[1] + }); + } + newEndpoint = _currentInstance.addEndpoint(elInfo.el, pp); + newEndpoint._mtNew = true; + } + + if (p.uniqueEndpoint) { + elInfo.def.endpoint = newEndpoint; + } + + newEndpoint.setDeleteOnEmpty(true); + + // if connection is detachable, init the new endpoint to be draggable, to support that happening. + if (jpc.isDetachable()) { + newEndpoint.initDraggable(); + } + + // if the anchor has a 'positionFinder' set, then delegate to that function to find + // out where to locate the anchor. + if (newEndpoint.anchor.positionFinder != null) { + var dropPosition = _currentInstance.getUIPosition(arguments, _currentInstance.getZoom()), + elPosition = _currentInstance.getOffset(elInfo.el), + elSize = _currentInstance.getSize(elInfo.el), + ap = dropPosition == null ? [0,0] : newEndpoint.anchor.positionFinder(dropPosition, elPosition, elSize, newEndpoint.anchor.constructorParams); + + newEndpoint.anchor.x = ap[0]; + newEndpoint.anchor.y = ap[1]; + // now figure an orientation for it..kind of hard to know what to do actually. probably the best thing i can do is to + // support specifying an orientation in the anchor's spec. if one is not supplied then i will make the orientation + // be what will cause the most natural link to the source: it will be pointing at the source, but it needs to be + // specified in one axis only, and so how to make that choice? i think i will use whichever axis is the one in which + // the target is furthest away from the source. + } + + return newEndpoint; + }, + maybeCleanup: function (ep) { + if (ep._mtNew && ep.connections.length === 0) { + _currentInstance.deleteObject({endpoint: ep}); + } + else { + delete ep._mtNew; + } + } + }); + + // wrap drop events as needed and initialise droppable + var dropEvent = root.jsPlumb.dragEvents.drop; + dropOptions.scope = dropOptions.scope || (p.scope || _currentInstance.Defaults.Scope); + dropOptions[dropEvent] = _ju.wrap(dropOptions[dropEvent], _drop, true); + dropOptions.rank = p.rank || 0; + + // if target, return true from the over event. this will cause katavorio to stop setting drops to hover + // if multipleDrop is set to false. + if (isTarget) { + dropOptions[root.jsPlumb.dragEvents.over] = function () { return true; }; + } + + // vanilla jsplumb only + if (p.allowLoopback === false) { + dropOptions.canDrop = function (_drag) { + var de = _drag.getDragElement()._jsPlumbRelatedElement; + return de !== elInfo.el; + }; + } + _currentInstance.initDroppable(elInfo.el, dropOptions, "internal"); + + return _drop; + + }; + + // see API docs + this.makeTarget = function (el, params, referenceParams) { + + // put jsplumb ref into params without altering the params passed in + var p = root.jsPlumb.extend({_jsPlumb: this}, referenceParams); + root.jsPlumb.extend(p, params); + + var maxConnections = p.maxConnections || -1, + + _doOne = function (el) { + + // get the element's id and store the endpoint definition for it. jsPlumb.connect calls will look for one of these, + // and use the endpoint definition if found. + // decode the info for this element (id and element) + var elInfo = _info(el), + elid = elInfo.id, + dropOptions = root.jsPlumb.extend({}, p.dropOptions || {}), + type = p.connectionType || "default"; + + this.targetEndpointDefinitions[elid] = this.targetEndpointDefinitions[elid] || {}; + + _ensureContainer(elid); + + // if this is a group and the user has not mandated a rank, set to -1 so that Nodes takes + // precedence. + if (elInfo.el._isJsPlumbGroup && dropOptions.rank == null) { + dropOptions.rank = -1; + } + + // store the definition + var _def = { + def: root.jsPlumb.extend({}, p), + uniqueEndpoint: p.uniqueEndpoint, + maxConnections: maxConnections, + enabled: true + }; + + if (p.createEndpoint) { + _def.uniqueEndpoint = true; + _def.endpoint = _currentInstance.addEndpoint(el, _def.def); + _def.endpoint.setDeleteOnEmpty(false); + } + + elInfo.def = _def; + this.targetEndpointDefinitions[elid][type] = _def; + _makeElementDropHandler(elInfo, p, dropOptions, p.isSource === true, true); + // stash the definition on the drop + elInfo.el._katavorioDrop[elInfo.el._katavorioDrop.length - 1].targetDef = _def; + + }.bind(this); + + // make an array if only given one element + var inputs = el.length && el.constructor !== String ? el : [ el ]; + + // register each one in the list. + for (var i = 0, ii = inputs.length; i < ii; i++) { + _doOne(inputs[i]); + } + + return this; + }; + + // see api docs + this.unmakeTarget = function (el, doNotClearArrays) { + var info = _info(el); + _currentInstance.destroyDroppable(info.el, "internal"); + if (!doNotClearArrays) { + delete this.targetEndpointDefinitions[info.id]; + } + + return this; + }; + + // see api docs + this.makeSource = function (el, params, referenceParams) { + var p = root.jsPlumb.extend({_jsPlumb: this}, referenceParams); + root.jsPlumb.extend(p, params); + var type = p.connectionType || "default"; + var aae = _currentInstance.deriveEndpointAndAnchorSpec(type); + p.endpoint = p.endpoint || aae.endpoints[0]; + p.anchor = p.anchor || aae.anchors[0]; + var maxConnections = p.maxConnections || -1, + onMaxConnections = p.onMaxConnections, + _doOne = function (elInfo) { + // get the element's id and store the endpoint definition for it. jsPlumb.connect calls will look for one of these, + // and use the endpoint definition if found. + var elid = elInfo.id, + _del = this.getElement(elInfo.el); + + this.sourceEndpointDefinitions[elid] = this.sourceEndpointDefinitions[elid] || {}; + _ensureContainer(elid); + + var _def = { + def:root.jsPlumb.extend({}, p), + uniqueEndpoint: p.uniqueEndpoint, + maxConnections: maxConnections, + enabled: true + }; + + if (p.createEndpoint) { + _def.uniqueEndpoint = true; + _def.endpoint = _currentInstance.addEndpoint(el, _def.def); + _def.endpoint.setDeleteOnEmpty(false); + } + + this.sourceEndpointDefinitions[elid][type] = _def; + elInfo.def = _def; + + var stopEvent = root.jsPlumb.dragEvents.stop, + dragEvent = root.jsPlumb.dragEvents.drag, + dragOptions = root.jsPlumb.extend({ }, p.dragOptions || {}), + existingDrag = dragOptions.drag, + existingStop = dragOptions.stop, + ep = null, + endpointAddedButNoDragYet = false; + + // set scope if its not set in dragOptions but was passed in in params + dragOptions.scope = dragOptions.scope || p.scope; + + dragOptions[dragEvent] = _ju.wrap(dragOptions[dragEvent], function () { + if (existingDrag) { + existingDrag.apply(this, arguments); + } + endpointAddedButNoDragYet = false; + }); + + dragOptions[stopEvent] = _ju.wrap(dragOptions[stopEvent], function () { + + if (existingStop) { + existingStop.apply(this, arguments); + } + this.currentlyDragging = false; + if (ep._jsPlumb != null) { // if not cleaned up... + + // reset the anchor to the anchor that was initially provided. the one we were using to drag + // the connection was just a placeholder that was located at the place the user pressed the + // mouse button to initiate the drag. + var anchorDef = p.anchor || this.Defaults.Anchor, + oldAnchor = ep.anchor, + oldConnection = ep.connections[0]; + + var newAnchor = this.makeAnchor(anchorDef, elid, this), + _el = ep.element; + + // if the anchor has a 'positionFinder' set, then delegate to that function to find + // out where to locate the anchor. issue 117. + if (newAnchor.positionFinder != null) { + var elPosition = _currentInstance.getOffset(_el), + elSize = this.getSize(_el), + dropPosition = { left: elPosition.left + (oldAnchor.x * elSize[0]), top: elPosition.top + (oldAnchor.y * elSize[1]) }, + ap = newAnchor.positionFinder(dropPosition, elPosition, elSize, newAnchor.constructorParams); + + newAnchor.x = ap[0]; + newAnchor.y = ap[1]; + } + + ep.setAnchor(newAnchor, true); + ep.repaint(); + this.repaint(ep.elementId); + if (oldConnection != null) { + this.repaint(oldConnection.targetId); + } + } + }.bind(this)); + + // when the user presses the mouse, add an Endpoint, if we are enabled. + var mouseDownListener = function (e) { + // on right mouse button, abort. + if (e.which === 3 || e.button === 2) { + return; + } + + // TODO store def on element. + var def = this.sourceEndpointDefinitions[elid][type]; + + // if disabled, return. + if (!def.enabled) { + return; + } + + elid = this.getId(this.getElement(elInfo.el)); // elid might have changed since this method was called to configure the element. + + // if a filter was given, run it, and return if it says no. + if (p.filter) { + var r = _ju.isString(p.filter) ? selectorFilter(e, elInfo.el, p.filter, this, p.filterExclude) : p.filter(e, elInfo.el); + if (r === false) { + return; + } + } + + // if maxConnections reached + var sourceCount = this.select({source: elid}).length; + if (def.maxConnections >= 0 && (sourceCount >= def.maxConnections)) { + if (onMaxConnections) { + onMaxConnections({ + element: elInfo.el, + maxConnections: maxConnections + }, e); + } + return false; + } + + // find the position on the element at which the mouse was pressed; this is where the endpoint + // will be located. + var elxy = root.jsPlumb.getPositionOnElement(e, _del, _zoom); + + // we need to override the anchor in here, and force 'isSource', but we don't want to mess with + // the params passed in, because after a connection is established we're going to reset the endpoint + // to have the anchor we were given. + var tempEndpointParams = {}; + root.jsPlumb.extend(tempEndpointParams, p); + tempEndpointParams.isTemporarySource = true; + tempEndpointParams.anchor = [ elxy[0], elxy[1] , 0, 0]; + tempEndpointParams.dragOptions = dragOptions; + + if (def.def.scope) { + tempEndpointParams.scope = def.def.scope; + } + + ep = this.addEndpoint(elid, tempEndpointParams); + endpointAddedButNoDragYet = true; + ep.setDeleteOnEmpty(true); + + // if unique endpoint and it's already been created, push it onto the endpoint we create. at the end + // of a successful connection we'll switch to that endpoint. + // TODO this is the same code as the programmatic endpoints create on line 1050 ish + if (def.uniqueEndpoint) { + if (!def.endpoint) { + def.endpoint = ep; + ep.setDeleteOnEmpty(false); + } + else { + ep.finalEndpoint = def.endpoint; + } + } + + var _delTempEndpoint = function () { + // this mouseup event is fired only if no dragging occurred, by jquery and yui, but for mootools + // it is fired even if dragging has occurred, in which case we would blow away a perfectly + // legitimate endpoint, were it not for this check. the flag is set after adding an + // endpoint and cleared in a drag listener we set in the dragOptions above. + _currentInstance.off(ep.canvas, "mouseup", _delTempEndpoint); + _currentInstance.off(elInfo.el, "mouseup", _delTempEndpoint); + if (endpointAddedButNoDragYet) { + endpointAddedButNoDragYet = false; + _currentInstance.deleteEndpoint(ep); + } + }; + + _currentInstance.on(ep.canvas, "mouseup", _delTempEndpoint); + _currentInstance.on(elInfo.el, "mouseup", _delTempEndpoint); + + // optionally check for attributes to extract from the source element + var payload = {}; + if (def.def.extract) { + for (var att in def.def.extract) { + var v = (e.srcElement || e.target).getAttribute(att); + if (v) { + payload[def.def.extract[att]] = v; + } + } + } + + // and then trigger its mousedown event, which will kick off a drag, which will start dragging + // a new connection from this endpoint. + _currentInstance.trigger(ep.canvas, "mousedown", e, payload); + + _ju.consume(e); + + }.bind(this); + + this.on(elInfo.el, "mousedown", mouseDownListener); + _def.trigger = mouseDownListener; + + // if a filter was provided, set it as a dragFilter on the element, + // to prevent the element drag function from kicking in when we want to + // drag a new connection + if (p.filter && (_ju.isString(p.filter) || _ju.isFunction(p.filter))) { + _currentInstance.setDragFilter(elInfo.el, p.filter); + } + + var dropOptions = root.jsPlumb.extend({}, p.dropOptions || {}); + + _makeElementDropHandler(elInfo, p, dropOptions, true, p.isTarget === true); + + }.bind(this); + + var inputs = el.length && el.constructor !== String ? el : [ el ]; + for (var i = 0, ii = inputs.length; i < ii; i++) { + _doOne(_info(inputs[i])); + } + + return this; + }; + + // see api docs + this.unmakeSource = function (el, connectionType, doNotClearArrays) { + var info = _info(el); + _currentInstance.destroyDroppable(info.el, "internal"); + var eldefs = this.sourceEndpointDefinitions[info.id]; + if (eldefs) { + for (var def in eldefs) { + if (connectionType == null || connectionType === def) { + var mouseDownListener = eldefs[def].trigger; + if (mouseDownListener) { + _currentInstance.off(info.el, "mousedown", mouseDownListener); + } + if (!doNotClearArrays) { + delete this.sourceEndpointDefinitions[info.id][def]; + } + } + } + } + + return this; + }; + + // see api docs + this.unmakeEverySource = function () { + for (var i in this.sourceEndpointDefinitions) { + _currentInstance.unmakeSource(i, null, true); + } + + this.sourceEndpointDefinitions = {}; + return this; + }; + + var _getScope = function (el, types, connectionType) { + types = _ju.isArray(types) ? types : [ types ]; + var id = _getId(el); + connectionType = connectionType || "default"; + for (var i = 0; i < types.length; i++) { + var eldefs = this[types[i]][id]; + if (eldefs && eldefs[connectionType]) { + return eldefs[connectionType].def.scope || this.Defaults.Scope; + } + } + }.bind(this); + + var _setScope = function (el, scope, types, connectionType) { + types = _ju.isArray(types) ? types : [ types ]; + var id = _getId(el); + connectionType = connectionType || "default"; + for (var i = 0; i < types.length; i++) { + var eldefs = this[types[i]][id]; + if (eldefs && eldefs[connectionType]) { + eldefs[connectionType].def.scope = scope; + } + } + + }.bind(this); + + this.getScope = function (el, scope) { + return _getScope(el, [ "sourceEndpointDefinitions", "targetEndpointDefinitions" ]); + }; + this.getSourceScope = function (el) { + return _getScope(el, "sourceEndpointDefinitions"); + }; + this.getTargetScope = function (el) { + return _getScope(el, "targetEndpointDefinitions"); + }; + this.setScope = function (el, scope, connectionType) { + this.setSourceScope(el, scope, connectionType); + this.setTargetScope(el, scope, connectionType); + }; + this.setSourceScope = function (el, scope, connectionType) { + _setScope(el, scope, "sourceEndpointDefinitions", connectionType); + // we get the source scope during the mousedown event, but we also want to set this. + this.setDragScope(el, scope); + }; + this.setTargetScope = function (el, scope, connectionType) { + _setScope(el, scope, "targetEndpointDefinitions", connectionType); + this.setDropScope(el, scope); + }; + + // see api docs + this.unmakeEveryTarget = function () { + for (var i in this.targetEndpointDefinitions) { + _currentInstance.unmakeTarget(i, true); + } + + this.targetEndpointDefinitions = {}; + return this; + }; + + // does the work of setting a source enabled or disabled. + var _setEnabled = function (type, el, state, toggle, connectionType) { + var a = type === "source" ? this.sourceEndpointDefinitions : this.targetEndpointDefinitions, + originalState, info, newState; + + connectionType = connectionType || "default"; + + // a selector or an array + if (el.length && !_ju.isString(el)) { + originalState = []; + for (var i = 0, ii = el.length; i < ii; i++) { + info = _info(el[i]); + if (a[info.id] && a[info.id][connectionType]) { + originalState[i] = a[info.id][connectionType].enabled; + newState = toggle ? !originalState[i] : state; + a[info.id][connectionType].enabled = newState; + _currentInstance[newState ? "removeClass" : "addClass"](info.el, "jtk-" + type + "-disabled"); + } + } + } + // otherwise a DOM element or a String ID. + else { + info = _info(el); + var id = info.id; + if (a[id] && a[id][connectionType]) { + originalState = a[id][connectionType].enabled; + newState = toggle ? !originalState : state; + a[id][connectionType].enabled = newState; + _currentInstance[newState ? "removeClass" : "addClass"](info.el, "jtk-" + type + "-disabled"); + } + } + return originalState; + }.bind(this); + + var _first = function (el, fn) { + if (_ju.isString(el) || !el.length) { + return fn.apply(this, [ el ]); + } + else if (el.length) { + return fn.apply(this, [ el[0] ]); + } + + }.bind(this); + + this.toggleSourceEnabled = function (el, connectionType) { + _setEnabled("source", el, null, true, connectionType); + return this.isSourceEnabled(el, connectionType); + }; + + this.setSourceEnabled = function (el, state, connectionType) { + return _setEnabled("source", el, state, null, connectionType); + }; + this.isSource = function (el, connectionType) { + connectionType = connectionType || "default"; + return _first(el, function (_el) { + var eldefs = this.sourceEndpointDefinitions[_info(_el).id]; + return eldefs != null && eldefs[connectionType] != null; + }.bind(this)); + }; + this.isSourceEnabled = function (el, connectionType) { + connectionType = connectionType || "default"; + return _first(el, function (_el) { + var sep = this.sourceEndpointDefinitions[_info(_el).id]; + return sep && sep[connectionType] && sep[connectionType].enabled === true; + }.bind(this)); + }; + + this.toggleTargetEnabled = function (el, connectionType) { + _setEnabled("target", el, null, true, connectionType); + return this.isTargetEnabled(el, connectionType); + }; + + this.isTarget = function (el, connectionType) { + connectionType = connectionType || "default"; + return _first(el, function (_el) { + var eldefs = this.targetEndpointDefinitions[_info(_el).id]; + return eldefs != null && eldefs[connectionType] != null; + }.bind(this)); + }; + this.isTargetEnabled = function (el, connectionType) { + connectionType = connectionType || "default"; + return _first(el, function (_el) { + var tep = this.targetEndpointDefinitions[_info(_el).id]; + return tep && tep[connectionType] && tep[connectionType].enabled === true; + }.bind(this)); + }; + this.setTargetEnabled = function (el, state, connectionType) { + return _setEnabled("target", el, state, null, connectionType); + }; + +// --------------------- end makeSource/makeTarget ---------------------------------------------- + + this.ready = function (fn) { + _currentInstance.bind("ready", fn); + }; + + var _elEach = function(el, fn) { + // support both lists... + if (typeof el === 'object' && el.length) { + for (var i = 0, ii = el.length; i < ii; i++) { + fn(el[i]); + } + } + else {// ...and single strings or elements. + fn(el); + } + + return _currentInstance; + }; + + // repaint some element's endpoints and connections + this.repaint = function (el, ui, timestamp) { + return _elEach(el, function(_el) { + _draw(_el, ui, timestamp); + }); + }; + + this.revalidate = function (el, timestamp, isIdAlready) { + return _elEach(el, function(_el) { + var elId = isIdAlready ? _el : _currentInstance.getId(_el); + _currentInstance.updateOffset({ elId: elId, recalc: true, timestamp:timestamp }); + var dm = _currentInstance.getDragManager(); + if (dm) { + dm.updateOffsets(elId); + } + _currentInstance.repaint(_el); + }); + }; + + // repaint every endpoint and connection. + this.repaintEverything = function () { + // TODO this timestamp causes continuous anchors to not repaint properly. + // fix this. do not just take out the timestamp. it runs a lot faster with + // the timestamp included. + var timestamp = _timestamp(), elId; + + for (elId in endpointsByElement) { + _currentInstance.updateOffset({ elId: elId, recalc: true, timestamp: timestamp }); + } + + for (elId in endpointsByElement) { + _draw(elId, null, timestamp); + } + + return this; + }; + + this.removeAllEndpoints = function (el, recurse, affectedElements) { + affectedElements = affectedElements || []; + var _one = function (_el) { + var info = _info(_el), + ebe = endpointsByElement[info.id], + i, ii; + + if (ebe) { + affectedElements.push(info); + for (i = 0, ii = ebe.length; i < ii; i++) { + _currentInstance.deleteEndpoint(ebe[i], false); + } + } + delete endpointsByElement[info.id]; + + if (recurse) { + if (info.el && info.el.nodeType !== 3 && info.el.nodeType !== 8) { + for (i = 0, ii = info.el.childNodes.length; i < ii; i++) { + _one(info.el.childNodes[i]); + } + } + } + + }; + _one(el); + return this; + }; + + var _doRemove = function(info, affectedElements) { + _currentInstance.removeAllEndpoints(info.id, true, affectedElements); + var dm = _currentInstance.getDragManager(); + var _one = function(_info) { + + if (dm) { + dm.elementRemoved(_info.id); + } + _currentInstance.anchorManager.clearFor(_info.id); + _currentInstance.anchorManager.removeFloatingConnection(_info.id); + + if (_currentInstance.isSource(_info.el)) { + _currentInstance.unmakeSource(_info.el); + } + if (_currentInstance.isTarget(_info.el)) { + _currentInstance.unmakeTarget(_info.el); + } + _currentInstance.destroyDraggable(_info.el); + _currentInstance.destroyDroppable(_info.el); + + + delete _currentInstance.floatingConnections[_info.id]; + delete managedElements[_info.id]; + delete offsets[_info.id]; + if (_info.el) { + _currentInstance.removeElement(_info.el); + _info.el._jsPlumb = null; + } + }; + + // remove all affected child elements + for (var ae = 1; ae < affectedElements.length; ae++) { + _one(affectedElements[ae]); + } + // and always remove the requested one from the dom. + _one(info); + }; + + /** + * Remove the given element, including cleaning up all endpoints registered for it. + * This is exposed in the public API but also used internally by jsPlumb when removing the + * element associated with a connection drag. + */ + this.remove = function (el, doNotRepaint) { + var info = _info(el), affectedElements = []; + if (info.text) { + info.el.parentNode.removeChild(info.el); + } + else if (info.id) { + _currentInstance.batch(function () { + _doRemove(info, affectedElements); + }, doNotRepaint === true); + } + return _currentInstance; + }; + + this.empty = function (el, doNotRepaint) { + var affectedElements = []; + var _one = function(el, dontRemoveFocus) { + var info = _info(el); + if (info.text) { + info.el.parentNode.removeChild(info.el); + } + else if (info.el) { + while(info.el.childNodes.length > 0) { + _one(info.el.childNodes[0]); + } + if (!dontRemoveFocus) { + _doRemove(info, affectedElements); + } + } + }; + + _currentInstance.batch(function() { + _one(el, true); + }, doNotRepaint === false); + + return _currentInstance; + }; + + this.reset = function (doNotUnbindInstanceEventListeners) { + _currentInstance.silently(function() { + _hoverSuspended = false; + _currentInstance.removeAllGroups(); + _currentInstance.removeGroupManager(); + _currentInstance.deleteEveryEndpoint(); + if (!doNotUnbindInstanceEventListeners) { + _currentInstance.unbind(); + } + this.targetEndpointDefinitions = {}; + this.sourceEndpointDefinitions = {}; + connections.length = 0; + if (this.doReset) { + this.doReset(); + } + }.bind(this)); + }; + + var _clearObject = function (obj) { + if (obj.canvas && obj.canvas.parentNode) { + obj.canvas.parentNode.removeChild(obj.canvas); + } + obj.cleanup(); + obj.destroy(); + }; + + this.clear = function () { + _currentInstance.select().each(_clearObject); + _currentInstance.selectEndpoints().each(_clearObject); + + endpointsByElement = {}; + endpointsByUUID = {}; + }; + + this.setDefaultScope = function (scope) { + DEFAULT_SCOPE = scope; + return _currentInstance; + }; + + this.deriveEndpointAndAnchorSpec = function(type, dontPrependDefault) { + var bits = ((dontPrependDefault ? "" : "default ") + type).split(/[\s]/), eps = null, ep = null, a = null, as = null; + for (var i = 0; i < bits.length; i++) { + var _t = _currentInstance.getType(bits[i], "connection"); + if (_t) { + if (_t.endpoints) { + eps = _t.endpoints; + } + if (_t.endpoint) { + ep = _t.endpoint; + } + if (_t.anchors) { + as = _t.anchors; + } + if (_t.anchor) { + a = _t.anchor; + } + } + } + return { endpoints: eps ? eps : [ ep, ep ], anchors: as ? as : [a, a ]}; + }; + + // sets the id of some element, changing whatever we need to to keep track. + this.setId = function (el, newId, doNotSetAttribute) { + // + var id; + + if (_ju.isString(el)) { + id = el; + } + else { + el = this.getElement(el); + id = this.getId(el); + } + + var sConns = this.getConnections({source: id, scope: '*'}, true), + tConns = this.getConnections({target: id, scope: '*'}, true); + + newId = "" + newId; + + if (!doNotSetAttribute) { + el = this.getElement(id); + this.setAttribute(el, "id", newId); + } + else { + el = this.getElement(newId); + } + + endpointsByElement[newId] = endpointsByElement[id] || []; + for (var i = 0, ii = endpointsByElement[newId].length; i < ii; i++) { + endpointsByElement[newId][i].setElementId(newId); + endpointsByElement[newId][i].setReferenceElement(el); + } + delete endpointsByElement[id]; + + this.sourceEndpointDefinitions[newId] = this.sourceEndpointDefinitions[id]; + delete this.sourceEndpointDefinitions[id]; + this.targetEndpointDefinitions[newId] = this.targetEndpointDefinitions[id]; + delete this.targetEndpointDefinitions[id]; + + this.anchorManager.changeId(id, newId); + var dm = this.getDragManager(); + if (dm) { + dm.changeId(id, newId); + } + managedElements[newId] = managedElements[id]; + delete managedElements[id]; + + var _conns = function (list, epIdx, type) { + for (var i = 0, ii = list.length; i < ii; i++) { + list[i].endpoints[epIdx].setElementId(newId); + list[i].endpoints[epIdx].setReferenceElement(el); + list[i][type + "Id"] = newId; + list[i][type] = el; + } + }; + _conns(sConns, 0, "source"); + _conns(tConns, 1, "target"); + + this.repaint(newId); + }; + + this.setDebugLog = function (debugLog) { + log = debugLog; + }; + + this.setSuspendDrawing = function (val, repaintAfterwards) { + var curVal = _suspendDrawing; + _suspendDrawing = val; + if (val) { + _suspendedAt = new Date().getTime(); + } else { + _suspendedAt = null; + } + if (repaintAfterwards) { + this.repaintEverything(); + } + return curVal; + }; + + // returns whether or not drawing is currently suspended. + this.isSuspendDrawing = function () { + return _suspendDrawing; + }; + + // return timestamp for when drawing was suspended. + this.getSuspendedAt = function () { + return _suspendedAt; + }; + + this.batch = function (fn, doNotRepaintAfterwards) { + var _wasSuspended = this.isSuspendDrawing(); + if (!_wasSuspended) { + this.setSuspendDrawing(true); + } + try { + fn(); + } + catch (e) { + _ju.log("Function run while suspended failed", e); + } + if (!_wasSuspended) { + this.setSuspendDrawing(false, !doNotRepaintAfterwards); + } + }; + + this.doWhileSuspended = this.batch; + + this.getCachedData = _getCachedData; + this.timestamp = _timestamp; + this.show = function (el, changeEndpoints) { + _setVisible(el, "block", changeEndpoints); + return _currentInstance; + }; + + // TODO: update this method to return the current state. + this.toggleVisible = _toggleVisible; + this.addListener = this.bind; + + var floatingConnections = []; + this.registerFloatingConnection = function(info, conn, ep) { + floatingConnections[info.id] = conn; + // only register for the target endpoint; we will not be dragging the source at any time + // before this connection is either discarded or made into a permanent connection. + _ju.addToList(endpointsByElement, info.id, ep); + }; + this.getFloatingConnectionFor = function(id) { + return floatingConnections[id]; + }; + }; + + _ju.extend(root.jsPlumbInstance, _ju.EventGenerator, { + setAttribute: function (el, a, v) { + this.setAttribute(el, a, v); + }, + getAttribute: function (el, a) { + return this.getAttribute(root.jsPlumb.getElement(el), a); + }, + convertToFullOverlaySpec: function(spec) { + if (_ju.isString(spec)) { + spec = [ spec, { } ]; + } + spec[1].id = spec[1].id || _ju.uuid(); + return spec; + }, + registerConnectionType: function (id, type) { + this._connectionTypes[id] = root.jsPlumb.extend({}, type); + if (type.overlays) { + var to = {}; + for (var i = 0; i < type.overlays.length; i++) { + // if a string, convert to object representation so that we can store the typeid on it. + // also assign an id. + var fo = this.convertToFullOverlaySpec(type.overlays[i]); + to[fo[1].id] = fo; + } + this._connectionTypes[id].overlays = to; + } + }, + registerConnectionTypes: function (types) { + for (var i in types) { + this.registerConnectionType(i, types[i]); + } + }, + registerEndpointType: function (id, type) { + this._endpointTypes[id] = root.jsPlumb.extend({}, type); + if (type.overlays) { + var to = {}; + for (var i = 0; i < type.overlays.length; i++) { + // if a string, convert to object representation so that we can store the typeid on it. + // also assign an id. + var fo = this.convertToFullOverlaySpec(type.overlays[i]); + to[fo[1].id] = fo; + } + this._endpointTypes[id].overlays = to; + } + }, + registerEndpointTypes: function (types) { + for (var i in types) { + this.registerEndpointType(i, types[i]); + } + }, + getType: function (id, typeDescriptor) { + return typeDescriptor === "connection" ? this._connectionTypes[id] : this._endpointTypes[id]; + }, + setIdChanged: function (oldId, newId) { + this.setId(oldId, newId, true); + }, + // set parent: change the parent for some node and update all the registrations we need to. + setParent: function (el, newParent) { + var _dom = this.getElement(el), + _id = this.getId(_dom), + _pdom = this.getElement(newParent), + _pid = this.getId(_pdom), + dm = this.getDragManager(); + + _dom.parentNode.removeChild(_dom); + _pdom.appendChild(_dom); + if (dm) { + dm.setParent(_dom, _id, _pdom, _pid); + } + }, + extend: function (o1, o2, names) { + var i; + if (names) { + for (i = 0; i < names.length; i++) { + o1[names[i]] = o2[names[i]]; + } + } + else { + for (i in o2) { + o1[i] = o2[i]; + } + } + + return o1; + }, + floatingConnections: {}, + getFloatingAnchorIndex: function (jpc) { + return jpc.endpoints[0].isFloating() ? 0 : jpc.endpoints[1].isFloating() ? 1 : -1; + } + }); + +// --------------------- static instance + module registration ------------------------------------------- + +// create static instance and assign to window if window exists. + var jsPlumb = new jsPlumbInstance(); + // register on 'root' (lets us run on server or browser) + root.jsPlumb = jsPlumb; + // add 'getInstance' method to static instance + jsPlumb.getInstance = function (_defaults, overrideFns) { + var j = new jsPlumbInstance(_defaults); + if (overrideFns) { + for (var ovf in overrideFns) { + j[ovf] = overrideFns[ovf]; + } + } + j.init(); + return j; + }; + jsPlumb.each = function (spec, fn) { + if (spec == null) { + return; + } + if (typeof spec === "string") { + fn(jsPlumb.getElement(spec)); + } + else if (spec.length != null) { + for (var i = 0; i < spec.length; i++) { + fn(jsPlumb.getElement(spec[i])); + } + } + else { + fn(spec); + } // assume it's an element. + }; + + // CommonJS + if (typeof exports !== 'undefined') { + exports.jsPlumb = jsPlumb; + } + +// --------------------- end static instance + AMD registration ------------------------------------------- + +}).call(typeof window !== 'undefined' ? window : this); + +/* + * 2010 - 2018 jsPlumb (hello@jsplumbtoolkit.com) + * + * https://jsplumbtoolkit.com + * https://github.com/jsplumb/jsplumb + * + * Dual licensed under the MIT and GPL2 licenses. + */ +;(function() { + + "use strict"; + var root = this, _jp = root.jsPlumb, _ju = root.jsPlumbUtil; + + // ------------------------------ BEGIN OverlayCapablejsPlumbUIComponent -------------------------------------------- + + var _internalLabelOverlayId = "__label", + // this is a shortcut helper method to let people add a label as + // overlay. + _makeLabelOverlay = function (component, params) { + + var _params = { + cssClass: params.cssClass, + labelStyle: component.labelStyle, + id: _internalLabelOverlayId, + component: component, + _jsPlumb: component._jsPlumb.instance // TODO not necessary, since the instance can be accessed through the component. + }, + mergedParams = _jp.extend(_params, params); + + return new _jp.Overlays[component._jsPlumb.instance.getRenderMode()].Label(mergedParams); + }, + _processOverlay = function (component, o) { + var _newOverlay = null; + if (_ju.isArray(o)) { // this is for the shorthand ["Arrow", { width:50 }] syntax + // there's also a three arg version: + // ["Arrow", { width:50 }, {location:0.7}] + // which merges the 3rd arg into the 2nd. + var type = o[0], + // make a copy of the object so as not to mess up anyone else's reference... + p = _jp.extend({component: component, _jsPlumb: component._jsPlumb.instance}, o[1]); + if (o.length === 3) { + _jp.extend(p, o[2]); + } + _newOverlay = new _jp.Overlays[component._jsPlumb.instance.getRenderMode()][type](p); + } else if (o.constructor === String) { + _newOverlay = new _jp.Overlays[component._jsPlumb.instance.getRenderMode()][o]({component: component, _jsPlumb: component._jsPlumb.instance}); + } else { + _newOverlay = o; + } + + _newOverlay.id = _newOverlay.id || _ju.uuid(); + component.cacheTypeItem("overlay", _newOverlay, _newOverlay.id); + component._jsPlumb.overlays[_newOverlay.id] = _newOverlay; + + return _newOverlay; + }; + + _jp.OverlayCapableJsPlumbUIComponent = function (params) { + + root.jsPlumbUIComponent.apply(this, arguments); + this._jsPlumb.overlays = {}; + this._jsPlumb.overlayPositions = {}; + + if (params.label) { + this.getDefaultType().overlays[_internalLabelOverlayId] = ["Label", { + label: params.label, + location: params.labelLocation || this.defaultLabelLocation || 0.5, + labelStyle: params.labelStyle || this._jsPlumb.instance.Defaults.LabelStyle, + id:_internalLabelOverlayId + }]; + } + + this.setListenerComponent = function (c) { + if (this._jsPlumb) { + for (var i in this._jsPlumb.overlays) { + this._jsPlumb.overlays[i].setListenerComponent(c); + } + } + }; + }; + + _jp.OverlayCapableJsPlumbUIComponent.applyType = function (component, t) { + if (t.overlays) { + // loop through the ones in the type. if already present on the component, + // dont remove or re-add. + var keep = {}, i; + + for (i in t.overlays) { + + var existing = component._jsPlumb.overlays[t.overlays[i][1].id]; + if (existing) { + // maybe update from data, if there were parameterised values for instance. + existing.updateFrom(t.overlays[i][1]); + keep[t.overlays[i][1].id] = true; + } + else { + var c = component.getCachedTypeItem("overlay", t.overlays[i][1].id); + if (c != null) { + c.reattach(component._jsPlumb.instance, component); + c.setVisible(true); + // maybe update from data, if there were parameterised values for instance. + c.updateFrom(t.overlays[i][1]); + component._jsPlumb.overlays[c.id] = c; + } + else { + c = component.addOverlay(t.overlays[i], true); + } + keep[c.id] = true; + } + } + + // now loop through the full overlays and remove those that we dont want to keep + for (i in component._jsPlumb.overlays) { + if (keep[component._jsPlumb.overlays[i].id] == null) { + component.removeOverlay(component._jsPlumb.overlays[i].id, true); // remove overlay but dont clean it up. + // that would remove event listeners etc; overlays are never discarded by the types stuff, they are + // just detached/reattached. + } + } + } + }; + + _ju.extend(_jp.OverlayCapableJsPlumbUIComponent, root.jsPlumbUIComponent, { + + setHover: function (hover, ignoreAttachedElements) { + if (this._jsPlumb && !this._jsPlumb.instance.isConnectionBeingDragged()) { + for (var i in this._jsPlumb.overlays) { + this._jsPlumb.overlays[i][hover ? "addClass" : "removeClass"](this._jsPlumb.instance.hoverClass); + } + } + }, + addOverlay: function (overlay, doNotRepaint) { + var o = _processOverlay(this, overlay); + if (!doNotRepaint) { + this.repaint(); + } + return o; + }, + getOverlay: function (id) { + return this._jsPlumb.overlays[id]; + }, + getOverlays: function () { + return this._jsPlumb.overlays; + }, + hideOverlay: function (id) { + var o = this.getOverlay(id); + if (o) { + o.hide(); + } + }, + hideOverlays: function () { + for (var i in this._jsPlumb.overlays) { + this._jsPlumb.overlays[i].hide(); + } + }, + showOverlay: function (id) { + var o = this.getOverlay(id); + if (o) { + o.show(); + } + }, + showOverlays: function () { + for (var i in this._jsPlumb.overlays) { + this._jsPlumb.overlays[i].show(); + } + }, + removeAllOverlays: function (doNotRepaint) { + for (var i in this._jsPlumb.overlays) { + if (this._jsPlumb.overlays[i].cleanup) { + this._jsPlumb.overlays[i].cleanup(); + } + } + + this._jsPlumb.overlays = {}; + this._jsPlumb.overlayPositions = null; + this._jsPlumb.overlayPlacements= {}; + if (!doNotRepaint) { + this.repaint(); + } + }, + removeOverlay: function (overlayId, dontCleanup) { + var o = this._jsPlumb.overlays[overlayId]; + if (o) { + o.setVisible(false); + if (!dontCleanup && o.cleanup) { + o.cleanup(); + } + delete this._jsPlumb.overlays[overlayId]; + if (this._jsPlumb.overlayPositions) { + delete this._jsPlumb.overlayPositions[overlayId]; + } + + if (this._jsPlumb.overlayPlacements) { + delete this._jsPlumb.overlayPlacements[overlayId]; + } + } + }, + removeOverlays: function () { + for (var i = 0, j = arguments.length; i < j; i++) { + this.removeOverlay(arguments[i]); + } + }, + moveParent: function (newParent) { + if (this.bgCanvas) { + this.bgCanvas.parentNode.removeChild(this.bgCanvas); + newParent.appendChild(this.bgCanvas); + } + + if (this.canvas && this.canvas.parentNode) { + this.canvas.parentNode.removeChild(this.canvas); + newParent.appendChild(this.canvas); + + for (var i in this._jsPlumb.overlays) { + if (this._jsPlumb.overlays[i].isAppendedAtTopLevel) { + var el = this._jsPlumb.overlays[i].getElement(); + el.parentNode.removeChild(el); + newParent.appendChild(el); + } + } + } + }, + getLabel: function () { + var lo = this.getOverlay(_internalLabelOverlayId); + return lo != null ? lo.getLabel() : null; + }, + getLabelOverlay: function () { + return this.getOverlay(_internalLabelOverlayId); + }, + setLabel: function (l) { + var lo = this.getOverlay(_internalLabelOverlayId); + if (!lo) { + var params = l.constructor === String || l.constructor === Function ? { label: l } : l; + lo = _makeLabelOverlay(this, params); + this._jsPlumb.overlays[_internalLabelOverlayId] = lo; + } + else { + if (l.constructor === String || l.constructor === Function) { + lo.setLabel(l); + } + else { + if (l.label) { + lo.setLabel(l.label); + } + if (l.location) { + lo.setLocation(l.location); + } + } + } + + if (!this._jsPlumb.instance.isSuspendDrawing()) { + this.repaint(); + } + }, + cleanup: function (force) { + for (var i in this._jsPlumb.overlays) { + this._jsPlumb.overlays[i].cleanup(force); + this._jsPlumb.overlays[i].destroy(force); + } + if (force) { + this._jsPlumb.overlays = {}; + this._jsPlumb.overlayPositions = null; + } + }, + setVisible: function (v) { + this[v ? "showOverlays" : "hideOverlays"](); + }, + setAbsoluteOverlayPosition: function (overlay, xy) { + this._jsPlumb.overlayPositions[overlay.id] = xy; + }, + getAbsoluteOverlayPosition: function (overlay) { + return this._jsPlumb.overlayPositions ? this._jsPlumb.overlayPositions[overlay.id] : null; + }, + _clazzManip:function(action, clazz, dontUpdateOverlays) { + if (!dontUpdateOverlays) { + for (var i in this._jsPlumb.overlays) { + this._jsPlumb.overlays[i][action + "Class"](clazz); + } + } + }, + addClass:function(clazz, dontUpdateOverlays) { + this._clazzManip("add", clazz, dontUpdateOverlays); + }, + removeClass:function(clazz, dontUpdateOverlays) { + this._clazzManip("remove", clazz, dontUpdateOverlays); + } + }); + +// ------------------------------ END OverlayCapablejsPlumbUIComponent -------------------------------------------- + +}).call(typeof window !== 'undefined' ? window : this); + +/* + * This file contains the code for Endpoints. + * + * Copyright (c) 2010 - 2018 jsPlumb (hello@jsplumbtoolkit.com) + * + * https://jsplumbtoolkit.com + * https://github.com/jsplumb/jsplumb + * + * Dual licensed under the MIT and GPL2 licenses. + */ +;(function () { + + "use strict"; + var root = this, _jp = root.jsPlumb, _ju = root.jsPlumbUtil; + + // create the drag handler for a connection + var _makeConnectionDragHandler = function (endpoint, placeholder, _jsPlumb) { + var stopped = false; + return { + drag: function () { + if (stopped) { + stopped = false; + return true; + } + + if (placeholder.element) { + var _ui = _jsPlumb.getUIPosition(arguments, _jsPlumb.getZoom()); + if (_ui != null) { + _jsPlumb.setPosition(placeholder.element, _ui); + } + _jsPlumb.repaint(placeholder.element, _ui); + // always repaint the source endpoint, because only continuous/dynamic anchors cause the endpoint + // to be repainted, so static anchors need to be told (or the endpoint gets dragged around) + endpoint.paint({anchorPoint:endpoint.anchor.getCurrentLocation({element:endpoint})}); + } + }, + stopDrag: function () { + stopped = true; + } + }; + }; + + // creates a placeholder div for dragging purposes, adds it, and pre-computes its offset. + var _makeDraggablePlaceholder = function (placeholder, _jsPlumb, ipco, ips) { + var n = _jsPlumb.createElement("div", { position : "absolute" }); + _jsPlumb.appendElement(n); + var id = _jsPlumb.getId(n); + _jsPlumb.setPosition(n, ipco); + n.style.width = ips[0] + "px"; + n.style.height = ips[1] + "px"; + _jsPlumb.manage(id, n, true); // TRANSIENT MANAGE + // create and assign an id, and initialize the offset. + placeholder.id = id; + placeholder.element = n; + }; + + // create a floating endpoint (for drag connections) + var _makeFloatingEndpoint = function (paintStyle, referenceAnchor, endpoint, referenceCanvas, sourceElement, _jsPlumb, _newEndpoint, scope) { + var floatingAnchor = new _jp.FloatingAnchor({ reference: referenceAnchor, referenceCanvas: referenceCanvas, jsPlumbInstance: _jsPlumb }); + //setting the scope here should not be the way to fix that mootools issue. it should be fixed by not + // adding the floating endpoint as a droppable. that makes more sense anyway! + // TRANSIENT MANAGE + return _newEndpoint({ + paintStyle: paintStyle, + endpoint: endpoint, + anchor: floatingAnchor, + source: sourceElement, + scope: scope + }); + }; + + var typeParameters = [ "connectorStyle", "connectorHoverStyle", "connectorOverlays", + "connector", "connectionType", "connectorClass", "connectorHoverClass" ]; + + // a helper function that tries to find a connection to the given element, and returns it if so. if elementWithPrecedence is null, + // or no connection to it is found, we return the first connection in our list. + var findConnectionToUseForDynamicAnchor = function (ep, elementWithPrecedence) { + var idx = 0; + if (elementWithPrecedence != null) { + for (var i = 0; i < ep.connections.length; i++) { + if (ep.connections[i].sourceId === elementWithPrecedence || ep.connections[i].targetId === elementWithPrecedence) { + idx = i; + break; + } + } + } + + return ep.connections[idx]; + }; + + _jp.Endpoint = function (params) { + var _jsPlumb = params._jsPlumb, + _newConnection = params.newConnection, + _newEndpoint = params.newEndpoint; + + this.idPrefix = "_jsplumb_e_"; + this.defaultLabelLocation = [ 0.5, 0.5 ]; + this.defaultOverlayKeys = ["Overlays", "EndpointOverlays"]; + _jp.OverlayCapableJsPlumbUIComponent.apply(this, arguments); + +// TYPE + + this.appendToDefaultType({ + connectionType:params.connectionType, + maxConnections: params.maxConnections == null ? this._jsPlumb.instance.Defaults.MaxConnections : params.maxConnections, // maximum number of connections this endpoint can be the source of., + paintStyle: params.endpointStyle || params.paintStyle || params.style || this._jsPlumb.instance.Defaults.EndpointStyle || _jp.Defaults.EndpointStyle, + hoverPaintStyle: params.endpointHoverStyle || params.hoverPaintStyle || this._jsPlumb.instance.Defaults.EndpointHoverStyle || _jp.Defaults.EndpointHoverStyle, + connectorStyle: params.connectorStyle, + connectorHoverStyle: params.connectorHoverStyle, + connectorClass: params.connectorClass, + connectorHoverClass: params.connectorHoverClass, + connectorOverlays: params.connectorOverlays, + connector: params.connector, + connectorTooltip: params.connectorTooltip + }); + +// END TYPE + + this._jsPlumb.enabled = !(params.enabled === false); + this._jsPlumb.visible = true; + this.element = _jp.getElement(params.source); + this._jsPlumb.uuid = params.uuid; + this._jsPlumb.floatingEndpoint = null; + var inPlaceCopy = null; + if (this._jsPlumb.uuid) { + params.endpointsByUUID[this._jsPlumb.uuid] = this; + } + this.elementId = params.elementId; + this.dragProxy = params.dragProxy; + + this._jsPlumb.connectionCost = params.connectionCost; + this._jsPlumb.connectionsDirected = params.connectionsDirected; + this._jsPlumb.currentAnchorClass = ""; + this._jsPlumb.events = {}; + + var deleteOnEmpty = params.deleteOnEmpty === true; + this.setDeleteOnEmpty = function(d) { + deleteOnEmpty = d; + }; + + var _updateAnchorClass = function () { + // stash old, get new + var oldAnchorClass = _jsPlumb.endpointAnchorClassPrefix + "-" + this._jsPlumb.currentAnchorClass; + this._jsPlumb.currentAnchorClass = this.anchor.getCssClass(); + var anchorClass = _jsPlumb.endpointAnchorClassPrefix + (this._jsPlumb.currentAnchorClass ? "-" + this._jsPlumb.currentAnchorClass : ""); + + this.removeClass(oldAnchorClass); + this.addClass(anchorClass); + // add and remove at the same time to reduce the number of reflows. + _jp.updateClasses(this.element, anchorClass, oldAnchorClass); + }.bind(this); + + this.prepareAnchor = function(anchorParams) { + var a = this._jsPlumb.instance.makeAnchor(anchorParams, this.elementId, _jsPlumb); + a.bind("anchorChanged", function (currentAnchor) { + this.fire("anchorChanged", {endpoint: this, anchor: currentAnchor}); + _updateAnchorClass(); + }.bind(this)); + return a; + }; + + this.setPreparedAnchor = function(anchor, doNotRepaint) { + this._jsPlumb.instance.continuousAnchorFactory.clear(this.elementId); + this.anchor = anchor; + _updateAnchorClass(); + + if (!doNotRepaint) { + this._jsPlumb.instance.repaint(this.elementId); + } + + return this; + }; + + this.setAnchor = function (anchorParams, doNotRepaint) { + var a = this.prepareAnchor(anchorParams); + this.setPreparedAnchor(a, doNotRepaint); + return this; + }; + + var internalHover = function (state) { + if (this.connections.length > 0) { + for (var i = 0; i < this.connections.length; i++) { + this.connections[i].setHover(state, false); + } + } + else { + this.setHover(state); + } + }.bind(this); + + this.bind("mouseover", function () { + internalHover(true); + }); + this.bind("mouseout", function () { + internalHover(false); + }); + + // ANCHOR MANAGER + if (!params._transient) { // in place copies, for example, are transient. they will never need to be retrieved during a paint cycle, because they dont move, and then they are deleted. + this._jsPlumb.instance.anchorManager.add(this, this.elementId); + } + + this.prepareEndpoint = function(ep, typeId) { + var _e = function (t, p) { + var rm = _jsPlumb.getRenderMode(); + if (_jp.Endpoints[rm][t]) { + return new _jp.Endpoints[rm][t](p); + } + if (!_jsPlumb.Defaults.DoNotThrowErrors) { + throw { msg: "jsPlumb: unknown endpoint type '" + t + "'" }; + } + }; + + var endpointArgs = { + _jsPlumb: this._jsPlumb.instance, + cssClass: params.cssClass, + container: params.container, + tooltip: params.tooltip, + connectorTooltip: params.connectorTooltip, + endpoint: this + }; + + var endpoint; + + if (_ju.isString(ep)) { + endpoint = _e(ep, endpointArgs); + } + else if (_ju.isArray(ep)) { + endpointArgs = _ju.merge(ep[1], endpointArgs); + endpoint = _e(ep[0], endpointArgs); + } + else { + endpoint = ep.clone(); + } + + // assign a clone function using a copy of endpointArgs. this is used when a drag starts: the endpoint that was dragged is cloned, + // and the clone is left in its place while the original one goes off on a magical journey. + // the copy is to get around a closure problem, in which endpointArgs ends up getting shared by + // the whole world. + //var argsForClone = jsPlumb.extend({}, endpointArgs); + endpoint.clone = function () { + // TODO this, and the code above, can be refactored to be more dry. + if (_ju.isString(ep)) { + return _e(ep, endpointArgs); + } + else if (_ju.isArray(ep)) { + endpointArgs = _ju.merge(ep[1], endpointArgs); + return _e(ep[0], endpointArgs); + } + }.bind(this); + + endpoint.typeId = typeId; + return endpoint; + }; + + this.setEndpoint = function(ep, doNotRepaint) { + var _ep = this.prepareEndpoint(ep); + this.setPreparedEndpoint(_ep, true); + }; + + this.setPreparedEndpoint = function (ep, doNotRepaint) { + if (this.endpoint != null) { + this.endpoint.cleanup(); + this.endpoint.destroy(); + } + this.endpoint = ep; + this.type = this.endpoint.type; + this.canvas = this.endpoint.canvas; + }; + + _jp.extend(this, params, typeParameters); + + this.isSource = params.isSource || false; + this.isTemporarySource = params.isTemporarySource || false; + this.isTarget = params.isTarget || false; + + this.connections = params.connections || []; + this.connectorPointerEvents = params["connector-pointer-events"]; + + this.scope = params.scope || _jsPlumb.getDefaultScope(); + this.timestamp = null; + this.reattachConnections = params.reattach || _jsPlumb.Defaults.ReattachConnections; + this.connectionsDetachable = _jsPlumb.Defaults.ConnectionsDetachable; + if (params.connectionsDetachable === false || params.detachable === false) { + this.connectionsDetachable = false; + } + this.dragAllowedWhenFull = params.dragAllowedWhenFull !== false; + + if (params.onMaxConnections) { + this.bind("maxConnections", params.onMaxConnections); + } + + // + // add a connection. not part of public API. + // + this.addConnection = function (connection) { + this.connections.push(connection); + this[(this.connections.length > 0 ? "add" : "remove") + "Class"](_jsPlumb.endpointConnectedClass); + this[(this.isFull() ? "add" : "remove") + "Class"](_jsPlumb.endpointFullClass); + }; + + this.detachFromConnection = function (connection, idx, doNotCleanup) { + idx = idx == null ? this.connections.indexOf(connection) : idx; + if (idx >= 0) { + this.connections.splice(idx, 1); + this[(this.connections.length > 0 ? "add" : "remove") + "Class"](_jsPlumb.endpointConnectedClass); + this[(this.isFull() ? "add" : "remove") + "Class"](_jsPlumb.endpointFullClass); + } + + if (!doNotCleanup && deleteOnEmpty && this.connections.length === 0) { + _jsPlumb.deleteObject({ + endpoint: this, + fireEvent: false, + deleteAttachedObjects: doNotCleanup !== true + }); + } + }; + + this.deleteEveryConnection = function(params) { + var c = this.connections.length; + for (var i = 0; i < c; i++) { + _jsPlumb.deleteConnection(this.connections[0], params); + } + }; + + this.detachFrom = function (targetEndpoint, fireEvent, originalEvent) { + var c = []; + for (var i = 0; i < this.connections.length; i++) { + if (this.connections[i].endpoints[1] === targetEndpoint || this.connections[i].endpoints[0] === targetEndpoint) { + c.push(this.connections[i]); + } + } + for (var j = 0, count = c.length; j < count; j++) { + _jsPlumb.deleteConnection(c[0]); + } + return this; + }; + + this.getElement = function () { + return this.element; + }; + + this.setElement = function (el) { + var parentId = this._jsPlumb.instance.getId(el), + curId = this.elementId; + // remove the endpoint from the list for the current endpoint's element + _ju.removeWithFunction(params.endpointsByElement[this.elementId], function (e) { + return e.id === this.id; + }.bind(this)); + this.element = _jp.getElement(el); + this.elementId = _jsPlumb.getId(this.element); + _jsPlumb.anchorManager.rehomeEndpoint(this, curId, this.element); + _jsPlumb.dragManager.endpointAdded(this.element); + _ju.addToList(params.endpointsByElement, parentId, this); + return this; + }; + + /** + * private but must be exposed. + */ + this.makeInPlaceCopy = function () { + var loc = this.anchor.getCurrentLocation({element: this}), + o = this.anchor.getOrientation(this), + acc = this.anchor.getCssClass(), + inPlaceAnchor = { + bind: function () { + }, + compute: function () { + return [ loc[0], loc[1] ]; + }, + getCurrentLocation: function () { + return [ loc[0], loc[1] ]; + }, + getOrientation: function () { + return o; + }, + getCssClass: function () { + return acc; + } + }; + + return _newEndpoint({ + dropOptions: params.dropOptions, + anchor: inPlaceAnchor, + source: this.element, + paintStyle: this.getPaintStyle(), + endpoint: params.hideOnDrag ? "Blank" : this.endpoint, + _transient: true, + scope: this.scope, + reference:this + }); + }; + + /** + * returns a connection from the pool; used when dragging starts. just gets the head of the array if it can. + */ + this.connectorSelector = function () { + return this.connections[0]; + }; + + this.setStyle = this.setPaintStyle; + + this.paint = function (params) { + params = params || {}; + var timestamp = params.timestamp, recalc = !(params.recalc === false); + if (!timestamp || this.timestamp !== timestamp) { + + var info = _jsPlumb.updateOffset({ elId: this.elementId, timestamp: timestamp }); + + var xy = params.offset ? params.offset.o : info.o; + if (xy != null) { + var ap = params.anchorPoint, connectorPaintStyle = params.connectorPaintStyle; + if (ap == null) { + var wh = params.dimensions || info.s, + anchorParams = { xy: [ xy.left, xy.top ], wh: wh, element: this, timestamp: timestamp }; + if (recalc && this.anchor.isDynamic && this.connections.length > 0) { + var c = findConnectionToUseForDynamicAnchor(this, params.elementWithPrecedence), + oIdx = c.endpoints[0] === this ? 1 : 0, + oId = oIdx === 0 ? c.sourceId : c.targetId, + oInfo = _jsPlumb.getCachedData(oId), + oOffset = oInfo.o, oWH = oInfo.s; + + anchorParams.index = oIdx === 0 ? 1 : 0; + anchorParams.connection = c; + anchorParams.txy = [ oOffset.left, oOffset.top ]; + anchorParams.twh = oWH; + anchorParams.tElement = c.endpoints[oIdx]; + } else if (this.connections.length > 0) { + anchorParams.connection = this.connections[0]; + } + ap = this.anchor.compute(anchorParams); + } + + this.endpoint.compute(ap, this.anchor.getOrientation(this), this._jsPlumb.paintStyleInUse, connectorPaintStyle || this.paintStyleInUse); + this.endpoint.paint(this._jsPlumb.paintStyleInUse, this.anchor); + this.timestamp = timestamp; + + // paint overlays + for (var i in this._jsPlumb.overlays) { + if (this._jsPlumb.overlays.hasOwnProperty(i)) { + var o = this._jsPlumb.overlays[i]; + if (o.isVisible()) { + this._jsPlumb.overlayPlacements[i] = o.draw(this.endpoint, this._jsPlumb.paintStyleInUse); + o.paint(this._jsPlumb.overlayPlacements[i]); + } + } + } + } + } + }; + + this.getTypeDescriptor = function () { + return "endpoint"; + }; + this.isVisible = function () { + return this._jsPlumb.visible; + }; + + this.repaint = this.paint; + + var draggingInitialised = false; + this.initDraggable = function () { + + // is this a connection source? we make it draggable and have the + // drag listener maintain a connection with a floating endpoint. + if (!draggingInitialised && _jp.isDragSupported(this.element)) { + var placeholderInfo = { id: null, element: null }, + jpc = null, + existingJpc = false, + existingJpcParams = null, + _dragHandler = _makeConnectionDragHandler(this, placeholderInfo, _jsPlumb), + dragOptions = params.dragOptions || {}, + defaultOpts = {}, + startEvent = _jp.dragEvents.start, + stopEvent = _jp.dragEvents.stop, + dragEvent = _jp.dragEvents.drag, + beforeStartEvent = _jp.dragEvents.beforeStart, + payload; + + // respond to beforeStart from katavorio; this will have, optionally, a payload of attribute values + // that were placed there by the makeSource mousedown listener. + var beforeStart = function(beforeStartParams) { + payload = beforeStartParams.e.payload || {}; + }; + + var start = function (startParams) { + +// ------------- first, get a connection to drag. this may be null, in which case we are dragging a new one. + + jpc = this.connectorSelector(); + +// -------------------------------- now a bunch of tests about whether or not to proceed ------------------------- + + var _continue = true; + // if not enabled, return + if (!this.isEnabled()) { + _continue = false; + } + // if no connection and we're not a source - or temporarily a source, as is the case with makeSource - return. + if (jpc == null && !this.isSource && !this.isTemporarySource) { + _continue = false; + } + // otherwise if we're full and not allowed to drag, also return false. + if (this.isSource && this.isFull() && !(jpc != null && this.dragAllowedWhenFull)) { + _continue = false; + } + // if the connection was setup as not detachable or one of its endpoints + // was setup as connectionsDetachable = false, or Defaults.ConnectionsDetachable + // is set to false... + if (jpc != null && !jpc.isDetachable(this)) { + // .. and the endpoint is full + if (this.isFull()) { + _continue = false; + } else { + // otherwise, if not full, set the connection to null, and we will now proceed + // to drag a new connection. + jpc = null; + } + } + + var beforeDrag = _jsPlumb.checkCondition(jpc == null ? "beforeDrag" : "beforeStartDetach", { + endpoint:this, + source:this.element, + sourceId:this.elementId, + connection:jpc + }); + if (beforeDrag === false) { + _continue = false; + } + // else we might have been given some data. we'll pass it in to a new connection as 'data'. + // here we also merge in the optional payload we were given on mousedown. + else if (typeof beforeDrag === "object") { + _jp.extend(beforeDrag, payload || {}); + } + else { + // or if no beforeDrag data, maybe use the payload on its own. + beforeDrag = payload || {}; + } + + if (_continue === false) { + // this is for mootools and yui. returning false from this causes jquery to stop drag. + // the events are wrapped in both mootools and yui anyway, but i don't think returning + // false from the start callback would stop a drag. + if (_jsPlumb.stopDrag) { + _jsPlumb.stopDrag(this.canvas); + } + _dragHandler.stopDrag(); + return false; + } + +// --------------------------------------------------------------------------------------------------------------------- + + // ok to proceed. + + // clear hover for all connections for this endpoint before continuing. + for (var i = 0; i < this.connections.length; i++) { + this.connections[i].setHover(false); + } + + this.addClass("endpointDrag"); + _jsPlumb.setConnectionBeingDragged(true); + + // if we're not full but there was a connection, make it null. we'll create a new one. + if (jpc && !this.isFull() && this.isSource) { + jpc = null; + } + + _jsPlumb.updateOffset({ elId: this.elementId }); + +// ---------------- make the element we will drag around, and position it ----------------------------- + + var ipco = this._jsPlumb.instance.getOffset(this.canvas), + canvasElement = this.canvas, + ips = this._jsPlumb.instance.getSize(this.canvas); + + _makeDraggablePlaceholder(placeholderInfo, _jsPlumb, ipco, ips); + + // store the id of the dragging div and the source element. the drop function will pick these up. + _jsPlumb.setAttributes(this.canvas, { + "dragId": placeholderInfo.id, + "elId": this.elementId + }); + +// ------------------- create an endpoint that will be our floating endpoint ------------------------------------ + + var endpointToFloat = this.dragProxy || this.endpoint; + if (this.dragProxy == null && this.connectionType != null) { + var aae = this._jsPlumb.instance.deriveEndpointAndAnchorSpec(this.connectionType); + if (aae.endpoints[1]) { + endpointToFloat = aae.endpoints[1]; + } + } + var centerAnchor = this._jsPlumb.instance.makeAnchor("Center"); + centerAnchor.isFloating = true; + this._jsPlumb.floatingEndpoint = _makeFloatingEndpoint(this.getPaintStyle(), centerAnchor, endpointToFloat, this.canvas, placeholderInfo.element, _jsPlumb, _newEndpoint, this.scope); + var _savedAnchor = this._jsPlumb.floatingEndpoint.anchor; + + + if (jpc == null) { + + this.setHover(false, false); + // create a connection. one end is this endpoint, the other is a floating endpoint. + jpc = _newConnection({ + sourceEndpoint: this, + targetEndpoint: this._jsPlumb.floatingEndpoint, + source: this.element, // for makeSource with parent option. ensure source element is represented correctly. + target: placeholderInfo.element, + anchors: [ this.anchor, this._jsPlumb.floatingEndpoint.anchor ], + paintStyle: params.connectorStyle, // this can be null. Connection will use the default. + hoverPaintStyle: params.connectorHoverStyle, + connector: params.connector, // this can also be null. Connection will use the default. + overlays: params.connectorOverlays, + type: this.connectionType, + cssClass: this.connectorClass, + hoverClass: this.connectorHoverClass, + scope:params.scope, + data:beforeDrag + }); + jpc.pending = true; + jpc.addClass(_jsPlumb.draggingClass); + this._jsPlumb.floatingEndpoint.addClass(_jsPlumb.draggingClass); + this._jsPlumb.floatingEndpoint.anchor = _savedAnchor; + // fire an event that informs that a connection is being dragged + _jsPlumb.fire("connectionDrag", jpc); + + // register the new connection on the drag manager. This connection, at this point, is 'pending', + // and has as its target a temporary element (the 'placeholder'). If the connection subsequently + // becomes established, the anchor manager is informed that the target of the connection has + // changed. + + _jsPlumb.anchorManager.newConnection(jpc); + + } else { + existingJpc = true; + jpc.setHover(false); + // new anchor idx + var anchorIdx = jpc.endpoints[0].id === this.id ? 0 : 1; + this.detachFromConnection(jpc, null, true); // detach from the connection while dragging is occurring. but dont cleanup automatically. + + // store the original scope (issue 57) + var dragScope = _jsPlumb.getDragScope(canvasElement); + _jsPlumb.setAttribute(this.canvas, "originalScope", dragScope); + + // fire an event that informs that a connection is being dragged. we do this before + // replacing the original target with the floating element info. + _jsPlumb.fire("connectionDrag", jpc); + + // now we replace ourselves with the temporary div we created above: + if (anchorIdx === 0) { + existingJpcParams = [ jpc.source, jpc.sourceId, canvasElement, dragScope ]; + _jsPlumb.anchorManager.sourceChanged(jpc.endpoints[anchorIdx].elementId, placeholderInfo.id, jpc, placeholderInfo.element); + + } else { + existingJpcParams = [ jpc.target, jpc.targetId, canvasElement, dragScope ]; + jpc.target = placeholderInfo.element; + jpc.targetId = placeholderInfo.id; + + _jsPlumb.anchorManager.updateOtherEndpoint(jpc.sourceId, jpc.endpoints[anchorIdx].elementId, jpc.targetId, jpc); + } + + // store the original endpoint and assign the new floating endpoint for the drag. + jpc.suspendedEndpoint = jpc.endpoints[anchorIdx]; + + // PROVIDE THE SUSPENDED ELEMENT, BE IT A SOURCE OR TARGET (ISSUE 39) + jpc.suspendedElement = jpc.endpoints[anchorIdx].getElement(); + jpc.suspendedElementId = jpc.endpoints[anchorIdx].elementId; + jpc.suspendedElementType = anchorIdx === 0 ? "source" : "target"; + + jpc.suspendedEndpoint.setHover(false); + this._jsPlumb.floatingEndpoint.referenceEndpoint = jpc.suspendedEndpoint; + jpc.endpoints[anchorIdx] = this._jsPlumb.floatingEndpoint; + + jpc.addClass(_jsPlumb.draggingClass); + this._jsPlumb.floatingEndpoint.addClass(_jsPlumb.draggingClass); + } + + _jsPlumb.registerFloatingConnection(placeholderInfo, jpc, this._jsPlumb.floatingEndpoint); + + // // register it and register connection on it. + // _jsPlumb.floatingConnections[placeholderInfo.id] = jpc; + // + // // only register for the target endpoint; we will not be dragging the source at any time + // // before this connection is either discarded or made into a permanent connection. + // _ju.addToList(params.endpointsByElement, placeholderInfo.id, this._jsPlumb.floatingEndpoint); + + + // tell jsplumb about it + _jsPlumb.currentlyDragging = true; + }.bind(this); + + var stop = function () { + _jsPlumb.setConnectionBeingDragged(false); + + if (jpc && jpc.endpoints != null) { + // get the actual drop event (decode from library args to stop function) + var originalEvent = _jsPlumb.getDropEvent(arguments); + // unlock the other endpoint (if it is dynamic, it would have been locked at drag start) + var idx = _jsPlumb.getFloatingAnchorIndex(jpc); + jpc.endpoints[idx === 0 ? 1 : 0].anchor.unlock(); + // TODO: Dont want to know about css classes inside jsplumb, ideally. + jpc.removeClass(_jsPlumb.draggingClass); + + // if we have the floating endpoint then the connection has not been dropped + // on another endpoint. If it is a new connection we throw it away. If it is an + // existing connection we check to see if we should reattach it, throwing it away + // if not. + if (this._jsPlumb && (jpc.deleteConnectionNow || jpc.endpoints[idx] === this._jsPlumb.floatingEndpoint)) { + // 6a. if the connection was an existing one... + if (existingJpc && jpc.suspendedEndpoint) { + // fix for issue35, thanks Sylvain Gizard: when firing the detach event make sure the + // floating endpoint has been replaced. + if (idx === 0) { + jpc.floatingElement = jpc.source; + jpc.floatingId = jpc.sourceId; + jpc.floatingEndpoint = jpc.endpoints[0]; + jpc.floatingIndex = 0; + jpc.source = existingJpcParams[0]; + jpc.sourceId = existingJpcParams[1]; + } else { + // keep a copy of the floating element; the anchor manager will want to clean up. + jpc.floatingElement = jpc.target; + jpc.floatingId = jpc.targetId; + jpc.floatingEndpoint = jpc.endpoints[1]; + jpc.floatingIndex = 1; + jpc.target = existingJpcParams[0]; + jpc.targetId = existingJpcParams[1]; + } + + var fe = this._jsPlumb.floatingEndpoint; // store for later removal. + // restore the original scope (issue 57) + _jsPlumb.setDragScope(existingJpcParams[2], existingJpcParams[3]); + jpc.endpoints[idx] = jpc.suspendedEndpoint; + // if the connection should be reattached, or the other endpoint refuses detach, then + // reset the connection to its original state + if (jpc.isReattach() || jpc._forceReattach || jpc._forceDetach || !_jsPlumb.deleteConnection(jpc, {originalEvent: originalEvent})) { + + jpc.setHover(false); + jpc._forceDetach = null; + jpc._forceReattach = null; + this._jsPlumb.floatingEndpoint.detachFromConnection(jpc); + jpc.suspendedEndpoint.addConnection(jpc); + + // TODO this code is duplicated in lots of places...and there is nothing external + // in the code; it all refers to the connection itself. we could add a + // `checkSanity(connection)` method to anchorManager that did this. + if (idx === 1) { + _jsPlumb.anchorManager.updateOtherEndpoint(jpc.sourceId, jpc.floatingId, jpc.targetId, jpc); + } + else { + _jsPlumb.anchorManager.sourceChanged(jpc.floatingId, jpc.sourceId, jpc, jpc.source); + } + + _jsPlumb.repaint(existingJpcParams[1]); + } + else { + _jsPlumb.deleteObject({endpoint: fe}); + } + } + } + + // makeTargets sets this flag, to tell us we have been replaced and should delete this object. + if (this.deleteAfterDragStop) { + _jsPlumb.deleteObject({endpoint: this}); + } + else { + if (this._jsPlumb) { + this.paint({recalc: false}); + } + } + + // although the connection is no longer valid, there are use cases where this is useful. + _jsPlumb.fire("connectionDragStop", jpc, originalEvent); + // fire this event to give people more fine-grained control (connectionDragStop fires a lot) + if (jpc.pending) { + _jsPlumb.fire("connectionAborted", jpc, originalEvent); + } + // tell jsplumb that dragging is finished. + _jsPlumb.currentlyDragging = false; + jpc.suspendedElement = null; + jpc.suspendedEndpoint = null; + jpc = null; + } + + // if no endpoints, jpc already cleaned up. but still we want to ensure we're reset properly. + // remove the element associated with the floating endpoint + // (and its associated floating endpoint and visual artefacts) + if (placeholderInfo && placeholderInfo.element) { + _jsPlumb.remove(placeholderInfo.element, false, false); + } + // remove the inplace copy + if (inPlaceCopy) { + _jsPlumb.deleteObject({endpoint: inPlaceCopy}); + } + + if (this._jsPlumb) { + // make our canvas visible (TODO: hand off to library; we should not know about DOM) + this.canvas.style.visibility = "visible"; + // unlock our anchor + this.anchor.unlock(); + // clear floating anchor. + this._jsPlumb.floatingEndpoint = null; + } + + }.bind(this); + + dragOptions = _jp.extend(defaultOpts, dragOptions); + dragOptions.scope = this.scope || dragOptions.scope; + dragOptions[beforeStartEvent] = _ju.wrap(dragOptions[beforeStartEvent], beforeStart, false); + dragOptions[startEvent] = _ju.wrap(dragOptions[startEvent], start, false); + // extracted drag handler function so can be used by makeSource + dragOptions[dragEvent] = _ju.wrap(dragOptions[dragEvent], _dragHandler.drag); + dragOptions[stopEvent] = _ju.wrap(dragOptions[stopEvent], stop); + dragOptions.multipleDrop = false; + + dragOptions.canDrag = function () { + return this.isSource || this.isTemporarySource || (this.connections.length > 0 && this.connectionsDetachable !== false); + }.bind(this); + + _jsPlumb.initDraggable(this.canvas, dragOptions, "internal"); + + this.canvas._jsPlumbRelatedElement = this.element; + + draggingInitialised = true; + } + }; + + var ep = params.endpoint || this._jsPlumb.instance.Defaults.Endpoint || _jp.Defaults.Endpoint; + this.setEndpoint(ep, true); + var anchorParamsToUse = params.anchor ? params.anchor : params.anchors ? params.anchors : (_jsPlumb.Defaults.Anchor || "Top"); + this.setAnchor(anchorParamsToUse, true); + + // finally, set type if it was provided + var type = [ "default", (params.type || "")].join(" "); + this.addType(type, params.data, true); + this.canvas = this.endpoint.canvas; + this.canvas._jsPlumb = this; + + this.initDraggable(); + + // pulled this out into a function so we can reuse it for the inPlaceCopy canvas; you can now drop detached connections + // back onto the endpoint you detached it from. + var _initDropTarget = function (canvas, isTransient, endpoint, referenceEndpoint) { + + if (_jp.isDropSupported(this.element)) { + var dropOptions = params.dropOptions || _jsPlumb.Defaults.DropOptions || _jp.Defaults.DropOptions; + dropOptions = _jp.extend({}, dropOptions); + dropOptions.scope = dropOptions.scope || this.scope; + var dropEvent = _jp.dragEvents.drop, + overEvent = _jp.dragEvents.over, + outEvent = _jp.dragEvents.out, + _ep = this, + drop = _jsPlumb.EndpointDropHandler({ + getEndpoint: function () { + return _ep; + }, + jsPlumb: _jsPlumb, + enabled: function () { + return endpoint != null ? endpoint.isEnabled() : true; + }, + isFull: function () { + return endpoint.isFull(); + }, + element: this.element, + elementId: this.elementId, + isSource: this.isSource, + isTarget: this.isTarget, + addClass: function (clazz) { + _ep.addClass(clazz); + }, + removeClass: function (clazz) { + _ep.removeClass(clazz); + }, + isDropAllowed: function () { + return _ep.isDropAllowed.apply(_ep, arguments); + }, + reference:referenceEndpoint, + isRedrop:function(jpc, dhParams) { + return jpc.suspendedEndpoint && dhParams.reference && (jpc.suspendedEndpoint.id === dhParams.reference.id); + } + }); + + dropOptions[dropEvent] = _ju.wrap(dropOptions[dropEvent], drop, true); + dropOptions[overEvent] = _ju.wrap(dropOptions[overEvent], function () { + var draggable = _jp.getDragObject(arguments), + id = _jsPlumb.getAttribute(_jp.getElement(draggable), "dragId"), + _jpc = _jsPlumb.getFloatingConnectionFor(id);//_jsPlumb.floatingConnections[id]; + + if (_jpc != null) { + var idx = _jsPlumb.getFloatingAnchorIndex(_jpc); + // here we should fire the 'over' event if we are a target and this is a new connection, + // or we are the same as the floating endpoint. + var _cont = (this.isTarget && idx !== 0) || (_jpc.suspendedEndpoint && this.referenceEndpoint && this.referenceEndpoint.id === _jpc.suspendedEndpoint.id); + if (_cont) { + var bb = _jsPlumb.checkCondition("checkDropAllowed", { + sourceEndpoint: _jpc.endpoints[idx], + targetEndpoint: this, + connection: _jpc + }); + this[(bb ? "add" : "remove") + "Class"](_jsPlumb.endpointDropAllowedClass); + this[(bb ? "remove" : "add") + "Class"](_jsPlumb.endpointDropForbiddenClass); + _jpc.endpoints[idx].anchor.over(this.anchor, this); + } + } + }.bind(this)); + + dropOptions[outEvent] = _ju.wrap(dropOptions[outEvent], function () { + var draggable = _jp.getDragObject(arguments), + id = draggable == null ? null : _jsPlumb.getAttribute(_jp.getElement(draggable), "dragId"), + _jpc = id ? _jsPlumb.getFloatingConnectionFor(id) : null; + + if (_jpc != null) { + var idx = _jsPlumb.getFloatingAnchorIndex(_jpc); + var _cont = (this.isTarget && idx !== 0) || (_jpc.suspendedEndpoint && this.referenceEndpoint && this.referenceEndpoint.id === _jpc.suspendedEndpoint.id); + if (_cont) { + this.removeClass(_jsPlumb.endpointDropAllowedClass); + this.removeClass(_jsPlumb.endpointDropForbiddenClass); + _jpc.endpoints[idx].anchor.out(); + } + } + }.bind(this)); + + _jsPlumb.initDroppable(canvas, dropOptions, "internal", isTransient); + } + }.bind(this); + + // Initialise the endpoint's canvas as a drop target. The drop handler will take care of the logic of whether + // something can actually be dropped. + if (!this.anchor.isFloating) { + _initDropTarget(this.canvas, !(params._transient || this.anchor.isFloating), this, params.reference); + } + + return this; + }; + + _ju.extend(_jp.Endpoint, _jp.OverlayCapableJsPlumbUIComponent, { + + setVisible: function (v, doNotChangeConnections, doNotNotifyOtherEndpoint) { + this._jsPlumb.visible = v; + if (this.canvas) { + this.canvas.style.display = v ? "block" : "none"; + } + this[v ? "showOverlays" : "hideOverlays"](); + if (!doNotChangeConnections) { + for (var i = 0; i < this.connections.length; i++) { + this.connections[i].setVisible(v); + if (!doNotNotifyOtherEndpoint) { + var oIdx = this === this.connections[i].endpoints[0] ? 1 : 0; + // only change the other endpoint if this is its only connection. + if (this.connections[i].endpoints[oIdx].connections.length === 1) { + this.connections[i].endpoints[oIdx].setVisible(v, true, true); + } + } + } + } + }, + getAttachedElements: function () { + return this.connections; + }, + applyType: function (t, doNotRepaint) { + this.setPaintStyle(t.endpointStyle || t.paintStyle, doNotRepaint); + this.setHoverPaintStyle(t.endpointHoverStyle || t.hoverPaintStyle, doNotRepaint); + if (t.maxConnections != null) { + this._jsPlumb.maxConnections = t.maxConnections; + } + if (t.scope) { + this.scope = t.scope; + } + _jp.extend(this, t, typeParameters); + if (t.cssClass != null && this.canvas) { + this._jsPlumb.instance.addClass(this.canvas, t.cssClass); + } + _jp.OverlayCapableJsPlumbUIComponent.applyType(this, t); + }, + isEnabled: function () { + return this._jsPlumb.enabled; + }, + setEnabled: function (e) { + this._jsPlumb.enabled = e; + }, + cleanup: function () { + var anchorClass = this._jsPlumb.instance.endpointAnchorClassPrefix + (this._jsPlumb.currentAnchorClass ? "-" + this._jsPlumb.currentAnchorClass : ""); + _jp.removeClass(this.element, anchorClass); + this.anchor = null; + this.endpoint.cleanup(true); + this.endpoint.destroy(); + this.endpoint = null; + // drag/drop + this._jsPlumb.instance.destroyDraggable(this.canvas, "internal"); + this._jsPlumb.instance.destroyDroppable(this.canvas, "internal"); + }, + setHover: function (h) { + if (this.endpoint && this._jsPlumb && !this._jsPlumb.instance.isConnectionBeingDragged()) { + this.endpoint.setHover(h); + } + }, + isFull: function () { + return this._jsPlumb.maxConnections === 0 ? true : !(this.isFloating() || this._jsPlumb.maxConnections < 0 || this.connections.length < this._jsPlumb.maxConnections); + }, + /** + * private but needs to be exposed. + */ + isFloating: function () { + return this.anchor != null && this.anchor.isFloating; + }, + isConnectedTo: function (endpoint) { + var found = false; + if (endpoint) { + for (var i = 0; i < this.connections.length; i++) { + if (this.connections[i].endpoints[1] === endpoint || this.connections[i].endpoints[0] === endpoint) { + found = true; + break; + } + } + } + return found; + }, + getConnectionCost: function () { + return this._jsPlumb.connectionCost; + }, + setConnectionCost: function (c) { + this._jsPlumb.connectionCost = c; + }, + areConnectionsDirected: function () { + return this._jsPlumb.connectionsDirected; + }, + setConnectionsDirected: function (b) { + this._jsPlumb.connectionsDirected = b; + }, + setElementId: function (_elId) { + this.elementId = _elId; + this.anchor.elementId = _elId; + }, + setReferenceElement: function (_el) { + this.element = _jp.getElement(_el); + }, + setDragAllowedWhenFull: function (allowed) { + this.dragAllowedWhenFull = allowed; + }, + equals: function (endpoint) { + return this.anchor.equals(endpoint.anchor); + }, + getUuid: function () { + return this._jsPlumb.uuid; + }, + computeAnchor: function (params) { + return this.anchor.compute(params); + } + }); + + root.jsPlumbInstance.prototype.EndpointDropHandler = function (dhParams) { + return function (e) { + + var _jsPlumb = dhParams.jsPlumb; + + // remove the classes that are added dynamically. drop is neither forbidden nor allowed now that + // the drop is finishing. + dhParams.removeClass(_jsPlumb.endpointDropAllowedClass); + dhParams.removeClass(_jsPlumb.endpointDropForbiddenClass); + + var originalEvent = _jsPlumb.getDropEvent(arguments), + draggable = _jsPlumb.getDragObject(arguments), + id = _jsPlumb.getAttribute(draggable, "dragId"), + elId = _jsPlumb.getAttribute(draggable, "elId"), + scope = _jsPlumb.getAttribute(draggable, "originalScope"), + jpc = _jsPlumb.getFloatingConnectionFor(id); + + // if no active connection, bail. + if (jpc == null) { + return; + } + + // calculate if this is an existing connection. + var existingConnection = jpc.suspendedEndpoint != null; + + // if suspended endpoint exists but has been cleaned up, bail. This means it's an existing connection + // that has been detached and will shortly be discarded. + if (existingConnection && jpc.suspendedEndpoint._jsPlumb == null) { + return; + } + + // get the drop endpoint. for a normal connection this is just the one that would replace the currently + // floating endpoint. for a makeTarget this is a new endpoint that is created on drop. But we leave that to + // the handler to figure out. + var _ep = dhParams.getEndpoint(jpc); + + // If we're not given an endpoint to use, bail. + if (_ep == null) { + return; + } + + // if this is a drop back where the connection came from, mark it force reattach and + // return; the stop handler will reattach. without firing an event. + if (dhParams.isRedrop(jpc, dhParams)) { + jpc._forceReattach = true; + jpc.setHover(false); + if (dhParams.maybeCleanup) { + dhParams.maybeCleanup(_ep); + } + return; + } + + // ensure we dont bother trying to drop sources on non-source eps, and same for target. + var idx = _jsPlumb.getFloatingAnchorIndex(jpc); + if ((idx === 0 && !dhParams.isSource)|| (idx === 1 && !dhParams.isTarget)){ + if (dhParams.maybeCleanup) { + dhParams.maybeCleanup(_ep); + } + return; + } + + if (dhParams.onDrop) { + dhParams.onDrop(jpc); + } + + // restore the original scope if necessary (issue 57) + if (scope) { + _jsPlumb.setDragScope(draggable, scope); + } + + // if the target of the drop is full, fire an event (we abort below) + // makeTarget: keep. + var isFull = dhParams.isFull(e); + if (isFull) { + _ep.fire("maxConnections", { + endpoint: this, + connection: jpc, + maxConnections: _ep._jsPlumb.maxConnections + }, originalEvent); + } + // + // if endpoint enabled, not full, and matches the index of the floating endpoint... + if (!isFull && dhParams.enabled()) { + var _doContinue = true; + + // before testing for beforeDrop, reset the connection's source/target to be the actual DOM elements + // involved (that is, stash any temporary stuff used for dragging. but we need to keep it around in + // order that the anchor manager can clean things up properly). + if (idx === 0) { + jpc.floatingElement = jpc.source; + jpc.floatingId = jpc.sourceId; + jpc.floatingEndpoint = jpc.endpoints[0]; + jpc.floatingIndex = 0; + jpc.source = dhParams.element; + jpc.sourceId = dhParams.elementId; + } else { + jpc.floatingElement = jpc.target; + jpc.floatingId = jpc.targetId; + jpc.floatingEndpoint = jpc.endpoints[1]; + jpc.floatingIndex = 1; + jpc.target = dhParams.element; + jpc.targetId = dhParams.elementId; + } + + // if this is an existing connection and detach is not allowed we won't continue. The connection's + // endpoints have been reinstated; everything is back to how it was. + if (existingConnection && jpc.suspendedEndpoint.id !== _ep.id) { + if (!jpc.isDetachAllowed(jpc) || !jpc.endpoints[idx].isDetachAllowed(jpc) || !jpc.suspendedEndpoint.isDetachAllowed(jpc) || !_jsPlumb.checkCondition("beforeDetach", jpc)) { + _doContinue = false; + } + } + +// ------------ wrap the execution path in a function so we can support asynchronous beforeDrop + + var continueFunction = function (optionalData) { + // remove this jpc from the current endpoint, which is a floating endpoint that we will + // subsequently discard. + jpc.endpoints[idx].detachFromConnection(jpc); + + // if there's a suspended endpoint, detach it from the connection. + if (jpc.suspendedEndpoint) { + jpc.suspendedEndpoint.detachFromConnection(jpc); + } + + jpc.endpoints[idx] = _ep; + _ep.addConnection(jpc); + + // copy our parameters in to the connection: + var params = _ep.getParameters(); + for (var aParam in params) { + jpc.setParameter(aParam, params[aParam]); + } + + if (!existingConnection) { + // if not an existing connection and + if (params.draggable) { + _jsPlumb.initDraggable(this.element, dhParams.dragOptions, "internal", _jsPlumb); + } + } + else { + var suspendedElementId = jpc.suspendedEndpoint.elementId; + _jsPlumb.fireMoveEvent({ + index: idx, + originalSourceId: idx === 0 ? suspendedElementId : jpc.sourceId, + newSourceId: idx === 0 ? _ep.elementId : jpc.sourceId, + originalTargetId: idx === 1 ? suspendedElementId : jpc.targetId, + newTargetId: idx === 1 ? _ep.elementId : jpc.targetId, + originalSourceEndpoint: idx === 0 ? jpc.suspendedEndpoint : jpc.endpoints[0], + newSourceEndpoint: idx === 0 ? _ep : jpc.endpoints[0], + originalTargetEndpoint: idx === 1 ? jpc.suspendedEndpoint : jpc.endpoints[1], + newTargetEndpoint: idx === 1 ? _ep : jpc.endpoints[1], + connection: jpc + }, originalEvent); + } + + if (idx === 1) { + _jsPlumb.anchorManager.updateOtherEndpoint(jpc.sourceId, jpc.floatingId, jpc.targetId, jpc); + } + else { + _jsPlumb.anchorManager.sourceChanged(jpc.floatingId, jpc.sourceId, jpc, jpc.source); + } + + // when makeSource has uniqueEndpoint:true, we want to create connections with new endpoints + // that are subsequently deleted. So makeSource sets `finalEndpoint`, which is the Endpoint to + // which the connection should be attached. The `detachFromConnection` call below results in the + // temporary endpoint being cleaned up. + if (jpc.endpoints[0].finalEndpoint) { + var _toDelete = jpc.endpoints[0]; + _toDelete.detachFromConnection(jpc); + jpc.endpoints[0] = jpc.endpoints[0].finalEndpoint; + jpc.endpoints[0].addConnection(jpc); + } + + // if optionalData was given, merge it onto the connection's data. + if (_ju.isObject(optionalData)) { + jpc.mergeData(optionalData); + } + // finalise will inform the anchor manager and also add to + // connectionsByScope if necessary. + _jsPlumb.finaliseConnection(jpc, null, originalEvent, false); + jpc.setHover(false); + + // SP continuous anchor flush + _jsPlumb.revalidate(jpc.endpoints[0].element); + + }.bind(this); + + var dontContinueFunction = function () { + // otherwise just put it back on the endpoint it was on before the drag. + if (jpc.suspendedEndpoint) { + jpc.endpoints[idx] = jpc.suspendedEndpoint; + jpc.setHover(false); + jpc._forceDetach = true; + if (idx === 0) { + jpc.source = jpc.suspendedEndpoint.element; + jpc.sourceId = jpc.suspendedEndpoint.elementId; + } else { + jpc.target = jpc.suspendedEndpoint.element; + jpc.targetId = jpc.suspendedEndpoint.elementId; + } + jpc.suspendedEndpoint.addConnection(jpc); + + // TODO checkSanity + if (idx === 1) { + _jsPlumb.anchorManager.updateOtherEndpoint(jpc.sourceId, jpc.floatingId, jpc.targetId, jpc); + } + else { + _jsPlumb.anchorManager.sourceChanged(jpc.floatingId, jpc.sourceId, jpc, jpc.source); + } + + _jsPlumb.repaint(jpc.sourceId); + jpc._forceDetach = false; + } + }; + +// -------------------------------------- + // now check beforeDrop. this will be available only on Endpoints that are setup to + // have a beforeDrop condition (although, secretly, under the hood all Endpoints and + // the Connection have them, because they are on jsPlumbUIComponent. shhh!), because + // it only makes sense to have it on a target endpoint. + _doContinue = _doContinue && dhParams.isDropAllowed(jpc.sourceId, jpc.targetId, jpc.scope, jpc, _ep);// && jpc.pending; + + if (_doContinue) { + continueFunction(_doContinue); + return true; + } + else { + dontContinueFunction(); + } + } + + if (dhParams.maybeCleanup) { + dhParams.maybeCleanup(_ep); + } + + _jsPlumb.currentlyDragging = false; + }; + }; +}).call(typeof window !== 'undefined' ? window : this); + +/* + * This file contains the code for Connections. + * + * Copyright (c) 2010 - 2018 jsPlumb (hello@jsplumbtoolkit.com) + * + * https://jsplumbtoolkit.com + * https://github.com/jsplumb/jsplumb + * + * Dual licensed under the MIT and GPL2 licenses. + */ +; +(function () { + + "use strict"; + var root = this, + _jp = root.jsPlumb, + _ju = root.jsPlumbUtil; + + var makeConnector = function (_jsPlumb, renderMode, connectorName, connectorArgs, forComponent) { + // first make sure we have a cache for the specified renderer + _jp.Connectors[renderMode] = _jp.Connectors[renderMode] || {}; + + // now see if the one we want exists; if not we will try to make it + if (_jp.Connectors[renderMode][connectorName] == null) { + + if (_jp.Connectors[connectorName] == null) { + if (!_jsPlumb.Defaults.DoNotThrowErrors) { + throw new TypeError("jsPlumb: unknown connector type '" + connectorName + "'"); + } else { + return null; + } + } + + _jp.Connectors[renderMode][connectorName] = function() { + _jp.Connectors[connectorName].apply(this, arguments); + _jp.ConnectorRenderers[renderMode].apply(this, arguments); + }; + + _ju.extend(_jp.Connectors[renderMode][connectorName], [ _jp.Connectors[connectorName], _jp.ConnectorRenderers[renderMode]]); + + } + + return new _jp.Connectors[renderMode][connectorName](connectorArgs, forComponent); + }, + _makeAnchor = function (anchorParams, elementId, _jsPlumb) { + return (anchorParams) ? _jsPlumb.makeAnchor(anchorParams, elementId, _jsPlumb) : null; + }, + _updateConnectedClass = function (conn, element, _jsPlumb, remove) { + if (element != null) { + element._jsPlumbConnections = element._jsPlumbConnections || {}; + if (remove) { + delete element._jsPlumbConnections[conn.id]; + } + else { + element._jsPlumbConnections[conn.id] = true; + } + + if (_ju.isEmpty(element._jsPlumbConnections)) { + _jsPlumb.removeClass(element, _jsPlumb.connectedClass); + } + else { + _jsPlumb.addClass(element, _jsPlumb.connectedClass); + } + } + }; + + _jp.Connection = function (params) { + var _newEndpoint = params.newEndpoint; + + this.id = params.id; + this.connector = null; + this.idPrefix = "_jsplumb_c_"; + this.defaultLabelLocation = 0.5; + this.defaultOverlayKeys = ["Overlays", "ConnectionOverlays"]; + // if a new connection is the result of moving some existing connection, params.previousConnection + // will have that Connection in it. listeners for the jsPlumbConnection event can look for that + // member and take action if they need to. + this.previousConnection = params.previousConnection; + this.source = _jp.getElement(params.source); + this.target = _jp.getElement(params.target); + + + _jp.OverlayCapableJsPlumbUIComponent.apply(this, arguments); + + // sourceEndpoint and targetEndpoint override source/target, if they are present. but + // source is not overridden if the Endpoint has declared it is not the final target of a connection; + // instead we use the source that the Endpoint declares will be the final source element. + if (params.sourceEndpoint) { + this.source = params.sourceEndpoint.getElement(); + this.sourceId = params.sourceEndpoint.elementId; + } else { + this.sourceId = this._jsPlumb.instance.getId(this.source); + } + + if (params.targetEndpoint) { + this.target = params.targetEndpoint.getElement(); + this.targetId = params.targetEndpoint.elementId; + } else { + this.targetId = this._jsPlumb.instance.getId(this.target); + } + + + this.scope = params.scope; // scope may have been passed in to the connect call. if it wasn't, we will pull it from the source endpoint, after having initialised the endpoints. + this.endpoints = []; + this.endpointStyles = []; + + var _jsPlumb = this._jsPlumb.instance; + + _jsPlumb.manage(this.sourceId, this.source); + _jsPlumb.manage(this.targetId, this.target); + + this._jsPlumb.visible = true; + + this._jsPlumb.params = { + cssClass: params.cssClass, + container: params.container, + "pointer-events": params["pointer-events"], + editorParams: params.editorParams, + overlays: params.overlays + }; + this._jsPlumb.lastPaintedAt = null; + + // listen to mouseover and mouseout events passed from the container delegate. + this.bind("mouseover", function () { + this.setHover(true); + }.bind(this)); + this.bind("mouseout", function () { + this.setHover(false); + }.bind(this)); + + +// INITIALISATION CODE + + this.makeEndpoint = function (isSource, el, elId, ep) { + elId = elId || this._jsPlumb.instance.getId(el); + return this.prepareEndpoint(_jsPlumb, _newEndpoint, this, ep, isSource ? 0 : 1, params, el, elId); + }; + + // if type given, get the endpoint definitions mapping to that type from the jsplumb instance, and use those. + // we apply types at the end of this constructor but endpoints are only honoured in a type definition at + // create time. + if (params.type) { + params.endpoints = params.endpoints || this._jsPlumb.instance.deriveEndpointAndAnchorSpec(params.type).endpoints; + } + + var eS = this.makeEndpoint(true, this.source, this.sourceId, params.sourceEndpoint), + eT = this.makeEndpoint(false, this.target, this.targetId, params.targetEndpoint); + + if (eS) { + _ju.addToList(params.endpointsByElement, this.sourceId, eS); + } + if (eT) { + _ju.addToList(params.endpointsByElement, this.targetId, eT); + } + // if scope not set, set it to be the scope for the source endpoint. + if (!this.scope) { + this.scope = this.endpoints[0].scope; + } + + // if explicitly told to (or not to) delete endpoints when empty, override endpoint's preferences + if (params.deleteEndpointsOnEmpty != null) { + this.endpoints[0].setDeleteOnEmpty(params.deleteEndpointsOnEmpty); + this.endpoints[1].setDeleteOnEmpty(params.deleteEndpointsOnEmpty); + } + +// -------------------------- DEFAULT TYPE --------------------------------------------- + + // DETACHABLE + var _detachable = _jsPlumb.Defaults.ConnectionsDetachable; + if (params.detachable === false) { + _detachable = false; + } + if (this.endpoints[0].connectionsDetachable === false) { + _detachable = false; + } + if (this.endpoints[1].connectionsDetachable === false) { + _detachable = false; + } + // REATTACH + var _reattach = params.reattach || this.endpoints[0].reattachConnections || this.endpoints[1].reattachConnections || _jsPlumb.Defaults.ReattachConnections; + + this.appendToDefaultType({ + detachable: _detachable, + reattach: _reattach, + paintStyle:this.endpoints[0].connectorStyle || this.endpoints[1].connectorStyle || params.paintStyle || _jsPlumb.Defaults.PaintStyle || _jp.Defaults.PaintStyle, + hoverPaintStyle:this.endpoints[0].connectorHoverStyle || this.endpoints[1].connectorHoverStyle || params.hoverPaintStyle || _jsPlumb.Defaults.HoverPaintStyle || _jp.Defaults.HoverPaintStyle + }); + + var _suspendedAt = _jsPlumb.getSuspendedAt(); + if (!_jsPlumb.isSuspendDrawing()) { + // paint the endpoints + var myInfo = _jsPlumb.getCachedData(this.sourceId), + myOffset = myInfo.o, myWH = myInfo.s, + otherInfo = _jsPlumb.getCachedData(this.targetId), + otherOffset = otherInfo.o, + otherWH = otherInfo.s, + initialTimestamp = _suspendedAt || _jsPlumb.timestamp(), + anchorLoc = this.endpoints[0].anchor.compute({ + xy: [ myOffset.left, myOffset.top ], wh: myWH, element: this.endpoints[0], + elementId: this.endpoints[0].elementId, + txy: [ otherOffset.left, otherOffset.top ], twh: otherWH, tElement: this.endpoints[1], + timestamp: initialTimestamp + }); + + this.endpoints[0].paint({ anchorLoc: anchorLoc, timestamp: initialTimestamp }); + + anchorLoc = this.endpoints[1].anchor.compute({ + xy: [ otherOffset.left, otherOffset.top ], wh: otherWH, element: this.endpoints[1], + elementId: this.endpoints[1].elementId, + txy: [ myOffset.left, myOffset.top ], twh: myWH, tElement: this.endpoints[0], + timestamp: initialTimestamp + }); + this.endpoints[1].paint({ anchorLoc: anchorLoc, timestamp: initialTimestamp }); + } + + this.getTypeDescriptor = function () { + return "connection"; + }; + this.getAttachedElements = function () { + return this.endpoints; + }; + + this.isDetachable = function (ep) { + return this._jsPlumb.detachable === false ? false : ep != null ? ep.connectionsDetachable === true : this._jsPlumb.detachable === true; + }; + this.setDetachable = function (detachable) { + this._jsPlumb.detachable = detachable === true; + }; + this.isReattach = function () { + return this._jsPlumb.reattach === true || this.endpoints[0].reattachConnections === true || this.endpoints[1].reattachConnections === true; + }; + this.setReattach = function (reattach) { + this._jsPlumb.reattach = reattach === true; + }; + +// END INITIALISATION CODE + + +// COST + DIRECTIONALITY + // if cost not supplied, try to inherit from source endpoint + this._jsPlumb.cost = params.cost || this.endpoints[0].getConnectionCost(); + this._jsPlumb.directed = params.directed; + // inherit directed flag if set no source endpoint + if (params.directed == null) { + this._jsPlumb.directed = this.endpoints[0].areConnectionsDirected(); + } +// END COST + DIRECTIONALITY + +// PARAMETERS + // merge all the parameters objects into the connection. parameters set + // on the connection take precedence; then source endpoint params, then + // finally target endpoint params. + var _p = _jp.extend({}, this.endpoints[1].getParameters()); + _jp.extend(_p, this.endpoints[0].getParameters()); + _jp.extend(_p, this.getParameters()); + this.setParameters(_p); +// END PARAMETERS + +// PAINTING + + this.setConnector(this.endpoints[0].connector || this.endpoints[1].connector || params.connector || _jsPlumb.Defaults.Connector || _jp.Defaults.Connector, true); + var data = params.data == null || !_ju.isObject(params.data) ? {} : params.data; + this.getData = function() { return data; }; + this.setData = function(d) { data = d || {}; }; + this.mergeData = function(d) { data = _jp.extend(data, d); }; + + // the very last thing we do is apply types, if there are any. + var _types = [ "default", this.endpoints[0].connectionType, this.endpoints[1].connectionType, params.type ].join(" "); + if (/[^\s]/.test(_types)) { + this.addType(_types, params.data, true); + } + + this.updateConnectedClass(); + +// END PAINTING + }; + + _ju.extend(_jp.Connection, _jp.OverlayCapableJsPlumbUIComponent, { + applyType: function (t, doNotRepaint, typeMap) { + + var _connector = null; + if (t.connector != null) { + _connector = this.getCachedTypeItem("connector", typeMap.connector); + if (_connector == null) { + _connector = this.prepareConnector(t.connector, typeMap.connector); + this.cacheTypeItem("connector", _connector, typeMap.connector); + } + this.setPreparedConnector(_connector); + } + + // none of these things result in the creation of objects so can be ignored. + if (t.detachable != null) { + this.setDetachable(t.detachable); + } + if (t.reattach != null) { + this.setReattach(t.reattach); + } + if (t.scope) { + this.scope = t.scope; + } + + if (t.cssClass != null && this.canvas) { + this._jsPlumb.instance.addClass(this.canvas, t.cssClass); + } + + var _anchors = null; + // this also results in the creation of objects. + if (t.anchor) { + // note that even if the param was anchor, we store `anchors`. + _anchors = this.getCachedTypeItem("anchors", typeMap.anchor); + if (_anchors == null) { + _anchors = [ this._jsPlumb.instance.makeAnchor(t.anchor), this._jsPlumb.instance.makeAnchor(t.anchor) ]; + this.cacheTypeItem("anchors", _anchors, typeMap.anchor); + } + } + else if (t.anchors) { + _anchors = this.getCachedTypeItem("anchors", typeMap.anchors); + if (_anchors == null) { + _anchors = [ + this._jsPlumb.instance.makeAnchor(t.anchors[0]), + this._jsPlumb.instance.makeAnchor(t.anchors[1]) + ]; + this.cacheTypeItem("anchors", _anchors, typeMap.anchors); + } + } + if (_anchors != null) { + this.endpoints[0].anchor = _anchors[0]; + this.endpoints[1].anchor = _anchors[1]; + if (this.endpoints[1].anchor.isDynamic) { + this._jsPlumb.instance.repaint(this.endpoints[1].elementId); + } + } + + _jp.OverlayCapableJsPlumbUIComponent.applyType(this, t); + }, + addClass: function (c, informEndpoints) { + if (informEndpoints) { + this.endpoints[0].addClass(c); + this.endpoints[1].addClass(c); + if (this.suspendedEndpoint) { + this.suspendedEndpoint.addClass(c); + } + } + if (this.connector) { + this.connector.addClass(c); + } + }, + removeClass: function (c, informEndpoints) { + if (informEndpoints) { + this.endpoints[0].removeClass(c); + this.endpoints[1].removeClass(c); + if (this.suspendedEndpoint) { + this.suspendedEndpoint.removeClass(c); + } + } + if (this.connector) { + this.connector.removeClass(c); + } + }, + isVisible: function () { + return this._jsPlumb.visible; + }, + setVisible: function (v) { + this._jsPlumb.visible = v; + if (this.connector) { + this.connector.setVisible(v); + } + this.repaint(); + }, + cleanup: function () { + this.updateConnectedClass(true); + this.endpoints = null; + this.source = null; + this.target = null; + if (this.connector != null) { + this.connector.cleanup(true); + this.connector.destroy(true); + } + this.connector = null; + }, + updateConnectedClass:function(remove) { + if (this._jsPlumb) { + _updateConnectedClass(this, this.source, this._jsPlumb.instance, remove); + _updateConnectedClass(this, this.target, this._jsPlumb.instance, remove); + } + }, + setHover: function (state) { + if (this.connector && this._jsPlumb && !this._jsPlumb.instance.isConnectionBeingDragged()) { + this.connector.setHover(state); + root.jsPlumb[state ? "addClass" : "removeClass"](this.source, this._jsPlumb.instance.hoverSourceClass); + root.jsPlumb[state ? "addClass" : "removeClass"](this.target, this._jsPlumb.instance.hoverTargetClass); + } + }, + getUuids:function() { + return [ this.endpoints[0].getUuid(), this.endpoints[1].getUuid() ]; + }, + getCost: function () { + return this._jsPlumb ? this._jsPlumb.cost : -Infinity; + }, + setCost: function (c) { + this._jsPlumb.cost = c; + }, + isDirected: function () { + return this._jsPlumb.directed; + }, + getConnector: function () { + return this.connector; + }, + prepareConnector:function(connectorSpec, typeId) { + var connectorArgs = { + _jsPlumb: this._jsPlumb.instance, + cssClass: this._jsPlumb.params.cssClass, + container: this._jsPlumb.params.container, + "pointer-events": this._jsPlumb.params["pointer-events"] + }, + renderMode = this._jsPlumb.instance.getRenderMode(), + connector; + + if (_ju.isString(connectorSpec)) { + connector = makeConnector(this._jsPlumb.instance, renderMode, connectorSpec, connectorArgs, this); + } // lets you use a string as shorthand. + else if (_ju.isArray(connectorSpec)) { + if (connectorSpec.length === 1) { + connector = makeConnector(this._jsPlumb.instance, renderMode, connectorSpec[0], connectorArgs, this); + } + else { + connector = makeConnector(this._jsPlumb.instance, renderMode, connectorSpec[0], _ju.merge(connectorSpec[1], connectorArgs), this); + } + } + if (typeId != null) { + connector.typeId = typeId; + } + return connector; + }, + setPreparedConnector: function(connector, doNotRepaint, doNotChangeListenerComponent, typeId) { + + if (this.connector !== connector) { + + var previous, previousClasses = ""; + // the connector will not be cleaned up if it was set as part of a type, because `typeId` will be set on it + // and we havent passed in `true` for "force" here. + if (this.connector != null) { + previous = this.connector; + previousClasses = previous.getClass(); + this.connector.cleanup(); + this.connector.destroy(); + } + + this.connector = connector; + if (typeId) { + this.cacheTypeItem("connector", connector, typeId); + } + + this.canvas = this.connector.canvas; + this.bgCanvas = this.connector.bgCanvas; + + // put classes from prior connector onto the canvas + this.addClass(previousClasses); + + // new: instead of binding listeners per connector, we now just have one delegate on the container. + // so for that handler we set the connection as the '_jsPlumb' member of the canvas element, and + // bgCanvas, if it exists, which it does right now in the VML renderer, so it won't from v 2.0.0 onwards. + if (this.canvas) { + this.canvas._jsPlumb = this; + } + if (this.bgCanvas) { + this.bgCanvas._jsPlumb = this; + } + + if (previous != null) { + var o = this.getOverlays(); + for (var i = 0; i < o.length; i++) { + if (o[i].transfer) { + o[i].transfer(this.connector); + } + } + } + + if (!doNotChangeListenerComponent) { + this.setListenerComponent(this.connector); + } + if (!doNotRepaint) { + this.repaint(); + } + } + }, + setConnector: function (connectorSpec, doNotRepaint, doNotChangeListenerComponent, typeId) { + var connector = this.prepareConnector(connectorSpec, typeId); + this.setPreparedConnector(connector, doNotRepaint, doNotChangeListenerComponent, typeId); + }, + paint: function (params) { + + if (!this._jsPlumb.instance.isSuspendDrawing() && this._jsPlumb.visible) { + params = params || {}; + var timestamp = params.timestamp, + // if the moving object is not the source we must transpose the two references. + swap = false, + tId = swap ? this.sourceId : this.targetId, sId = swap ? this.targetId : this.sourceId, + tIdx = swap ? 0 : 1, sIdx = swap ? 1 : 0; + + if (timestamp == null || timestamp !== this._jsPlumb.lastPaintedAt) { + var sourceInfo = this._jsPlumb.instance.updateOffset({elId:sId}).o, + targetInfo = this._jsPlumb.instance.updateOffset({elId:tId}).o, + sE = this.endpoints[sIdx], tE = this.endpoints[tIdx]; + + var sAnchorP = sE.anchor.getCurrentLocation({xy: [sourceInfo.left, sourceInfo.top], wh: [sourceInfo.width, sourceInfo.height], element: sE, timestamp: timestamp}), + tAnchorP = tE.anchor.getCurrentLocation({xy: [targetInfo.left, targetInfo.top], wh: [targetInfo.width, targetInfo.height], element: tE, timestamp: timestamp}); + + this.connector.resetBounds(); + + this.connector.compute({ + sourcePos: sAnchorP, + targetPos: tAnchorP, + sourceOrientation:sE.anchor.getOrientation(sE), + targetOrientation:tE.anchor.getOrientation(tE), + sourceEndpoint: this.endpoints[sIdx], + targetEndpoint: this.endpoints[tIdx], + "stroke-width": this._jsPlumb.paintStyleInUse.strokeWidth, + sourceInfo: sourceInfo, + targetInfo: targetInfo + }); + + var overlayExtents = { minX: Infinity, minY: Infinity, maxX: -Infinity, maxY: -Infinity }; + + // compute overlays. we do this first so we can get their placements, and adjust the + // container if needs be (if an overlay would be clipped) + for (var i in this._jsPlumb.overlays) { + if (this._jsPlumb.overlays.hasOwnProperty(i)) { + var o = this._jsPlumb.overlays[i]; + if (o.isVisible()) { + this._jsPlumb.overlayPlacements[i] = o.draw(this.connector, this._jsPlumb.paintStyleInUse, this.getAbsoluteOverlayPosition(o)); + overlayExtents.minX = Math.min(overlayExtents.minX, this._jsPlumb.overlayPlacements[i].minX); + overlayExtents.maxX = Math.max(overlayExtents.maxX, this._jsPlumb.overlayPlacements[i].maxX); + overlayExtents.minY = Math.min(overlayExtents.minY, this._jsPlumb.overlayPlacements[i].minY); + overlayExtents.maxY = Math.max(overlayExtents.maxY, this._jsPlumb.overlayPlacements[i].maxY); + } + } + } + + var lineWidth = parseFloat(this._jsPlumb.paintStyleInUse.strokeWidth || 1) / 2, + outlineWidth = parseFloat(this._jsPlumb.paintStyleInUse.strokeWidth || 0), + extents = { + xmin: Math.min(this.connector.bounds.minX - (lineWidth + outlineWidth), overlayExtents.minX), + ymin: Math.min(this.connector.bounds.minY - (lineWidth + outlineWidth), overlayExtents.minY), + xmax: Math.max(this.connector.bounds.maxX + (lineWidth + outlineWidth), overlayExtents.maxX), + ymax: Math.max(this.connector.bounds.maxY + (lineWidth + outlineWidth), overlayExtents.maxY) + }; + // paint the connector. + this.connector.paint(this._jsPlumb.paintStyleInUse, null, extents); + // and then the overlays + for (var j in this._jsPlumb.overlays) { + if (this._jsPlumb.overlays.hasOwnProperty(j)) { + var p = this._jsPlumb.overlays[j]; + if (p.isVisible()) { + p.paint(this._jsPlumb.overlayPlacements[j], extents); + } + } + } + } + this._jsPlumb.lastPaintedAt = timestamp; + } + }, + repaint: function (params) { + var p = jsPlumb.extend(params || {}, {}); + p.elId = this.sourceId; + this.paint(p); + }, + prepareEndpoint: function (_jsPlumb, _newEndpoint, conn, existing, index, params, element, elementId) { + var e; + if (existing) { + conn.endpoints[index] = existing; + existing.addConnection(conn); + } else { + if (!params.endpoints) { + params.endpoints = [ null, null ]; + } + var ep = params.endpoints[index] || params.endpoint || _jsPlumb.Defaults.Endpoints[index] || _jp.Defaults.Endpoints[index] || _jsPlumb.Defaults.Endpoint || _jp.Defaults.Endpoint; + if (!params.endpointStyles) { + params.endpointStyles = [ null, null ]; + } + if (!params.endpointHoverStyles) { + params.endpointHoverStyles = [ null, null ]; + } + var es = params.endpointStyles[index] || params.endpointStyle || _jsPlumb.Defaults.EndpointStyles[index] || _jp.Defaults.EndpointStyles[index] || _jsPlumb.Defaults.EndpointStyle || _jp.Defaults.EndpointStyle; + // Endpoints derive their fill from the connector's stroke, if no fill was specified. + if (es.fill == null && params.paintStyle != null) { + es.fill = params.paintStyle.stroke; + } + + if (es.outlineStroke == null && params.paintStyle != null) { + es.outlineStroke = params.paintStyle.outlineStroke; + } + if (es.outlineWidth == null && params.paintStyle != null) { + es.outlineWidth = params.paintStyle.outlineWidth; + } + + var ehs = params.endpointHoverStyles[index] || params.endpointHoverStyle || _jsPlumb.Defaults.EndpointHoverStyles[index] || _jp.Defaults.EndpointHoverStyles[index] || _jsPlumb.Defaults.EndpointHoverStyle || _jp.Defaults.EndpointHoverStyle; + // endpoint hover fill style is derived from connector's hover stroke style + if (params.hoverPaintStyle != null) { + if (ehs == null) { + ehs = {}; + } + if (ehs.fill == null) { + ehs.fill = params.hoverPaintStyle.stroke; + } + } + var a = params.anchors ? params.anchors[index] : + params.anchor ? params.anchor : + _makeAnchor(_jsPlumb.Defaults.Anchors[index], elementId, _jsPlumb) || + _makeAnchor(_jp.Defaults.Anchors[index], elementId, _jsPlumb) || + _makeAnchor(_jsPlumb.Defaults.Anchor, elementId, _jsPlumb) || + _makeAnchor(_jp.Defaults.Anchor, elementId, _jsPlumb), + u = params.uuids ? params.uuids[index] : null; + + e = _newEndpoint({ + paintStyle: es, hoverPaintStyle: ehs, endpoint: ep, connections: [ conn ], + uuid: u, anchor: a, source: element, scope: params.scope, + reattach: params.reattach || _jsPlumb.Defaults.ReattachConnections, + detachable: params.detachable || _jsPlumb.Defaults.ConnectionsDetachable + }); + if (existing == null) { + e.setDeleteOnEmpty(true); + } + conn.endpoints[index] = e; + + if (params.drawEndpoints === false) { + e.setVisible(false, true, true); + } + + } + return e; + } + + }); // END Connection class +}).call(typeof window !== 'undefined' ? window : this); + +/* + * This file contains the code for creating and manipulating anchors. + * + * Copyright (c) 2010 - 2018 jsPlumb (hello@jsplumbtoolkit.com) + * + * https://jsplumbtoolkit.com + * https://github.com/jsplumb/jsplumb + * + * Dual licensed under the MIT and GPL2 licenses. + */ +; +(function () { + + "use strict"; + + var root = this, + _ju = root.jsPlumbUtil, + _jp = root.jsPlumb; + + // + // manages anchors for all elements. + // + _jp.AnchorManager = function (params) { + var _amEndpoints = {}, + continuousAnchorLocations = {}, + continuousAnchorOrientations = {}, + connectionsByElementId = {}, + self = this, + anchorLists = {}, + jsPlumbInstance = params.jsPlumbInstance, + floatingConnections = {}, + // used by placeAnchors function + placeAnchorsOnLine = function (desc, elementDimensions, elementPosition, connections, horizontal, otherMultiplier, reverse) { + var a = [], step = elementDimensions[horizontal ? 0 : 1] / (connections.length + 1); + + for (var i = 0; i < connections.length; i++) { + var val = (i + 1) * step, other = otherMultiplier * elementDimensions[horizontal ? 1 : 0]; + if (reverse) { + val = elementDimensions[horizontal ? 0 : 1] - val; + } + + var dx = (horizontal ? val : other), x = elementPosition[0] + dx, xp = dx / elementDimensions[0], + dy = (horizontal ? other : val), y = elementPosition[1] + dy, yp = dy / elementDimensions[1]; + + a.push([ x, y, xp, yp, connections[i][1], connections[i][2] ]); + } + + return a; + }, + // used by edgeSortFunctions + currySort = function (reverseAngles) { + return function (a, b) { + var r = true; + if (reverseAngles) { + r = a[0][0] < b[0][0]; + } + else { + r = a[0][0] > b[0][0]; + } + return r === false ? -1 : 1; + }; + }, + // used by edgeSortFunctions + leftSort = function (a, b) { + // first get adjusted values + var p1 = a[0][0] < 0 ? -Math.PI - a[0][0] : Math.PI - a[0][0], + p2 = b[0][0] < 0 ? -Math.PI - b[0][0] : Math.PI - b[0][0]; + if (p1 > p2) { + return 1; + } + else { + return -1; + } + }, + // used by placeAnchors + edgeSortFunctions = { + "top": function (a, b) { + return a[0] > b[0] ? 1 : -1; + }, + "right": currySort(true), + "bottom": currySort(true), + "left": leftSort + }, + // used by placeAnchors + _sortHelper = function (_array, _fn) { + return _array.sort(_fn); + }, + // used by AnchorManager.redraw + placeAnchors = function (elementId, _anchorLists) { + var cd = jsPlumbInstance.getCachedData(elementId), sS = cd.s, sO = cd.o, + placeSomeAnchors = function (desc, elementDimensions, elementPosition, unsortedConnections, isHorizontal, otherMultiplier, orientation) { + if (unsortedConnections.length > 0) { + var sc = _sortHelper(unsortedConnections, edgeSortFunctions[desc]), // puts them in order based on the target element's pos on screen + reverse = desc === "right" || desc === "top", + anchors = placeAnchorsOnLine(desc, elementDimensions, + elementPosition, sc, + isHorizontal, otherMultiplier, reverse); + + // takes a computed anchor position and adjusts it for parent offset and scroll, then stores it. + var _setAnchorLocation = function (endpoint, anchorPos) { + continuousAnchorLocations[endpoint.id] = [ anchorPos[0], anchorPos[1], anchorPos[2], anchorPos[3] ]; + continuousAnchorOrientations[endpoint.id] = orientation; + }; + + for (var i = 0; i < anchors.length; i++) { + var c = anchors[i][4], weAreSource = c.endpoints[0].elementId === elementId, weAreTarget = c.endpoints[1].elementId === elementId; + if (weAreSource) { + _setAnchorLocation(c.endpoints[0], anchors[i]); + } + if (weAreTarget) { + _setAnchorLocation(c.endpoints[1], anchors[i]); + } + } + } + }; + + placeSomeAnchors("bottom", sS, [sO.left, sO.top], _anchorLists.bottom, true, 1, [0, 1]); + placeSomeAnchors("top", sS, [sO.left, sO.top], _anchorLists.top, true, 0, [0, -1]); + placeSomeAnchors("left", sS, [sO.left, sO.top], _anchorLists.left, false, 0, [-1, 0]); + placeSomeAnchors("right", sS, [sO.left, sO.top], _anchorLists.right, false, 1, [1, 0]); + }; + + this.reset = function () { + _amEndpoints = {}; + connectionsByElementId = {}; + anchorLists = {}; + }; + this.addFloatingConnection = function (key, conn) { + floatingConnections[key] = conn; + }; + this.removeFloatingConnection = function (key) { + delete floatingConnections[key]; + }; + this.newConnection = function (conn) { + var sourceId = conn.sourceId, targetId = conn.targetId, + ep = conn.endpoints, + doRegisterTarget = true, + registerConnection = function (otherIndex, otherEndpoint, otherAnchor, elId, c) { + if ((sourceId === targetId) && otherAnchor.isContinuous) { + // remove the target endpoint's canvas. we dont need it. + conn._jsPlumb.instance.removeElement(ep[1].canvas); + doRegisterTarget = false; + } + _ju.addToList(connectionsByElementId, elId, [c, otherEndpoint, otherAnchor.constructor === _jp.DynamicAnchor]); + }; + + registerConnection(0, ep[0], ep[0].anchor, targetId, conn); + if (doRegisterTarget) { + registerConnection(1, ep[1], ep[1].anchor, sourceId, conn); + } + }; + var removeEndpointFromAnchorLists = function (endpoint) { + (function (list, eId) { + if (list) { // transient anchors dont get entries in this list. + var f = function (e) { + return e[4] === eId; + }; + _ju.removeWithFunction(list.top, f); + _ju.removeWithFunction(list.left, f); + _ju.removeWithFunction(list.bottom, f); + _ju.removeWithFunction(list.right, f); + } + })(anchorLists[endpoint.elementId], endpoint.id); + }; + this.connectionDetached = function (connInfo, doNotRedraw) { + var connection = connInfo.connection || connInfo, + sourceId = connInfo.sourceId, + targetId = connInfo.targetId, + ep = connection.endpoints, + removeConnection = function (otherIndex, otherEndpoint, otherAnchor, elId, c) { + _ju.removeWithFunction(connectionsByElementId[elId], function (_c) { + return _c[0].id === c.id; + }); + }; + + removeConnection(1, ep[1], ep[1].anchor, sourceId, connection); + removeConnection(0, ep[0], ep[0].anchor, targetId, connection); + if (connection.floatingId) { + removeConnection(connection.floatingIndex, connection.floatingEndpoint, connection.floatingEndpoint.anchor, connection.floatingId, connection); + removeEndpointFromAnchorLists(connection.floatingEndpoint); + } + + // remove from anchorLists + removeEndpointFromAnchorLists(connection.endpoints[0]); + removeEndpointFromAnchorLists(connection.endpoints[1]); + + if (!doNotRedraw) { + self.redraw(connection.sourceId); + if (connection.targetId !== connection.sourceId) { + self.redraw(connection.targetId); + } + } + }; + this.add = function (endpoint, elementId) { + _ju.addToList(_amEndpoints, elementId, endpoint); + }; + this.changeId = function (oldId, newId) { + connectionsByElementId[newId] = connectionsByElementId[oldId]; + _amEndpoints[newId] = _amEndpoints[oldId]; + delete connectionsByElementId[oldId]; + delete _amEndpoints[oldId]; + }; + this.getConnectionsFor = function (elementId) { + return connectionsByElementId[elementId] || []; + }; + this.getEndpointsFor = function (elementId) { + return _amEndpoints[elementId] || []; + }; + this.deleteEndpoint = function (endpoint) { + _ju.removeWithFunction(_amEndpoints[endpoint.elementId], function (e) { + return e.id === endpoint.id; + }); + removeEndpointFromAnchorLists(endpoint); + }; + this.clearFor = function (elementId) { + delete _amEndpoints[elementId]; + _amEndpoints[elementId] = []; + }; + // updates the given anchor list by either updating an existing anchor's info, or adding it. this function + // also removes the anchor from its previous list, if the edge it is on has changed. + // all connections found along the way (those that are connected to one of the faces this function + // operates on) are added to the connsToPaint list, as are their endpoints. in this way we know to repaint + // them wthout having to calculate anything else about them. + var _updateAnchorList = function (lists, theta, order, conn, aBoolean, otherElId, idx, reverse, edgeId, elId, connsToPaint, endpointsToPaint) { + // first try to find the exact match, but keep track of the first index of a matching element id along the way.s + var exactIdx = -1, + firstMatchingElIdx = -1, + endpoint = conn.endpoints[idx], + endpointId = endpoint.id, + oIdx = [1, 0][idx], + values = [ + [ theta, order ], + conn, + aBoolean, + otherElId, + endpointId + ], + listToAddTo = lists[edgeId], + listToRemoveFrom = endpoint._continuousAnchorEdge ? lists[endpoint._continuousAnchorEdge] : null, + i, + candidate; + + if (listToRemoveFrom) { + var rIdx = _ju.findWithFunction(listToRemoveFrom, function (e) { + return e[4] === endpointId; + }); + if (rIdx !== -1) { + listToRemoveFrom.splice(rIdx, 1); + // get all connections from this list + for (i = 0; i < listToRemoveFrom.length; i++) { + candidate = listToRemoveFrom[i][1]; + _ju.addWithFunction(connsToPaint, candidate, function (c) { + return c.id === candidate.id; + }); + _ju.addWithFunction(endpointsToPaint, listToRemoveFrom[i][1].endpoints[idx], function (e) { + return e.id === candidate.endpoints[idx].id; + }); + _ju.addWithFunction(endpointsToPaint, listToRemoveFrom[i][1].endpoints[oIdx], function (e) { + return e.id === candidate.endpoints[oIdx].id; + }); + } + } + } + + for (i = 0; i < listToAddTo.length; i++) { + candidate = listToAddTo[i][1]; + if (params.idx === 1 && listToAddTo[i][3] === otherElId && firstMatchingElIdx === -1) { + firstMatchingElIdx = i; + } + _ju.addWithFunction(connsToPaint, candidate, function (c) { + return c.id === candidate.id; + }); + _ju.addWithFunction(endpointsToPaint, listToAddTo[i][1].endpoints[idx], function (e) { + return e.id === candidate.endpoints[idx].id; + }); + _ju.addWithFunction(endpointsToPaint, listToAddTo[i][1].endpoints[oIdx], function (e) { + return e.id === candidate.endpoints[oIdx].id; + }); + } + if (exactIdx !== -1) { + listToAddTo[exactIdx] = values; + } + else { + var insertIdx = reverse ? firstMatchingElIdx !== -1 ? firstMatchingElIdx : 0 : listToAddTo.length; // of course we will get this from having looked through the array shortly. + listToAddTo.splice(insertIdx, 0, values); + } + + // store this for next time. + endpoint._continuousAnchorEdge = edgeId; + }; + + // + // find the entry in an endpoint's list for this connection and update its target endpoint + // with the current target in the connection. + // This method and sourceChanged need to be folder into one. + // + this.updateOtherEndpoint = function (sourceElId, oldTargetId, newTargetId, connection) { + var sIndex = _ju.findWithFunction(connectionsByElementId[sourceElId], function (i) { + return i[0].id === connection.id; + }), + tIndex = _ju.findWithFunction(connectionsByElementId[oldTargetId], function (i) { + return i[0].id === connection.id; + }); + + // update or add data for source + if (sIndex !== -1) { + connectionsByElementId[sourceElId][sIndex][0] = connection; + connectionsByElementId[sourceElId][sIndex][1] = connection.endpoints[1]; + connectionsByElementId[sourceElId][sIndex][2] = connection.endpoints[1].anchor.constructor === _jp.DynamicAnchor; + } + + // remove entry for previous target (if there) + if (tIndex > -1) { + connectionsByElementId[oldTargetId].splice(tIndex, 1); + // add entry for new target + _ju.addToList(connectionsByElementId, newTargetId, [connection, connection.endpoints[0], connection.endpoints[0].anchor.constructor === _jp.DynamicAnchor]); + } + + connection.updateConnectedClass(); + }; + + // + // notification that the connection given has changed source from the originalId to the newId. + // This involves: + // 1. removing the connection from the list of connections stored for the originalId + // 2. updating the source information for the target of the connection + // 3. re-registering the connection in connectionsByElementId with the newId + // + this.sourceChanged = function (originalId, newId, connection, newElement) { + if (originalId !== newId) { + + connection.sourceId = newId; + connection.source = newElement; + + // remove the entry that points from the old source to the target + _ju.removeWithFunction(connectionsByElementId[originalId], function (info) { + return info[0].id === connection.id; + }); + // find entry for target and update it + var tIdx = _ju.findWithFunction(connectionsByElementId[connection.targetId], function (i) { + return i[0].id === connection.id; + }); + if (tIdx > -1) { + connectionsByElementId[connection.targetId][tIdx][0] = connection; + connectionsByElementId[connection.targetId][tIdx][1] = connection.endpoints[0]; + connectionsByElementId[connection.targetId][tIdx][2] = connection.endpoints[0].anchor.constructor === _jp.DynamicAnchor; + } + // add entry for new source + _ju.addToList(connectionsByElementId, newId, [connection, connection.endpoints[1], connection.endpoints[1].anchor.constructor === _jp.DynamicAnchor]); + + // TODO SP not final on this yet. when a user drags an existing connection and it turns into a self + // loop, then this code hides the target endpoint (by removing it from the DOM) But I think this should + // occur only if the anchor is Continuous + if (connection.endpoints[1].anchor.isContinuous) { + if (connection.source === connection.target) { + connection._jsPlumb.instance.removeElement(connection.endpoints[1].canvas); + } + else { + if (connection.endpoints[1].canvas.parentNode == null) { + connection._jsPlumb.instance.appendElement(connection.endpoints[1].canvas); + } + } + } + + connection.updateConnectedClass(); + } + }; + + // + // moves the given endpoint from `currentId` to `element`. + // This involves: + // + // 1. changing the key in _amEndpoints under which the endpoint is stored + // 2. changing the source or target values in all of the endpoint's connections + // 3. changing the array in connectionsByElementId in which the endpoint's connections + // are stored (done by either sourceChanged or updateOtherEndpoint) + // + this.rehomeEndpoint = function (ep, currentId, element) { + var eps = _amEndpoints[currentId] || [], + elementId = jsPlumbInstance.getId(element); + + if (elementId !== currentId) { + var idx = eps.indexOf(ep); + if (idx > -1) { + var _ep = eps.splice(idx, 1)[0]; + self.add(_ep, elementId); + } + } + + for (var i = 0; i < ep.connections.length; i++) { + if (ep.connections[i].sourceId === currentId) { + self.sourceChanged(currentId, ep.elementId, ep.connections[i], ep.element); + } + else if (ep.connections[i].targetId === currentId) { + ep.connections[i].targetId = ep.elementId; + ep.connections[i].target = ep.element; + self.updateOtherEndpoint(ep.connections[i].sourceId, currentId, ep.elementId, ep.connections[i]); + } + } + }; + + this.redraw = function (elementId, ui, timestamp, offsetToUI, clearEdits, doNotRecalcEndpoint) { + + if (!jsPlumbInstance.isSuspendDrawing()) { + // get all the endpoints for this element + var ep = _amEndpoints[elementId] || [], + endpointConnections = connectionsByElementId[elementId] || [], + connectionsToPaint = [], + endpointsToPaint = [], + anchorsToUpdate = []; + + timestamp = timestamp || jsPlumbInstance.timestamp(); + // offsetToUI are values that would have been calculated in the dragManager when registering + // an endpoint for an element that had a parent (somewhere in the hierarchy) that had been + // registered as draggable. + offsetToUI = offsetToUI || {left: 0, top: 0}; + if (ui) { + ui = { + left: ui.left + offsetToUI.left, + top: ui.top + offsetToUI.top + }; + } + + // valid for one paint cycle. + var myOffset = jsPlumbInstance.updateOffset({ elId: elementId, offset: ui, recalc: false, timestamp: timestamp }), + orientationCache = {}; + + // actually, first we should compute the orientation of this element to all other elements to which + // this element is connected with a continuous anchor (whether both ends of the connection have + // a continuous anchor or just one) + + for (var i = 0; i < endpointConnections.length; i++) { + var conn = endpointConnections[i][0], + sourceId = conn.sourceId, + targetId = conn.targetId, + sourceContinuous = conn.endpoints[0].anchor.isContinuous, + targetContinuous = conn.endpoints[1].anchor.isContinuous; + + if (sourceContinuous || targetContinuous) { + var oKey = sourceId + "_" + targetId, + o = orientationCache[oKey], + oIdx = conn.sourceId === elementId ? 1 : 0; + + if (sourceContinuous && !anchorLists[sourceId]) { + anchorLists[sourceId] = { top: [], right: [], bottom: [], left: [] }; + } + if (targetContinuous && !anchorLists[targetId]) { + anchorLists[targetId] = { top: [], right: [], bottom: [], left: [] }; + } + + if (elementId !== targetId) { + jsPlumbInstance.updateOffset({ elId: targetId, timestamp: timestamp }); + } + if (elementId !== sourceId) { + jsPlumbInstance.updateOffset({ elId: sourceId, timestamp: timestamp }); + } + + var td = jsPlumbInstance.getCachedData(targetId), + sd = jsPlumbInstance.getCachedData(sourceId); + + if (targetId === sourceId && (sourceContinuous || targetContinuous)) { + // here we may want to improve this by somehow determining the face we'd like + // to put the connector on. ideally, when drawing, the face should be calculated + // by determining which face is closest to the point at which the mouse button + // was released. for now, we're putting it on the top face. + _updateAnchorList( anchorLists[sourceId], -Math.PI / 2, 0, conn, false, targetId, 0, false, "top", sourceId, connectionsToPaint, endpointsToPaint); + _updateAnchorList( anchorLists[targetId], -Math.PI / 2, 0, conn, false, sourceId, 1, false, "top", targetId, connectionsToPaint, endpointsToPaint); + } + else { + if (!o) { + o = this.calculateOrientation(sourceId, targetId, sd.o, td.o, conn.endpoints[0].anchor, conn.endpoints[1].anchor, conn); + orientationCache[oKey] = o; + // this would be a performance enhancement, but the computed angles need to be clamped to + //the (-PI/2 -> PI/2) range in order for the sorting to work properly. + /* orientationCache[oKey2] = { + orientation:o.orientation, + a:[o.a[1], o.a[0]], + theta:o.theta + Math.PI, + theta2:o.theta2 + Math.PI + };*/ + } + if (sourceContinuous) { + _updateAnchorList(anchorLists[sourceId], o.theta, 0, conn, false, targetId, 0, false, o.a[0], sourceId, connectionsToPaint, endpointsToPaint); + } + if (targetContinuous) { + _updateAnchorList(anchorLists[targetId], o.theta2, -1, conn, true, sourceId, 1, true, o.a[1], targetId, connectionsToPaint, endpointsToPaint); + } + } + + if (sourceContinuous) { + _ju.addWithFunction(anchorsToUpdate, sourceId, function (a) { + return a === sourceId; + }); + } + if (targetContinuous) { + _ju.addWithFunction(anchorsToUpdate, targetId, function (a) { + return a === targetId; + }); + } + _ju.addWithFunction(connectionsToPaint, conn, function (c) { + return c.id === conn.id; + }); + if ((sourceContinuous && oIdx === 0) || (targetContinuous && oIdx === 1)) { + _ju.addWithFunction(endpointsToPaint, conn.endpoints[oIdx], function (e) { + return e.id === conn.endpoints[oIdx].id; + }); + } + } + } + + // place Endpoints whose anchors are continuous but have no Connections + for (i = 0; i < ep.length; i++) { + if (ep[i].connections.length === 0 && ep[i].anchor.isContinuous) { + if (!anchorLists[elementId]) { + anchorLists[elementId] = { top: [], right: [], bottom: [], left: [] }; + } + _updateAnchorList(anchorLists[elementId], -Math.PI / 2, 0, {endpoints: [ep[i], ep[i]], paint: function () { + }}, false, elementId, 0, false, ep[i].anchor.getDefaultFace(), elementId, connectionsToPaint, endpointsToPaint); + _ju.addWithFunction(anchorsToUpdate, elementId, function (a) { + return a === elementId; + }); + } + } + + // now place all the continuous anchors we need to; + for (i = 0; i < anchorsToUpdate.length; i++) { + placeAnchors(anchorsToUpdate[i], anchorLists[anchorsToUpdate[i]]); + } + + // now that continuous anchors have been placed, paint all the endpoints for this element + for (i = 0; i < ep.length; i++) { + ep[i].paint({ timestamp: timestamp, offset: myOffset, dimensions: myOffset.s, recalc: doNotRecalcEndpoint !== true }); + } + + // ... and any other endpoints we came across as a result of the continuous anchors. + for (i = 0; i < endpointsToPaint.length; i++) { + var cd = jsPlumbInstance.getCachedData(endpointsToPaint[i].elementId); + //endpointsToPaint[i].paint({ timestamp: timestamp, offset: cd, dimensions: cd.s }); + endpointsToPaint[i].paint({ timestamp: null, offset: cd, dimensions: cd.s }); + } + + // paint all the standard and "dynamic connections", which are connections whose other anchor is + // static and therefore does need to be recomputed; we make sure that happens only one time. + + // TODO we could have compiled a list of these in the first pass through connections; might save some time. + for (i = 0; i < endpointConnections.length; i++) { + var otherEndpoint = endpointConnections[i][1]; + if (otherEndpoint.anchor.constructor === _jp.DynamicAnchor) { + otherEndpoint.paint({ elementWithPrecedence: elementId, timestamp: timestamp }); + _ju.addWithFunction(connectionsToPaint, endpointConnections[i][0], function (c) { + return c.id === endpointConnections[i][0].id; + }); + // all the connections for the other endpoint now need to be repainted + for (var k = 0; k < otherEndpoint.connections.length; k++) { + if (otherEndpoint.connections[k] !== endpointConnections[i][0]) { + _ju.addWithFunction(connectionsToPaint, otherEndpoint.connections[k], function (c) { + return c.id === otherEndpoint.connections[k].id; + }); + } + } + } else { + _ju.addWithFunction(connectionsToPaint, endpointConnections[i][0], function (c) { + return c.id === endpointConnections[i][0].id; + }); + } + } + + // paint current floating connection for this element, if there is one. + var fc = floatingConnections[elementId]; + if (fc) { + fc.paint({timestamp: timestamp, recalc: false, elId: elementId}); + } + + // paint all the connections + for (i = 0; i < connectionsToPaint.length; i++) { + connectionsToPaint[i].paint({elId: elementId, timestamp: null, recalc: false, clearEdits: clearEdits}); + } + } + }; + + var ContinuousAnchor = function (anchorParams) { + _ju.EventGenerator.apply(this); + this.type = "Continuous"; + this.isDynamic = true; + this.isContinuous = true; + var faces = anchorParams.faces || ["top", "right", "bottom", "left"], + clockwise = !(anchorParams.clockwise === false), + availableFaces = { }, + opposites = { "top": "bottom", "right": "left", "left": "right", "bottom": "top" }, + clockwiseOptions = { "top": "right", "right": "bottom", "left": "top", "bottom": "left" }, + antiClockwiseOptions = { "top": "left", "right": "top", "left": "bottom", "bottom": "right" }, + secondBest = clockwise ? clockwiseOptions : antiClockwiseOptions, + lastChoice = clockwise ? antiClockwiseOptions : clockwiseOptions, + cssClass = anchorParams.cssClass || "", + _currentFace = null, _lockedFace = null, X_AXIS_FACES = ["left", "right"], Y_AXIS_FACES = ["top", "bottom"], + _lockedAxis = null; + + for (var i = 0; i < faces.length; i++) { + availableFaces[faces[i]] = true; + } + + this.getDefaultFace = function () { + return faces.length === 0 ? "top" : faces[0]; + }; + + this.isRelocatable = function() { return true; }; + this.isSnapOnRelocate = function() { return true; }; + + // if the given edge is supported, returns it. otherwise looks for a substitute that _is_ + // supported. if none supported we also return the request edge. + this.verifyEdge = function (edge) { + if (availableFaces[edge]) { + return edge; + } + else if (availableFaces[opposites[edge]]) { + return opposites[edge]; + } + else if (availableFaces[secondBest[edge]]) { + return secondBest[edge]; + } + else if (availableFaces[lastChoice[edge]]) { + return lastChoice[edge]; + } + return edge; // we have to give them something. + }; + + this.isEdgeSupported = function (edge) { + return _lockedAxis == null ? + + (_lockedFace == null ? availableFaces[edge] === true : _lockedFace === edge) + + : _lockedAxis.indexOf(edge) !== -1; + }; + + this.setCurrentFace = function(face, overrideLock) { + _currentFace = face; + // if currently locked, and the user wants to override, do that. + if (overrideLock && _lockedFace != null) { + _lockedFace = _currentFace; + } + }; + + this.getCurrentFace = function() { return _currentFace; }; + this.getSupportedFaces = function() { + var af = []; + for (var k in availableFaces) { + if (availableFaces[k]) { + af.push(k); + } + } + return af; + }; + + this.lock = function() { + _lockedFace = _currentFace; + }; + this.unlock = function() { + _lockedFace = null; + }; + this.isLocked = function() { + return _lockedFace != null; + }; + + this.lockCurrentAxis = function() { + if (_currentFace != null) { + _lockedAxis = (_currentFace === "left" || _currentFace === "right") ? X_AXIS_FACES : Y_AXIS_FACES; + } + }; + + this.unlockCurrentAxis = function() { + _lockedAxis = null; + }; + + this.compute = function (params) { + return continuousAnchorLocations[params.element.id] || [0, 0]; + }; + this.getCurrentLocation = function (params) { + return continuousAnchorLocations[params.element.id] || [0, 0]; + }; + this.getOrientation = function (endpoint) { + return continuousAnchorOrientations[endpoint.id] || [0, 0]; + }; + this.getCssClass = function () { + return cssClass; + }; + }; + + // continuous anchors + jsPlumbInstance.continuousAnchorFactory = { + get: function (params) { + return new ContinuousAnchor(params); + }, + clear: function (elementId) { + delete continuousAnchorLocations[elementId]; + } + }; + }; + + _jp.AnchorManager.prototype.calculateOrientation = function (sourceId, targetId, sd, td, sourceAnchor, targetAnchor) { + + var Orientation = { HORIZONTAL: "horizontal", VERTICAL: "vertical", DIAGONAL: "diagonal", IDENTITY: "identity" }, + axes = ["left", "top", "right", "bottom"]; + + if (sourceId === targetId) { + return { + orientation: Orientation.IDENTITY, + a: ["top", "top"] + }; + } + + var theta = Math.atan2((td.centery - sd.centery), (td.centerx - sd.centerx)), + theta2 = Math.atan2((sd.centery - td.centery), (sd.centerx - td.centerx)); + +// -------------------------------------------------------------------------------------- + + // improved face calculation. get midpoints of each face for source and target, then put in an array with all combinations of + // source/target faces. sort this array by distance between midpoints. the entry at index 0 is our preferred option. we can + // go through the array one by one until we find an entry in which each requested face is supported. + var candidates = [], midpoints = { }; + (function (types, dim) { + for (var i = 0; i < types.length; i++) { + midpoints[types[i]] = { + "left": [ dim[i].left, dim[i].centery ], + "right": [ dim[i].right, dim[i].centery ], + "top": [ dim[i].centerx, dim[i].top ], + "bottom": [ dim[i].centerx , dim[i].bottom] + }; + } + })([ "source", "target" ], [ sd, td ]); + + for (var sf = 0; sf < axes.length; sf++) { + for (var tf = 0; tf < axes.length; tf++) { + candidates.push({ + source: axes[sf], + target: axes[tf], + dist: Biltong.lineLength(midpoints.source[axes[sf]], midpoints.target[axes[tf]]) + }); + } + } + + candidates.sort(function (a, b) { + return a.dist < b.dist ? -1 : a.dist > b.dist ? 1 : 0; + }); + + // now go through this list and try to get an entry that satisfies both (there will be one, unless one of the anchors + // declares no available faces) + var sourceEdge = candidates[0].source, targetEdge = candidates[0].target; + for (var i = 0; i < candidates.length; i++) { + + if (!sourceAnchor.isContinuous || sourceAnchor.isEdgeSupported(candidates[i].source)) { + sourceEdge = candidates[i].source; + } + else { + sourceEdge = null; + } + + if (!targetAnchor.isContinuous || targetAnchor.isEdgeSupported(candidates[i].target)) { + targetEdge = candidates[i].target; + } + else { + targetEdge = null; + } + + if (sourceEdge != null && targetEdge != null) { + break; + } + } + + if (sourceAnchor.isContinuous) { + sourceAnchor.setCurrentFace(sourceEdge); + } + + if (targetAnchor.isContinuous) { + targetAnchor.setCurrentFace(targetEdge); + } + +// -------------------------------------------------------------------------------------- + + return { + a: [ sourceEdge, targetEdge ], + theta: theta, + theta2: theta2 + }; + }; + + /** + * Anchors model a position on some element at which an Endpoint may be located. They began as a first class citizen of jsPlumb, ie. a user + * was required to create these themselves, but over time this has been replaced by the concept of referring to them either by name (eg. "TopMiddle"), + * or by an array describing their coordinates (eg. [ 0, 0.5, 0, -1 ], which is the same as "TopMiddle"). jsPlumb now handles all of the + * creation of Anchors without user intervention. + */ + _jp.Anchor = function (params) { + this.x = params.x || 0; + this.y = params.y || 0; + this.elementId = params.elementId; + this.cssClass = params.cssClass || ""; + this.userDefinedLocation = null; + this.orientation = params.orientation || [ 0, 0 ]; + this.lastReturnValue = null; + this.offsets = params.offsets || [ 0, 0 ]; + this.timestamp = null; + + var relocatable = params.relocatable !== false; + this.isRelocatable = function() { return relocatable; }; + this.setRelocatable = function(_relocatable) { relocatable = _relocatable; }; + var snapOnRelocate = params.snapOnRelocate !== false; + this.isSnapOnRelocate = function() { return snapOnRelocate; }; + + var locked = false; + this.lock = function() { locked = true; }; + this.unlock = function() { locked = false; }; + this.isLocked = function() { return locked; }; + + _ju.EventGenerator.apply(this); + + this.compute = function (params) { + + var xy = params.xy, wh = params.wh, timestamp = params.timestamp; + + if (params.clearUserDefinedLocation) { + this.userDefinedLocation = null; + } + + if (timestamp && timestamp === this.timestamp) { + return this.lastReturnValue; + } + + if (this.userDefinedLocation != null) { + this.lastReturnValue = this.userDefinedLocation; + } + else { + this.lastReturnValue = [ xy[0] + (this.x * wh[0]) + this.offsets[0], xy[1] + (this.y * wh[1]) + this.offsets[1], this.x, this.y ]; + } + + this.timestamp = timestamp; + return this.lastReturnValue; + }; + + this.getCurrentLocation = function (params) { + params = params || {}; + return (this.lastReturnValue == null || (params.timestamp != null && this.timestamp !== params.timestamp)) ? this.compute(params) : this.lastReturnValue; + }; + + this.setPosition = function(x, y, ox, oy, overrideLock) { + if (!locked || overrideLock) { + this.x = x; + this.y = y; + this.orientation = [ ox, oy ]; + this.lastReturnValue = null; + } + }; + }; + _ju.extend(_jp.Anchor, _ju.EventGenerator, { + equals: function (anchor) { + if (!anchor) { + return false; + } + var ao = anchor.getOrientation(), + o = this.getOrientation(); + return this.x === anchor.x && this.y === anchor.y && this.offsets[0] === anchor.offsets[0] && this.offsets[1] === anchor.offsets[1] && o[0] === ao[0] && o[1] === ao[1]; + }, + getUserDefinedLocation: function () { + return this.userDefinedLocation; + }, + setUserDefinedLocation: function (l) { + this.userDefinedLocation = l; + }, + clearUserDefinedLocation: function () { + this.userDefinedLocation = null; + }, + getOrientation: function () { + return this.orientation; + }, + getCssClass: function () { + return this.cssClass; + } + }); + + /** + * An Anchor that floats. its orientation is computed dynamically from + * its position relative to the anchor it is floating relative to. It is used when creating + * a connection through drag and drop. + * + * TODO FloatingAnchor could totally be refactored to extend Anchor just slightly. + */ + _jp.FloatingAnchor = function (params) { + + _jp.Anchor.apply(this, arguments); + + // this is the anchor that this floating anchor is referenced to for + // purposes of calculating the orientation. + var ref = params.reference, + // the canvas this refers to. + refCanvas = params.referenceCanvas, + size = _jp.getSize(refCanvas), + // these are used to store the current relative position of our + // anchor wrt the reference anchor. they only indicate + // direction, so have a value of 1 or -1 (or, very rarely, 0). these + // values are written by the compute method, and read + // by the getOrientation method. + xDir = 0, yDir = 0, + // temporary member used to store an orientation when the floating + // anchor is hovering over another anchor. + orientation = null, + _lastResult = null; + + // clear from parent. we want floating anchor orientation to always be computed. + this.orientation = null; + + // set these to 0 each; they are used by certain types of connectors in the loopback case, + // when the connector is trying to clear the element it is on. but for floating anchor it's not + // very important. + this.x = 0; + this.y = 0; + + this.isFloating = true; + + this.compute = function (params) { + var xy = params.xy, + result = [ xy[0] + (size[0] / 2), xy[1] + (size[1] / 2) ]; // return origin of the element. we may wish to improve this so that any object can be the drag proxy. + _lastResult = result; + return result; + }; + + this.getOrientation = function (_endpoint) { + if (orientation) { + return orientation; + } + else { + var o = ref.getOrientation(_endpoint); + // here we take into account the orientation of the other + // anchor: if it declares zero for some direction, we declare zero too. this might not be the most awesome. perhaps we can come + // up with a better way. it's just so that the line we draw looks like it makes sense. maybe this wont make sense. + return [ Math.abs(o[0]) * xDir * -1, + Math.abs(o[1]) * yDir * -1 ]; + } + }; + + /** + * notification the endpoint associated with this anchor is hovering + * over another anchor; we want to assume that anchor's orientation + * for the duration of the hover. + */ + this.over = function (anchor, endpoint) { + orientation = anchor.getOrientation(endpoint); + }; + + /** + * notification the endpoint associated with this anchor is no + * longer hovering over another anchor; we should resume calculating + * orientation as we normally do. + */ + this.out = function () { + orientation = null; + }; + + this.getCurrentLocation = function (params) { + return _lastResult == null ? this.compute(params) : _lastResult; + }; + }; + _ju.extend(_jp.FloatingAnchor, _jp.Anchor); + + var _convertAnchor = function (anchor, jsPlumbInstance, elementId) { + return anchor.constructor === _jp.Anchor ? anchor : jsPlumbInstance.makeAnchor(anchor, elementId, jsPlumbInstance); + }; + + /* + * A DynamicAnchor is an Anchor that contains a list of other Anchors, which it cycles + * through at compute time to find the one that is located closest to + * the center of the target element, and returns that Anchor's compute + * method result. this causes endpoints to follow each other with + * respect to the orientation of their target elements, which is a useful + * feature for some applications. + * + */ + _jp.DynamicAnchor = function (params) { + _jp.Anchor.apply(this, arguments); + + this.isDynamic = true; + this.anchors = []; + this.elementId = params.elementId; + this.jsPlumbInstance = params.jsPlumbInstance; + + for (var i = 0; i < params.anchors.length; i++) { + this.anchors[i] = _convertAnchor(params.anchors[i], this.jsPlumbInstance, this.elementId); + } + + this.getAnchors = function () { + return this.anchors; + }; + + var _curAnchor = this.anchors.length > 0 ? this.anchors[0] : null, + _lastAnchor = _curAnchor, + self = this, + + // helper method to calculate the distance between the centers of the two elements. + _distance = function (anchor, cx, cy, xy, wh) { + var ax = xy[0] + (anchor.x * wh[0]), ay = xy[1] + (anchor.y * wh[1]), + acx = xy[0] + (wh[0] / 2), acy = xy[1] + (wh[1] / 2); + return (Math.sqrt(Math.pow(cx - ax, 2) + Math.pow(cy - ay, 2)) + + Math.sqrt(Math.pow(acx - ax, 2) + Math.pow(acy - ay, 2))); + }, + // default method uses distance between element centers. you can provide your own method in the dynamic anchor + // constructor (and also to jsPlumb.makeDynamicAnchor). the arguments to it are four arrays: + // xy - xy loc of the anchor's element + // wh - anchor's element's dimensions + // txy - xy loc of the element of the other anchor in the connection + // twh - dimensions of the element of the other anchor in the connection. + // anchors - the list of selectable anchors + _anchorSelector = params.selector || function (xy, wh, txy, twh, anchors) { + var cx = txy[0] + (twh[0] / 2), cy = txy[1] + (twh[1] / 2); + var minIdx = -1, minDist = Infinity; + for (var i = 0; i < anchors.length; i++) { + var d = _distance(anchors[i], cx, cy, xy, wh); + if (d < minDist) { + minIdx = i + 0; + minDist = d; + } + } + return anchors[minIdx]; + }; + + this.compute = function (params) { + var xy = params.xy, wh = params.wh, txy = params.txy, twh = params.twh; + + this.timestamp = params.timestamp; + + var udl = self.getUserDefinedLocation(); + if (udl != null) { + return udl; + } + + // if anchor is locked or an opposite element was not given, we + // maintain our state. anchor will be locked + // if it is the source of a drag and drop. + if (this.isLocked() || txy == null || twh == null) { + return _curAnchor.compute(params); + } + else { + params.timestamp = null; // otherwise clear this, i think. we want the anchor to compute. + } + + _curAnchor = _anchorSelector(xy, wh, txy, twh, this.anchors); + this.x = _curAnchor.x; + this.y = _curAnchor.y; + + if (_curAnchor !== _lastAnchor) { + this.fire("anchorChanged", _curAnchor); + } + + _lastAnchor = _curAnchor; + + return _curAnchor.compute(params); + }; + + this.getCurrentLocation = function (params) { + return this.getUserDefinedLocation() || (_curAnchor != null ? _curAnchor.getCurrentLocation(params) : null); + }; + + this.getOrientation = function (_endpoint) { + return _curAnchor != null ? _curAnchor.getOrientation(_endpoint) : [ 0, 0 ]; + }; + this.over = function (anchor, endpoint) { + if (_curAnchor != null) { + _curAnchor.over(anchor, endpoint); + } + }; + this.out = function () { + if (_curAnchor != null) { + _curAnchor.out(); + } + }; + + this.setAnchor = function(a) { + _curAnchor = a; + }; + + this.getCssClass = function () { + return (_curAnchor && _curAnchor.getCssClass()) || ""; + }; + + /** + * Attempt to match an anchor with the given coordinates and then set it. + * @param coords + * @returns true if matching anchor found, false otherwise. + */ + this.setAnchorCoordinates = function(coords) { + var idx = jsPlumbUtil.findWithFunction(this.anchors, function(a) { + return a.x === coords[0] && a.y === coords[1]; + }); + if (idx !== -1) { + this.setAnchor(this.anchors[idx]); + return true; + } else { + return false; + } + }; + }; + _ju.extend(_jp.DynamicAnchor, _jp.Anchor); + +// -------- basic anchors ------------------ + var _curryAnchor = function (x, y, ox, oy, type, fnInit) { + _jp.Anchors[type] = function (params) { + var a = params.jsPlumbInstance.makeAnchor([ x, y, ox, oy, 0, 0 ], params.elementId, params.jsPlumbInstance); + a.type = type; + if (fnInit) { + fnInit(a, params); + } + return a; + }; + }; + + _curryAnchor(0.5, 0, 0, -1, "TopCenter"); + _curryAnchor(0.5, 1, 0, 1, "BottomCenter"); + _curryAnchor(0, 0.5, -1, 0, "LeftMiddle"); + _curryAnchor(1, 0.5, 1, 0, "RightMiddle"); + + _curryAnchor(0.5, 0, 0, -1, "Top"); + _curryAnchor(0.5, 1, 0, 1, "Bottom"); + _curryAnchor(0, 0.5, -1, 0, "Left"); + _curryAnchor(1, 0.5, 1, 0, "Right"); + _curryAnchor(0.5, 0.5, 0, 0, "Center"); + _curryAnchor(1, 0, 0, -1, "TopRight"); + _curryAnchor(1, 1, 0, 1, "BottomRight"); + _curryAnchor(0, 0, 0, -1, "TopLeft"); + _curryAnchor(0, 1, 0, 1, "BottomLeft"); + +// ------- dynamic anchors ------------------- + + // default dynamic anchors chooses from Top, Right, Bottom, Left + _jp.Defaults.DynamicAnchors = function (params) { + return params.jsPlumbInstance.makeAnchors(["TopCenter", "RightMiddle", "BottomCenter", "LeftMiddle"], params.elementId, params.jsPlumbInstance); + }; + + // default dynamic anchors bound to name 'AutoDefault' + _jp.Anchors.AutoDefault = function (params) { + var a = params.jsPlumbInstance.makeDynamicAnchor(_jp.Defaults.DynamicAnchors(params)); + a.type = "AutoDefault"; + return a; + }; + +// ------- continuous anchors ------------------- + + var _curryContinuousAnchor = function (type, faces) { + _jp.Anchors[type] = function (params) { + var a = params.jsPlumbInstance.makeAnchor(["Continuous", { faces: faces }], params.elementId, params.jsPlumbInstance); + a.type = type; + return a; + }; + }; + + _jp.Anchors.Continuous = function (params) { + return params.jsPlumbInstance.continuousAnchorFactory.get(params); + }; + + _curryContinuousAnchor("ContinuousLeft", ["left"]); + _curryContinuousAnchor("ContinuousTop", ["top"]); + _curryContinuousAnchor("ContinuousBottom", ["bottom"]); + _curryContinuousAnchor("ContinuousRight", ["right"]); + +// ------- position assign anchors ------------------- + + // this anchor type lets you assign the position at connection time. + _curryAnchor(0, 0, 0, 0, "Assign", function (anchor, params) { + // find what to use as the "position finder". the user may have supplied a String which represents + // the id of a position finder in jsPlumb.AnchorPositionFinders, or the user may have supplied the + // position finder as a function. we find out what to use and then set it on the anchor. + var pf = params.position || "Fixed"; + anchor.positionFinder = pf.constructor === String ? params.jsPlumbInstance.AnchorPositionFinders[pf] : pf; + // always set the constructor params; the position finder might need them later (the Grid one does, + // for example) + anchor.constructorParams = params; + }); + + // these are the default anchor positions finders, which are used by the makeTarget function. supplying + // a position finder argument to that function allows you to specify where the resulting anchor will + // be located + root.jsPlumbInstance.prototype.AnchorPositionFinders = { + "Fixed": function (dp, ep, es) { + return [ (dp.left - ep.left) / es[0], (dp.top - ep.top) / es[1] ]; + }, + "Grid": function (dp, ep, es, params) { + var dx = dp.left - ep.left, dy = dp.top - ep.top, + gx = es[0] / (params.grid[0]), gy = es[1] / (params.grid[1]), + mx = Math.floor(dx / gx), my = Math.floor(dy / gy); + return [ ((mx * gx) + (gx / 2)) / es[0], ((my * gy) + (gy / 2)) / es[1] ]; + } + }; + +// ------- perimeter anchors ------------------- + + _jp.Anchors.Perimeter = function (params) { + params = params || {}; + var anchorCount = params.anchorCount || 60, + shape = params.shape; + + if (!shape) { + throw new Error("no shape supplied to Perimeter Anchor type"); + } + + var _circle = function () { + var r = 0.5, step = Math.PI * 2 / anchorCount, current = 0, a = []; + for (var i = 0; i < anchorCount; i++) { + var x = r + (r * Math.sin(current)), + y = r + (r * Math.cos(current)); + a.push([ x, y, 0, 0 ]); + current += step; + } + return a; + }, + _path = function (segments) { + var anchorsPerFace = anchorCount / segments.length, a = [], + _computeFace = function (x1, y1, x2, y2, fractionalLength) { + anchorsPerFace = anchorCount * fractionalLength; + var dx = (x2 - x1) / anchorsPerFace, dy = (y2 - y1) / anchorsPerFace; + for (var i = 0; i < anchorsPerFace; i++) { + a.push([ + x1 + (dx * i), + y1 + (dy * i), + 0, + 0 + ]); + } + }; + + for (var i = 0; i < segments.length; i++) { + _computeFace.apply(null, segments[i]); + } + + return a; + }, + _shape = function (faces) { + var s = []; + for (var i = 0; i < faces.length; i++) { + s.push([faces[i][0], faces[i][1], faces[i][2], faces[i][3], 1 / faces.length]); + } + return _path(s); + }, + _rectangle = function () { + return _shape([ + [ 0, 0, 1, 0 ], + [ 1, 0, 1, 1 ], + [ 1, 1, 0, 1 ], + [ 0, 1, 0, 0 ] + ]); + }; + + var _shapes = { + "Circle": _circle, + "Ellipse": _circle, + "Diamond": function () { + return _shape([ + [ 0.5, 0, 1, 0.5 ], + [ 1, 0.5, 0.5, 1 ], + [ 0.5, 1, 0, 0.5 ], + [ 0, 0.5, 0.5, 0 ] + ]); + }, + "Rectangle": _rectangle, + "Square": _rectangle, + "Triangle": function () { + return _shape([ + [ 0.5, 0, 1, 1 ], + [ 1, 1, 0, 1 ], + [ 0, 1, 0.5, 0] + ]); + }, + "Path": function (params) { + var points = params.points, p = [], tl = 0; + for (var i = 0; i < points.length - 1; i++) { + var l = Math.sqrt(Math.pow(points[i][2] - points[i][0]) + Math.pow(points[i][3] - points[i][1])); + tl += l; + p.push([points[i][0], points[i][1], points[i + 1][0], points[i + 1][1], l]); + } + for (var j = 0; j < p.length; j++) { + p[j][4] = p[j][4] / tl; + } + return _path(p); + } + }, + _rotate = function (points, amountInDegrees) { + var o = [], theta = amountInDegrees / 180 * Math.PI; + for (var i = 0; i < points.length; i++) { + var _x = points[i][0] - 0.5, + _y = points[i][1] - 0.5; + + o.push([ + 0.5 + ((_x * Math.cos(theta)) - (_y * Math.sin(theta))), + 0.5 + ((_x * Math.sin(theta)) + (_y * Math.cos(theta))), + points[i][2], + points[i][3] + ]); + } + return o; + }; + + if (!_shapes[shape]) { + throw new Error("Shape [" + shape + "] is unknown by Perimeter Anchor type"); + } + + var da = _shapes[shape](params); + if (params.rotation) { + da = _rotate(da, params.rotation); + } + var a = params.jsPlumbInstance.makeDynamicAnchor(da); + a.type = "Perimeter"; + return a; + }; +}).call(typeof window !== 'undefined' ? window : this); +/* + * This file contains the default Connectors, Endpoint and Overlay definitions. + * + * Copyright (c) 2010 - 2018 jsPlumb (hello@jsplumbtoolkit.com) + * + * https://jsplumbtoolkit.com + * https://github.com/jsplumb/jsplumb + * + * Dual licensed under the MIT and GPL2 licenses. + */ +; +(function () { + + "use strict"; + var root = this, _jp = root.jsPlumb, _ju = root.jsPlumbUtil, _jg = root.Biltong; + + _jp.Segments = { + + /* + * Class: AbstractSegment + * A Connector is made up of 1..N Segments, each of which has a Type, such as 'Straight', 'Arc', + * 'Bezier'. This is new from 1.4.2, and gives us a lot more flexibility when drawing connections: things such + * as rounded corners for flowchart connectors, for example, or a straight line stub for Bezier connections, are + * much easier to do now. + * + * A Segment is responsible for providing coordinates for painting it, and also must be able to report its length. + * + */ + AbstractSegment: function (params) { + this.params = params; + + /** + * Function: findClosestPointOnPath + * Finds the closest point on this segment to the given [x, y], + * returning both the x and y of the point plus its distance from + * the supplied point, and its location along the length of the + * path inscribed by the segment. This implementation returns + * Infinity for distance and null values for everything else; + * subclasses are expected to override. + */ + this.findClosestPointOnPath = function (x, y) { + return { + d: Infinity, + x: null, + y: null, + l: null + }; + }; + + this.getBounds = function () { + return { + minX: Math.min(params.x1, params.x2), + minY: Math.min(params.y1, params.y2), + maxX: Math.max(params.x1, params.x2), + maxY: Math.max(params.y1, params.y2) + }; + }; + + /** + * Computes the list of points on the segment that intersect the given line. + * @method lineIntersection + * @param {number} x1 + * @param {number} y1 + * @param {number} x2 + * @param {number} y2 + * @returns {Array<[number, number]>} + */ + this.lineIntersection = function(x1, y1, x2, y2) { + return []; + }; + + /** + * Computes the list of points on the segment that intersect the box with the given origin and size. + * @method boxIntersection + * @param {number} x1 + * @param {number} y1 + * @param {number} w + * @param {number} h + * @returns {Array<[number, number]>} + */ + this.boxIntersection = function(x, y, w, h) { + var a = []; + a.push.apply(a, this.lineIntersection(x, y, x + w, y)); + a.push.apply(a, this.lineIntersection(x + w, y, x + w, y + h)); + a.push.apply(a, this.lineIntersection(x + w, y + h, x, y + h)); + a.push.apply(a, this.lineIntersection(x, y + h, x, y)); + return a; + }; + + /** + * Computes the list of points on the segment that intersect the given bounding box, which is an object of the form { x:.., y:.., w:.., h:.. }. + * @method lineIntersection + * @param {BoundingRectangle} box + * @returns {Array<[number, number]>} + */ + this.boundingBoxIntersection = function(box) { + return this.boxIntersection(box.x, box.y, box.w, box.y); + }; + }, + Straight: function (params) { + var _super = _jp.Segments.AbstractSegment.apply(this, arguments), + length, m, m2, x1, x2, y1, y2, + _recalc = function () { + length = Math.sqrt(Math.pow(x2 - x1, 2) + Math.pow(y2 - y1, 2)); + m = _jg.gradient({x: x1, y: y1}, {x: x2, y: y2}); + m2 = -1 / m; + }; + + this.type = "Straight"; + + this.getLength = function () { + return length; + }; + this.getGradient = function () { + return m; + }; + + this.getCoordinates = function () { + return { x1: x1, y1: y1, x2: x2, y2: y2 }; + }; + this.setCoordinates = function (coords) { + x1 = coords.x1; + y1 = coords.y1; + x2 = coords.x2; + y2 = coords.y2; + _recalc(); + }; + this.setCoordinates({x1: params.x1, y1: params.y1, x2: params.x2, y2: params.y2}); + + this.getBounds = function () { + return { + minX: Math.min(x1, x2), + minY: Math.min(y1, y2), + maxX: Math.max(x1, x2), + maxY: Math.max(y1, y2) + }; + }; + + /** + * returns the point on the segment's path that is 'location' along the length of the path, where 'location' is a decimal from + * 0 to 1 inclusive. for the straight line segment this is simple maths. + */ + this.pointOnPath = function (location, absolute) { + if (location === 0 && !absolute) { + return { x: x1, y: y1 }; + } + else if (location === 1 && !absolute) { + return { x: x2, y: y2 }; + } + else { + var l = absolute ? location > 0 ? location : length + location : location * length; + return _jg.pointOnLine({x: x1, y: y1}, {x: x2, y: y2}, l); + } + }; + + /** + * returns the gradient of the segment at the given point - which for us is constant. + */ + this.gradientAtPoint = function (_) { + return m; + }; + + /** + * returns the point on the segment's path that is 'distance' along the length of the path from 'location', where + * 'location' is a decimal from 0 to 1 inclusive, and 'distance' is a number of pixels. + * this hands off to jsPlumbUtil to do the maths, supplying two points and the distance. + */ + this.pointAlongPathFrom = function (location, distance, absolute) { + var p = this.pointOnPath(location, absolute), + farAwayPoint = distance <= 0 ? {x: x1, y: y1} : {x: x2, y: y2 }; + + /* + location == 1 ? { + x:x1 + ((x2 - x1) * 10), + y:y1 + ((y1 - y2) * 10) + } : + */ + + if (distance <= 0 && Math.abs(distance) > 1) { + distance *= -1; + } + + return _jg.pointOnLine(p, farAwayPoint, distance); + }; + + // is c between a and b? + var within = function (a, b, c) { + return c >= Math.min(a, b) && c <= Math.max(a, b); + }; + // find which of a and b is closest to c + var closest = function (a, b, c) { + return Math.abs(c - a) < Math.abs(c - b) ? a : b; + }; + + /** + Function: findClosestPointOnPath + Finds the closest point on this segment to [x,y]. See + notes on this method in AbstractSegment. + */ + this.findClosestPointOnPath = function (x, y) { + var out = { + d: Infinity, + x: null, + y: null, + l: null, + x1: x1, + x2: x2, + y1: y1, + y2: y2 + }; + + if (m === 0) { + out.y = y1; + out.x = within(x1, x2, x) ? x : closest(x1, x2, x); + } + else if (m === Infinity || m === -Infinity) { + out.x = x1; + out.y = within(y1, y2, y) ? y : closest(y1, y2, y); + } + else { + // closest point lies on normal from given point to this line. + var b = y1 - (m * x1), + b2 = y - (m2 * x), + // y1 = m.x1 + b and y1 = m2.x1 + b2 + // so m.x1 + b = m2.x1 + b2 + // x1(m - m2) = b2 - b + // x1 = (b2 - b) / (m - m2) + _x1 = (b2 - b) / (m - m2), + _y1 = (m * _x1) + b; + + out.x = within(x1, x2, _x1) ? _x1 : closest(x1, x2, _x1);//_x1; + out.y = within(y1, y2, _y1) ? _y1 : closest(y1, y2, _y1);//_y1; + } + + var fractionInSegment = _jg.lineLength([ out.x, out.y ], [ x1, y1 ]); + out.d = _jg.lineLength([x, y], [out.x, out.y]); + out.l = fractionInSegment / length; + return out; + }; + + var _pointLiesBetween = function(q, p1, p2) { + return (p2 > p1) ? (p1 <= q && q <= p2) : (p1 >= q && q >= p2); + }, _plb = _pointLiesBetween; + + /** + * Calculates all intersections of the given line with this segment. + * @param _x1 + * @param _y1 + * @param _x2 + * @param _y2 + * @returns {Array} + */ + this.lineIntersection = function(_x1, _y1, _x2, _y2) { + var m2 = Math.abs(_jg.gradient({x: _x1, y: _y1}, {x: _x2, y: _y2})), + m1 = Math.abs(m), + b = m1 === Infinity ? x1 : y1 - (m1 * x1), + out = [], + b2 = m2 === Infinity ? _x1 : _y1 - (m2 * _x1); + + // if lines parallel, no intersection + if (m2 !== m1) { + // perpendicular, segment horizontal + if(m2 === Infinity && m1 === 0) { + if (_plb(_x1, x1, x2) && _plb(y1, _y1, _y2)) { + out = [ _x1, y1 ]; // we return X on the incident line and Y from the segment + } + } else if(m2 === 0 && m1 === Infinity) { + // perpendicular, segment vertical + if(_plb(_y1, y1, y2) && _plb(x1, _x1, _x2)) { + out = [x1, _y1]; // we return X on the segment and Y from the incident line + } + } else { + var X, Y; + if (m2 === Infinity) { + // test line is a vertical line. where does it cross the segment? + X = _x1; + if (_plb(X, x1, x2)) { + Y = (m1 * _x1) + b; + if (_plb(Y, _y1, _y2)) { + out = [ X, Y ]; + } + } + } else if (m2 === 0) { + Y = _y1; + // test line is a horizontal line. where does it cross the segment? + if (_plb(Y, y1, y2)) { + X = (_y1 - b) / m1; + if (_plb(X, _x1, _x2)) { + out = [ X, Y ]; + } + } + } else { + // mX + b = m2X + b2 + // mX - m2X = b2 - b + // X(m - m2) = b2 - b + // X = (b2 - b) / (m - m2) + // Y = mX + b + X = (b2 - b) / (m1 - m2); + Y = (m1 * X) + b; + if(_plb(X, x1, x2) && _plb(Y, y1, y2)) { + out = [ X, Y]; + } + } + } + } + + return out; + }; + + /** + * Calculates all intersections of the given box with this segment. By default this method simply calls `lineIntersection` with each of the four + * faces of the box; subclasses can override this if they think there's a faster way to compute the entire box at once. + * @param x X position of top left corner of box + * @param y Y position of top left corner of box + * @param w width of box + * @param h height of box + * @returns {Array} + */ + this.boxIntersection = function(x, y, w, h) { + var a = []; + a.push.apply(a, this.lineIntersection(x, y, x + w, y)); + a.push.apply(a, this.lineIntersection(x + w, y, x + w, y + h)); + a.push.apply(a, this.lineIntersection(x + w, y + h, x, y + h)); + a.push.apply(a, this.lineIntersection(x, y + h, x, y)); + return a; + }; + + /** + * Calculates all intersections of the given bounding box with this segment. By default this method simply calls `lineIntersection` with each of the four + * faces of the box; subclasses can override this if they think there's a faster way to compute the entire box at once. + * @param box Bounding box, in { x:.., y:..., w:..., h:... } format. + * @returns {Array} + */ + this.boundingBoxIntersection = function(box) { + return this.boxIntersection(box.x, box.y, box.w, box.h); + }; + }, + + /* + Arc Segment. You need to supply: + + r - radius + cx - center x for the arc + cy - center y for the arc + ac - whether the arc is anticlockwise or not. default is clockwise. + + and then either: + + startAngle - startAngle for the arc. + endAngle - endAngle for the arc. + + or: + + x1 - x for start point + y1 - y for start point + x2 - x for end point + y2 - y for end point + + */ + Arc: function (params) { + var _super = _jp.Segments.AbstractSegment.apply(this, arguments), + _calcAngle = function (_x, _y) { + return _jg.theta([params.cx, params.cy], [_x, _y]); + }, + _calcAngleForLocation = function (segment, location) { + if (segment.anticlockwise) { + var sa = segment.startAngle < segment.endAngle ? segment.startAngle + TWO_PI : segment.startAngle, + s = Math.abs(sa - segment.endAngle); + return sa - (s * location); + } + else { + var ea = segment.endAngle < segment.startAngle ? segment.endAngle + TWO_PI : segment.endAngle, + ss = Math.abs(ea - segment.startAngle); + + return segment.startAngle + (ss * location); + } + }, + TWO_PI = 2 * Math.PI; + + this.radius = params.r; + this.anticlockwise = params.ac; + this.type = "Arc"; + + if (params.startAngle && params.endAngle) { + this.startAngle = params.startAngle; + this.endAngle = params.endAngle; + this.x1 = params.cx + (this.radius * Math.cos(params.startAngle)); + this.y1 = params.cy + (this.radius * Math.sin(params.startAngle)); + this.x2 = params.cx + (this.radius * Math.cos(params.endAngle)); + this.y2 = params.cy + (this.radius * Math.sin(params.endAngle)); + } + else { + this.startAngle = _calcAngle(params.x1, params.y1); + this.endAngle = _calcAngle(params.x2, params.y2); + this.x1 = params.x1; + this.y1 = params.y1; + this.x2 = params.x2; + this.y2 = params.y2; + } + + if (this.endAngle < 0) { + this.endAngle += TWO_PI; + } + if (this.startAngle < 0) { + this.startAngle += TWO_PI; + } + + // segment is used by vml + //this.segment = _jg.quadrant([this.x1, this.y1], [this.x2, this.y2]); + + // we now have startAngle and endAngle as positive numbers, meaning the + // absolute difference (|d|) between them is the sweep (s) of this arc, unless the + // arc is 'anticlockwise' in which case 's' is given by 2PI - |d|. + + var ea = this.endAngle < this.startAngle ? this.endAngle + TWO_PI : this.endAngle; + this.sweep = Math.abs(ea - this.startAngle); + if (this.anticlockwise) { + this.sweep = TWO_PI - this.sweep; + } + var circumference = 2 * Math.PI * this.radius, + frac = this.sweep / TWO_PI, + length = circumference * frac; + + this.getLength = function () { + return length; + }; + + this.getBounds = function () { + return { + minX: params.cx - params.r, + maxX: params.cx + params.r, + minY: params.cy - params.r, + maxY: params.cy + params.r + }; + }; + + var VERY_SMALL_VALUE = 0.0000000001, + gentleRound = function (n) { + var f = Math.floor(n), r = Math.ceil(n); + if (n - f < VERY_SMALL_VALUE) { + return f; + } + else if (r - n < VERY_SMALL_VALUE) { + return r; + } + return n; + }; + + /** + * returns the point on the segment's path that is 'location' along the length of the path, where 'location' is a decimal from + * 0 to 1 inclusive. + */ + this.pointOnPath = function (location, absolute) { + + if (location === 0) { + return { x: this.x1, y: this.y1, theta: this.startAngle }; + } + else if (location === 1) { + return { x: this.x2, y: this.y2, theta: this.endAngle }; + } + + if (absolute) { + location = location / length; + } + + var angle = _calcAngleForLocation(this, location), + _x = params.cx + (params.r * Math.cos(angle)), + _y = params.cy + (params.r * Math.sin(angle)); + + return { x: gentleRound(_x), y: gentleRound(_y), theta: angle }; + }; + + /** + * returns the gradient of the segment at the given point. + */ + this.gradientAtPoint = function (location, absolute) { + var p = this.pointOnPath(location, absolute); + var m = _jg.normal([ params.cx, params.cy ], [p.x, p.y ]); + if (!this.anticlockwise && (m === Infinity || m === -Infinity)) { + m *= -1; + } + return m; + }; + + this.pointAlongPathFrom = function (location, distance, absolute) { + var p = this.pointOnPath(location, absolute), + arcSpan = distance / circumference * 2 * Math.PI, + dir = this.anticlockwise ? -1 : 1, + startAngle = p.theta + (dir * arcSpan), + startX = params.cx + (this.radius * Math.cos(startAngle)), + startY = params.cy + (this.radius * Math.sin(startAngle)); + + return {x: startX, y: startY}; + }; + + // TODO: lineIntersection + }, + + Bezier: function (params) { + this.curve = [ + { x: params.x1, y: params.y1}, + { x: params.cp1x, y: params.cp1y }, + { x: params.cp2x, y: params.cp2y }, + { x: params.x2, y: params.y2 } + ]; + + var _super = _jp.Segments.AbstractSegment.apply(this, arguments); + // although this is not a strictly rigorous determination of bounds + // of a bezier curve, it works for the types of curves that this segment + // type produces. + this.bounds = { + minX: Math.min(params.x1, params.x2, params.cp1x, params.cp2x), + minY: Math.min(params.y1, params.y2, params.cp1y, params.cp2y), + maxX: Math.max(params.x1, params.x2, params.cp1x, params.cp2x), + maxY: Math.max(params.y1, params.y2, params.cp1y, params.cp2y) + }; + + this.type = "Bezier"; + + var _translateLocation = function (_curve, location, absolute) { + if (absolute) { + location = root.jsBezier.locationAlongCurveFrom(_curve, location > 0 ? 0 : 1, location); + } + + return location; + }; + + /** + * returns the point on the segment's path that is 'location' along the length of the path, where 'location' is a decimal from + * 0 to 1 inclusive. + */ + this.pointOnPath = function (location, absolute) { + location = _translateLocation(this.curve, location, absolute); + return root.jsBezier.pointOnCurve(this.curve, location); + }; + + /** + * returns the gradient of the segment at the given point. + */ + this.gradientAtPoint = function (location, absolute) { + location = _translateLocation(this.curve, location, absolute); + return root.jsBezier.gradientAtPoint(this.curve, location); + }; + + this.pointAlongPathFrom = function (location, distance, absolute) { + location = _translateLocation(this.curve, location, absolute); + return root.jsBezier.pointAlongCurveFrom(this.curve, location, distance); + }; + + this.getLength = function () { + return root.jsBezier.getLength(this.curve); + }; + + this.getBounds = function () { + return this.bounds; + }; + + this.findClosestPointOnPath = function (x, y) { + var p = root.jsBezier.nearestPointOnCurve({x:x,y:y}, this.curve); + return { + d:Math.sqrt(Math.pow(p.point.x - x, 2) + Math.pow(p.point.y - y, 2)), + x:p.point.x, + y:p.point.y, + l:p.location, + s:this + }; + }; + + this.lineIntersection = function(x1, y1, x2, y2) { + return root.jsBezier.lineIntersection(x1, y1, x2, y2, this.curve); + }; + } + }; + + _jp.SegmentRenderer = { + getPath: function (segment, isFirstSegment) { + return ({ + "Straight": function (isFirstSegment) { + var d = segment.getCoordinates(); + return (isFirstSegment ? "M " + d.x1 + " " + d.y1 + " " : "") + "L " + d.x2 + " " + d.y2; + }, + "Bezier": function (isFirstSegment) { + var d = segment.params; + return (isFirstSegment ? "M " + d.x2 + " " + d.y2 + " " : "") + + "C " + d.cp2x + " " + d.cp2y + " " + d.cp1x + " " + d.cp1y + " " + d.x1 + " " + d.y1; + }, + "Arc": function (isFirstSegment) { + var d = segment.params, + laf = segment.sweep > Math.PI ? 1 : 0, + sf = segment.anticlockwise ? 0 : 1; + + return (isFirstSegment ? "M" + segment.x1 + " " + segment.y1 + " " : "") + "A " + segment.radius + " " + d.r + " 0 " + laf + "," + sf + " " + segment.x2 + " " + segment.y2; + } + })[segment.type](isFirstSegment); + } + }; + + /* + Class: UIComponent + Superclass for Connector and AbstractEndpoint. + */ + var AbstractComponent = function () { + this.resetBounds = function () { + this.bounds = { minX: Infinity, minY: Infinity, maxX: -Infinity, maxY: -Infinity }; + }; + this.resetBounds(); + }; + + /* + * Class: Connector + * Superclass for all Connectors; here is where Segments are managed. This is exposed on jsPlumb just so it + * can be accessed from other files. You should not try to instantiate one of these directly. + * + * When this class is asked for a pointOnPath, or gradient etc, it must first figure out which segment to dispatch + * that request to. This is done by keeping track of the total connector length as segments are added, and also + * their cumulative ratios to the total length. Then when the right segment is found it is a simple case of dispatching + * the request to it (and adjusting 'location' so that it is relative to the beginning of that segment.) + */ + _jp.Connectors.AbstractConnector = function (params) { + + AbstractComponent.apply(this, arguments); + + var segments = [], + totalLength = 0, + segmentProportions = [], + segmentProportionalLengths = [], + stub = params.stub || 0, + sourceStub = _ju.isArray(stub) ? stub[0] : stub, + targetStub = _ju.isArray(stub) ? stub[1] : stub, + gap = params.gap || 0, + sourceGap = _ju.isArray(gap) ? gap[0] : gap, + targetGap = _ju.isArray(gap) ? gap[1] : gap, + userProvidedSegments = null, + paintInfo = null; + + this.getPathData = function() { + var p = ""; + for (var i = 0; i < segments.length; i++) { + p += _jp.SegmentRenderer.getPath(segments[i], i === 0); + p += " "; + } + return p; + }; + + /** + * Function: findSegmentForPoint + * Returns the segment that is closest to the given [x,y], + * null if nothing found. This function returns a JS + * object with: + * + * d - distance from segment + * l - proportional location in segment + * x - x point on the segment + * y - y point on the segment + * s - the segment itself. + */ + this.findSegmentForPoint = function (x, y) { + var out = { d: Infinity, s: null, x: null, y: null, l: null }; + for (var i = 0; i < segments.length; i++) { + var _s = segments[i].findClosestPointOnPath(x, y); + if (_s.d < out.d) { + out.d = _s.d; + out.l = _s.l; + out.x = _s.x; + out.y = _s.y; + out.s = segments[i]; + out.x1 = _s.x1; + out.x2 = _s.x2; + out.y1 = _s.y1; + out.y2 = _s.y2; + out.index = i; + } + } + + return out; + }; + + this.lineIntersection = function(x1, y1, x2, y2) { + var out = []; + for (var i = 0; i < segments.length; i++) { + out.push.apply(out, segments[i].lineIntersection(x1, y1, x2, y2)); + } + return out; + }; + + this.boxIntersection = function(x, y, w, h) { + var out = []; + for (var i = 0; i < segments.length; i++) { + out.push.apply(out, segments[i].boxIntersection(x, y, w, h)); + } + return out; + }; + + this.boundingBoxIntersection = function(box) { + var out = []; + for (var i = 0; i < segments.length; i++) { + out.push.apply(out, segments[i].boundingBoxIntersection(box)); + } + return out; + }; + + var _updateSegmentProportions = function () { + var curLoc = 0; + for (var i = 0; i < segments.length; i++) { + var sl = segments[i].getLength(); + segmentProportionalLengths[i] = sl / totalLength; + segmentProportions[i] = [curLoc, (curLoc += (sl / totalLength)) ]; + } + }, + + /** + * returns [segment, proportion of travel in segment, segment index] for the segment + * that contains the point which is 'location' distance along the entire path, where + * 'location' is a decimal between 0 and 1 inclusive. in this connector type, paths + * are made up of a list of segments, each of which contributes some fraction to + * the total length. + * From 1.3.10 this also supports the 'absolute' property, which lets us specify a location + * as the absolute distance in pixels, rather than a proportion of the total path. + */ + _findSegmentForLocation = function (location, absolute) { + if (absolute) { + location = location > 0 ? location / totalLength : (totalLength + location) / totalLength; + } + var idx = segmentProportions.length - 1, inSegmentProportion = 1; + for (var i = 0; i < segmentProportions.length; i++) { + if (segmentProportions[i][1] >= location) { + idx = i; + // todo is this correct for all connector path types? + inSegmentProportion = location === 1 ? 1 : location === 0 ? 0 : (location - segmentProportions[i][0]) / segmentProportionalLengths[i]; + break; + } + } + return { segment: segments[idx], proportion: inSegmentProportion, index: idx }; + }, + _addSegment = function (conn, type, params) { + if (params.x1 === params.x2 && params.y1 === params.y2) { + return; + } + var s = new _jp.Segments[type](params); + segments.push(s); + totalLength += s.getLength(); + conn.updateBounds(s); + }, + _clearSegments = function () { + totalLength = segments.length = segmentProportions.length = segmentProportionalLengths.length = 0; + }; + + this.setSegments = function (_segs) { + userProvidedSegments = []; + totalLength = 0; + for (var i = 0; i < _segs.length; i++) { + userProvidedSegments.push(_segs[i]); + totalLength += _segs[i].getLength(); + } + }; + + this.getLength = function() { + return totalLength; + }; + + var _prepareCompute = function (params) { + this.strokeWidth = params.strokeWidth; + var segment = _jg.quadrant(params.sourcePos, params.targetPos), + swapX = params.targetPos[0] < params.sourcePos[0], + swapY = params.targetPos[1] < params.sourcePos[1], + lw = params.strokeWidth || 1, + so = params.sourceEndpoint.anchor.getOrientation(params.sourceEndpoint), + to = params.targetEndpoint.anchor.getOrientation(params.targetEndpoint), + x = swapX ? params.targetPos[0] : params.sourcePos[0], + y = swapY ? params.targetPos[1] : params.sourcePos[1], + w = Math.abs(params.targetPos[0] - params.sourcePos[0]), + h = Math.abs(params.targetPos[1] - params.sourcePos[1]); + + // if either anchor does not have an orientation set, we derive one from their relative + // positions. we fix the axis to be the one in which the two elements are further apart, and + // point each anchor at the other element. this is also used when dragging a new connection. + if (so[0] === 0 && so[1] === 0 || to[0] === 0 && to[1] === 0) { + var index = w > h ? 0 : 1, oIndex = [1, 0][index]; + so = []; + to = []; + so[index] = params.sourcePos[index] > params.targetPos[index] ? -1 : 1; + to[index] = params.sourcePos[index] > params.targetPos[index] ? 1 : -1; + so[oIndex] = 0; + to[oIndex] = 0; + } + + var sx = swapX ? w + (sourceGap * so[0]) : sourceGap * so[0], + sy = swapY ? h + (sourceGap * so[1]) : sourceGap * so[1], + tx = swapX ? targetGap * to[0] : w + (targetGap * to[0]), + ty = swapY ? targetGap * to[1] : h + (targetGap * to[1]), + oProduct = ((so[0] * to[0]) + (so[1] * to[1])); + + var result = { + sx: sx, sy: sy, tx: tx, ty: ty, lw: lw, + xSpan: Math.abs(tx - sx), + ySpan: Math.abs(ty - sy), + mx: (sx + tx) / 2, + my: (sy + ty) / 2, + so: so, to: to, x: x, y: y, w: w, h: h, + segment: segment, + startStubX: sx + (so[0] * sourceStub), + startStubY: sy + (so[1] * sourceStub), + endStubX: tx + (to[0] * targetStub), + endStubY: ty + (to[1] * targetStub), + isXGreaterThanStubTimes2: Math.abs(sx - tx) > (sourceStub + targetStub), + isYGreaterThanStubTimes2: Math.abs(sy - ty) > (sourceStub + targetStub), + opposite: oProduct === -1, + perpendicular: oProduct === 0, + orthogonal: oProduct === 1, + sourceAxis: so[0] === 0 ? "y" : "x", + points: [x, y, w, h, sx, sy, tx, ty ], + stubs:[sourceStub, targetStub] + }; + result.anchorOrientation = result.opposite ? "opposite" : result.orthogonal ? "orthogonal" : "perpendicular"; + return result; + }; + + this.getSegments = function () { + return segments; + }; + + this.updateBounds = function (segment) { + var segBounds = segment.getBounds(); + this.bounds.minX = Math.min(this.bounds.minX, segBounds.minX); + this.bounds.maxX = Math.max(this.bounds.maxX, segBounds.maxX); + this.bounds.minY = Math.min(this.bounds.minY, segBounds.minY); + this.bounds.maxY = Math.max(this.bounds.maxY, segBounds.maxY); + }; + + var dumpSegmentsToConsole = function () { + console.log("SEGMENTS:"); + for (var i = 0; i < segments.length; i++) { + console.log(segments[i].type, segments[i].getLength(), segmentProportions[i]); + } + }; + + this.pointOnPath = function (location, absolute) { + var seg = _findSegmentForLocation(location, absolute); + return seg.segment && seg.segment.pointOnPath(seg.proportion, false) || [0, 0]; + }; + + this.gradientAtPoint = function (location, absolute) { + var seg = _findSegmentForLocation(location, absolute); + return seg.segment && seg.segment.gradientAtPoint(seg.proportion, false) || 0; + }; + + this.pointAlongPathFrom = function (location, distance, absolute) { + var seg = _findSegmentForLocation(location, absolute); + // TODO what happens if this crosses to the next segment? + return seg.segment && seg.segment.pointAlongPathFrom(seg.proportion, distance, false) || [0, 0]; + }; + + this.compute = function (params) { + paintInfo = _prepareCompute.call(this, params); + + _clearSegments(); + this._compute(paintInfo, params); + this.x = paintInfo.points[0]; + this.y = paintInfo.points[1]; + this.w = paintInfo.points[2]; + this.h = paintInfo.points[3]; + this.segment = paintInfo.segment; + _updateSegmentProportions(); + }; + + return { + addSegment: _addSegment, + prepareCompute: _prepareCompute, + sourceStub: sourceStub, + targetStub: targetStub, + maxStub: Math.max(sourceStub, targetStub), + sourceGap: sourceGap, + targetGap: targetGap, + maxGap: Math.max(sourceGap, targetGap) + }; + }; + _ju.extend(_jp.Connectors.AbstractConnector, AbstractComponent); + + + // ********************************* END OF CONNECTOR TYPES ******************************************************************* + + // ********************************* ENDPOINT TYPES ******************************************************************* + + _jp.Endpoints.AbstractEndpoint = function (params) { + AbstractComponent.apply(this, arguments); + var compute = this.compute = function (anchorPoint, orientation, endpointStyle, connectorPaintStyle) { + var out = this._compute.apply(this, arguments); + this.x = out[0]; + this.y = out[1]; + this.w = out[2]; + this.h = out[3]; + this.bounds.minX = this.x; + this.bounds.minY = this.y; + this.bounds.maxX = this.x + this.w; + this.bounds.maxY = this.y + this.h; + return out; + }; + return { + compute: compute, + cssClass: params.cssClass + }; + }; + _ju.extend(_jp.Endpoints.AbstractEndpoint, AbstractComponent); + + /** + * Class: Endpoints.Dot + * A round endpoint, with default radius 10 pixels. + */ + + /** + * Function: Constructor + * + * Parameters: + * + * radius - radius of the endpoint. defaults to 10 pixels. + */ + _jp.Endpoints.Dot = function (params) { + this.type = "Dot"; + var _super = _jp.Endpoints.AbstractEndpoint.apply(this, arguments); + params = params || {}; + this.radius = params.radius || 10; + this.defaultOffset = 0.5 * this.radius; + this.defaultInnerRadius = this.radius / 3; + + this._compute = function (anchorPoint, orientation, endpointStyle, connectorPaintStyle) { + this.radius = endpointStyle.radius || this.radius; + var x = anchorPoint[0] - this.radius, + y = anchorPoint[1] - this.radius, + w = this.radius * 2, + h = this.radius * 2; + + if (endpointStyle.stroke) { + var lw = endpointStyle.strokeWidth || 1; + x -= lw; + y -= lw; + w += (lw * 2); + h += (lw * 2); + } + return [ x, y, w, h, this.radius ]; + }; + }; + _ju.extend(_jp.Endpoints.Dot, _jp.Endpoints.AbstractEndpoint); + + _jp.Endpoints.Rectangle = function (params) { + this.type = "Rectangle"; + var _super = _jp.Endpoints.AbstractEndpoint.apply(this, arguments); + params = params || {}; + this.width = params.width || 20; + this.height = params.height || 20; + + this._compute = function (anchorPoint, orientation, endpointStyle, connectorPaintStyle) { + var width = endpointStyle.width || this.width, + height = endpointStyle.height || this.height, + x = anchorPoint[0] - (width / 2), + y = anchorPoint[1] - (height / 2); + + return [ x, y, width, height]; + }; + }; + _ju.extend(_jp.Endpoints.Rectangle, _jp.Endpoints.AbstractEndpoint); + + var DOMElementEndpoint = function (params) { + _jp.jsPlumbUIComponent.apply(this, arguments); + this._jsPlumb.displayElements = []; + }; + _ju.extend(DOMElementEndpoint, _jp.jsPlumbUIComponent, { + getDisplayElements: function () { + return this._jsPlumb.displayElements; + }, + appendDisplayElement: function (el) { + this._jsPlumb.displayElements.push(el); + } + }); + + /** + * Class: Endpoints.Image + * Draws an image as the Endpoint. + */ + /** + * Function: Constructor + * + * Parameters: + * + * src - location of the image to use. + + TODO: multiple references to self. not sure quite how to get rid of them entirely. perhaps self = null in the cleanup + function will suffice + + TODO this class still might leak memory. + + */ + _jp.Endpoints.Image = function (params) { + + this.type = "Image"; + DOMElementEndpoint.apply(this, arguments); + _jp.Endpoints.AbstractEndpoint.apply(this, arguments); + + var _onload = params.onload, + src = params.src || params.url, + clazz = params.cssClass ? " " + params.cssClass : ""; + + this._jsPlumb.img = new Image(); + this._jsPlumb.ready = false; + this._jsPlumb.initialized = false; + this._jsPlumb.deleted = false; + this._jsPlumb.widthToUse = params.width; + this._jsPlumb.heightToUse = params.height; + this._jsPlumb.endpoint = params.endpoint; + + this._jsPlumb.img.onload = function () { + if (this._jsPlumb != null) { + this._jsPlumb.ready = true; + this._jsPlumb.widthToUse = this._jsPlumb.widthToUse || this._jsPlumb.img.width; + this._jsPlumb.heightToUse = this._jsPlumb.heightToUse || this._jsPlumb.img.height; + if (_onload) { + _onload(this); + } + } + }.bind(this); + + /* + Function: setImage + Sets the Image to use in this Endpoint. + + Parameters: + img - may be a URL or an Image object + onload - optional; a callback to execute once the image has loaded. + */ + this._jsPlumb.endpoint.setImage = function (_img, onload) { + var s = _img.constructor === String ? _img : _img.src; + _onload = onload; + this._jsPlumb.img.src = s; + + if (this.canvas != null) { + this.canvas.setAttribute("src", this._jsPlumb.img.src); + } + }.bind(this); + + this._jsPlumb.endpoint.setImage(src, _onload); + this._compute = function (anchorPoint, orientation, endpointStyle, connectorPaintStyle) { + this.anchorPoint = anchorPoint; + if (this._jsPlumb.ready) { + return [anchorPoint[0] - this._jsPlumb.widthToUse / 2, anchorPoint[1] - this._jsPlumb.heightToUse / 2, + this._jsPlumb.widthToUse, this._jsPlumb.heightToUse]; + } + else { + return [0, 0, 0, 0]; + } + }; + + this.canvas = _jp.createElement("img", { + position:"absolute", + margin:0, + padding:0, + outline:0 + }, this._jsPlumb.instance.endpointClass + clazz); + + if (this._jsPlumb.widthToUse) { + this.canvas.setAttribute("width", this._jsPlumb.widthToUse); + } + if (this._jsPlumb.heightToUse) { + this.canvas.setAttribute("height", this._jsPlumb.heightToUse); + } + this._jsPlumb.instance.appendElement(this.canvas); + + this.actuallyPaint = function (d, style, anchor) { + if (!this._jsPlumb.deleted) { + if (!this._jsPlumb.initialized) { + this.canvas.setAttribute("src", this._jsPlumb.img.src); + this.appendDisplayElement(this.canvas); + this._jsPlumb.initialized = true; + } + var x = this.anchorPoint[0] - (this._jsPlumb.widthToUse / 2), + y = this.anchorPoint[1] - (this._jsPlumb.heightToUse / 2); + _ju.sizeElement(this.canvas, x, y, this._jsPlumb.widthToUse, this._jsPlumb.heightToUse); + } + }; + + this.paint = function (style, anchor) { + if (this._jsPlumb != null) { // may have been deleted + if (this._jsPlumb.ready) { + this.actuallyPaint(style, anchor); + } + else { + root.setTimeout(function () { + this.paint(style, anchor); + }.bind(this), 200); + } + } + }; + }; + _ju.extend(_jp.Endpoints.Image, [ DOMElementEndpoint, _jp.Endpoints.AbstractEndpoint ], { + cleanup: function (force) { + if (force) { + this._jsPlumb.deleted = true; + if (this.canvas) { + this.canvas.parentNode.removeChild(this.canvas); + } + this.canvas = null; + } + } + }); + + /* + * Class: Endpoints.Blank + * An Endpoint that paints nothing (visible) on the screen. Supports cssClass and hoverClass parameters like all Endpoints. + */ + _jp.Endpoints.Blank = function (params) { + var _super = _jp.Endpoints.AbstractEndpoint.apply(this, arguments); + this.type = "Blank"; + DOMElementEndpoint.apply(this, arguments); + this._compute = function (anchorPoint, orientation, endpointStyle, connectorPaintStyle) { + return [anchorPoint[0], anchorPoint[1], 10, 0]; + }; + + var clazz = params.cssClass ? " " + params.cssClass : ""; + + this.canvas = _jp.createElement("div", { + display: "block", + width: "1px", + height: "1px", + background: "transparent", + position: "absolute" + }, this._jsPlumb.instance.endpointClass + clazz); + + this._jsPlumb.instance.appendElement(this.canvas); + + this.paint = function (style, anchor) { + _ju.sizeElement(this.canvas, this.x, this.y, this.w, this.h); + }; + }; + _ju.extend(_jp.Endpoints.Blank, [_jp.Endpoints.AbstractEndpoint, DOMElementEndpoint], { + cleanup: function () { + if (this.canvas && this.canvas.parentNode) { + this.canvas.parentNode.removeChild(this.canvas); + } + } + }); + + /* + * Class: Endpoints.Triangle + * A triangular Endpoint. + */ + /* + * Function: Constructor + * + * Parameters: + * + * width width of the triangle's base. defaults to 55 pixels. + * height height of the triangle from base to apex. defaults to 55 pixels. + */ + _jp.Endpoints.Triangle = function (params) { + this.type = "Triangle"; + _jp.Endpoints.AbstractEndpoint.apply(this, arguments); + var self = this; + params = params || { }; + params.width = params.width || 55; + params.height = params.height || 55; + this.width = params.width; + this.height = params.height; + this._compute = function (anchorPoint, orientation, endpointStyle, connectorPaintStyle) { + var width = endpointStyle.width || self.width, + height = endpointStyle.height || self.height, + x = anchorPoint[0] - (width / 2), + y = anchorPoint[1] - (height / 2); + return [ x, y, width, height ]; + }; + }; +// ********************************* END OF ENDPOINT TYPES ******************************************************************* + + +// ********************************* OVERLAY DEFINITIONS *********************************************************************** + + var AbstractOverlay = _jp.Overlays.AbstractOverlay = function (params) { + this.visible = true; + this.isAppendedAtTopLevel = true; + this.component = params.component; + this.loc = params.location == null ? 0.5 : params.location; + this.endpointLoc = params.endpointLocation == null ? [ 0.5, 0.5] : params.endpointLocation; + this.visible = params.visible !== false; + }; + AbstractOverlay.prototype = { + cleanup: function (force) { + if (force) { + this.component = null; + this.canvas = null; + this.endpointLoc = null; + } + }, + reattach:function(instance, component) { }, + setVisible: function (val) { + this.visible = val; + this.component.repaint(); + }, + isVisible: function () { + return this.visible; + }, + hide: function () { + this.setVisible(false); + }, + show: function () { + this.setVisible(true); + }, + incrementLocation: function (amount) { + this.loc += amount; + this.component.repaint(); + }, + setLocation: function (l) { + this.loc = l; + this.component.repaint(); + }, + getLocation: function () { + return this.loc; + }, + updateFrom:function() { } + }; + + + /* + * Class: Overlays.Arrow + * + * An arrow overlay, defined by four points: the head, the two sides of the tail, and a 'foldback' point at some distance along the length + * of the arrow that lines from each tail point converge into. The foldback point is defined using a decimal that indicates some fraction + * of the length of the arrow and has a default value of 0.623. A foldback point value of 1 would mean that the arrow had a straight line + * across the tail. + */ + /* + * @constructor + * + * @param {Object} params Constructor params. + * @param {Number} [params.length] Distance in pixels from head to tail baseline. default 20. + * @param {Number} [params.width] Width in pixels of the tail baseline. default 20. + * @param {String} [params.fill] Style to use when filling the arrow. defaults to "black". + * @param {String} [params.stroke] Style to use when stroking the arrow. defaults to null, which means the arrow is not stroked. + * @param {Number} [params.stroke-width] Line width to use when stroking the arrow. defaults to 1, but only used if stroke is not null. + * @param {Number} [params.foldback] Distance (as a decimal from 0 to 1 inclusive) along the length of the arrow marking the point the tail points should fold back to. defaults to 0.623. + * @param {Number} [params.location] Distance (as a decimal from 0 to 1 inclusive) marking where the arrow should sit on the connector. defaults to 0.5. + * @param {NUmber} [params.direction] Indicates the direction the arrow points in. valid values are -1 and 1; 1 is default. + */ + _jp.Overlays.Arrow = function (params) { + this.type = "Arrow"; + AbstractOverlay.apply(this, arguments); + this.isAppendedAtTopLevel = false; + params = params || {}; + var self = this; + + this.length = params.length || 20; + this.width = params.width || 20; + this.id = params.id; + var direction = (params.direction || 1) < 0 ? -1 : 1, + paintStyle = params.paintStyle || { "stroke-width": 1 }, + // how far along the arrow the lines folding back in come to. default is 62.3%. + foldback = params.foldback || 0.623; + + this.computeMaxSize = function () { + return self.width * 1.5; + }; + + this.elementCreated = function(p, component) { + this.path = p; + if (params.events) { + for (var i in params.events) { + _jp.on(p, i, params.events[i]); + } + } + }; + + this.draw = function (component, currentConnectionPaintStyle) { + + var hxy, mid, txy, tail, cxy; + if (component.pointAlongPathFrom) { + + if (_ju.isString(this.loc) || this.loc > 1 || this.loc < 0) { + var l = parseInt(this.loc, 10), + fromLoc = this.loc < 0 ? 1 : 0; + hxy = component.pointAlongPathFrom(fromLoc, l, false); + mid = component.pointAlongPathFrom(fromLoc, l - (direction * this.length / 2), false); + txy = _jg.pointOnLine(hxy, mid, this.length); + } + else if (this.loc === 1) { + hxy = component.pointOnPath(this.loc); + mid = component.pointAlongPathFrom(this.loc, -(this.length)); + txy = _jg.pointOnLine(hxy, mid, this.length); + + if (direction === -1) { + var _ = txy; + txy = hxy; + hxy = _; + } + } + else if (this.loc === 0) { + txy = component.pointOnPath(this.loc); + mid = component.pointAlongPathFrom(this.loc, this.length); + hxy = _jg.pointOnLine(txy, mid, this.length); + if (direction === -1) { + var __ = txy; + txy = hxy; + hxy = __; + } + } + else { + hxy = component.pointAlongPathFrom(this.loc, direction * this.length / 2); + mid = component.pointOnPath(this.loc); + txy = _jg.pointOnLine(hxy, mid, this.length); + } + + tail = _jg.perpendicularLineTo(hxy, txy, this.width); + cxy = _jg.pointOnLine(hxy, txy, foldback * this.length); + + var d = { hxy: hxy, tail: tail, cxy: cxy }, + stroke = paintStyle.stroke || currentConnectionPaintStyle.stroke, + fill = paintStyle.fill || currentConnectionPaintStyle.stroke, + lineWidth = paintStyle.strokeWidth || currentConnectionPaintStyle.strokeWidth; + + return { + component: component, + d: d, + "stroke-width": lineWidth, + stroke: stroke, + fill: fill, + minX: Math.min(hxy.x, tail[0].x, tail[1].x), + maxX: Math.max(hxy.x, tail[0].x, tail[1].x), + minY: Math.min(hxy.y, tail[0].y, tail[1].y), + maxY: Math.max(hxy.y, tail[0].y, tail[1].y) + }; + } + else { + return {component: component, minX: 0, maxX: 0, minY: 0, maxY: 0}; + } + }; + }; + _ju.extend(_jp.Overlays.Arrow, AbstractOverlay, { + updateFrom:function(d) { + this.length = d.length || this.length; + this.width = d.width|| this.width; + this.direction = d.direction != null ? d.direction : this.direction; + this.foldback = d.foldback|| this.foldback; + }, + cleanup:function() { + if (this.path && this.canvas) { + this.canvas.removeChild(this.path); + } + } + }); + + /* + * Class: Overlays.PlainArrow + * + * A basic arrow. This is in fact just one instance of the more generic case in which the tail folds back on itself to some + * point along the length of the arrow: in this case, that foldback point is the full length of the arrow. so it just does + * a 'call' to Arrow with foldback set appropriately. + */ + /* + * Function: Constructor + * See <Overlays.Arrow> for allowed parameters for this overlay. + */ + _jp.Overlays.PlainArrow = function (params) { + params = params || {}; + var p = _jp.extend(params, {foldback: 1}); + _jp.Overlays.Arrow.call(this, p); + this.type = "PlainArrow"; + }; + _ju.extend(_jp.Overlays.PlainArrow, _jp.Overlays.Arrow); + + /* + * Class: Overlays.Diamond + * + * A diamond. Like PlainArrow, this is a concrete case of the more generic case of the tail points converging on some point...it just + * happens that in this case, that point is greater than the length of the the arrow. + * + * this could probably do with some help with positioning...due to the way it reuses the Arrow paint code, what Arrow thinks is the + * center is actually 1/4 of the way along for this guy. but we don't have any knowledge of pixels at this point, so we're kind of + * stuck when it comes to helping out the Arrow class. possibly we could pass in a 'transpose' parameter or something. the value + * would be -l/4 in this case - move along one quarter of the total length. + */ + /* + * Function: Constructor + * See <Overlays.Arrow> for allowed parameters for this overlay. + */ + _jp.Overlays.Diamond = function (params) { + params = params || {}; + var l = params.length || 40, + p = _jp.extend(params, {length: l / 2, foldback: 2}); + _jp.Overlays.Arrow.call(this, p); + this.type = "Diamond"; + }; + _ju.extend(_jp.Overlays.Diamond, _jp.Overlays.Arrow); + + var _getDimensions = function (component, forceRefresh) { + if (component._jsPlumb.cachedDimensions == null || forceRefresh) { + component._jsPlumb.cachedDimensions = component.getDimensions(); + } + return component._jsPlumb.cachedDimensions; + }; + + // abstract superclass for overlays that add an element to the DOM. + var AbstractDOMOverlay = function (params) { + _jp.jsPlumbUIComponent.apply(this, arguments); + AbstractOverlay.apply(this, arguments); + + // hand off fired events to associated component. + var _f = this.fire; + this.fire = function () { + _f.apply(this, arguments); + if (this.component) { + this.component.fire.apply(this.component, arguments); + } + }; + + this.detached=false; + this.id = params.id; + this._jsPlumb.div = null; + this._jsPlumb.initialised = false; + this._jsPlumb.component = params.component; + this._jsPlumb.cachedDimensions = null; + this._jsPlumb.create = params.create; + this._jsPlumb.initiallyInvisible = params.visible === false; + + this.getElement = function () { + if (this._jsPlumb.div == null) { + var div = this._jsPlumb.div = _jp.getElement(this._jsPlumb.create(this._jsPlumb.component)); + div.style.position = "absolute"; + jsPlumb.addClass(div, this._jsPlumb.instance.overlayClass + " " + + (this.cssClass ? this.cssClass : + params.cssClass ? params.cssClass : "")); + this._jsPlumb.instance.appendElement(div); + this._jsPlumb.instance.getId(div); + this.canvas = div; + + // in IE the top left corner is what it placed at the desired location. This will not + // be fixed. IE8 is not going to be supported for much longer. + var ts = "translate(-50%, -50%)"; + div.style.webkitTransform = ts; + div.style.mozTransform = ts; + div.style.msTransform = ts; + div.style.oTransform = ts; + div.style.transform = ts; + + // write the related component into the created element + div._jsPlumb = this; + + if (params.visible === false) { + div.style.display = "none"; + } + } + return this._jsPlumb.div; + }; + + this.draw = function (component, currentConnectionPaintStyle, absolutePosition) { + var td = _getDimensions(this); + if (td != null && td.length === 2) { + var cxy = { x: 0, y: 0 }; + + // absolutePosition would have been set by a call to connection.setAbsoluteOverlayPosition. + if (absolutePosition) { + cxy = { x: absolutePosition[0], y: absolutePosition[1] }; + } + else if (component.pointOnPath) { + var loc = this.loc, absolute = false; + if (_ju.isString(this.loc) || this.loc < 0 || this.loc > 1) { + loc = parseInt(this.loc, 10); + absolute = true; + } + cxy = component.pointOnPath(loc, absolute); // a connection + } + else { + var locToUse = this.loc.constructor === Array ? this.loc : this.endpointLoc; + cxy = { x: locToUse[0] * component.w, + y: locToUse[1] * component.h }; + } + + var minx = cxy.x - (td[0] / 2), + miny = cxy.y - (td[1] / 2); + + return { + component: component, + d: { minx: minx, miny: miny, td: td, cxy: cxy }, + minX: minx, + maxX: minx + td[0], + minY: miny, + maxY: miny + td[1] + }; + } + else { + return {minX: 0, maxX: 0, minY: 0, maxY: 0}; + } + }; + }; + _ju.extend(AbstractDOMOverlay, [_jp.jsPlumbUIComponent, AbstractOverlay], { + getDimensions: function () { + return [1,1]; + }, + setVisible: function (state) { + if (this._jsPlumb.div) { + this._jsPlumb.div.style.display = state ? "block" : "none"; + // if initially invisible, dimensions are 0,0 and never get updated + if (state && this._jsPlumb.initiallyInvisible) { + _getDimensions(this, true); + this.component.repaint(); + this._jsPlumb.initiallyInvisible = false; + } + } + }, + /* + * Function: clearCachedDimensions + * Clears the cached dimensions for the label. As a performance enhancement, label dimensions are + * cached from 1.3.12 onwards. The cache is cleared when you change the label text, of course, but + * there are other reasons why the text dimensions might change - if you make a change through CSS, for + * example, you might change the font size. in that case you should explicitly call this method. + */ + clearCachedDimensions: function () { + this._jsPlumb.cachedDimensions = null; + }, + cleanup: function (force) { + if (force) { + if (this._jsPlumb.div != null) { + this._jsPlumb.div._jsPlumb = null; + this._jsPlumb.instance.removeElement(this._jsPlumb.div); + } + } + else { + // if not a forced cleanup, just detach child from parent for now. + if (this._jsPlumb && this._jsPlumb.div && this._jsPlumb.div.parentNode) { + this._jsPlumb.div.parentNode.removeChild(this._jsPlumb.div); + } + this.detached = true; + } + + }, + reattach:function(instance, component) { + if (this._jsPlumb.div != null) { + instance.getContainer().appendChild(this._jsPlumb.div); + } + this.detached = false; + }, + computeMaxSize: function () { + var td = _getDimensions(this); + return Math.max(td[0], td[1]); + }, + paint: function (p, containerExtents) { + if (!this._jsPlumb.initialised) { + this.getElement(); + p.component.appendDisplayElement(this._jsPlumb.div); + this._jsPlumb.initialised = true; + if (this.detached) { + this._jsPlumb.div.parentNode.removeChild(this._jsPlumb.div); + } + } + this._jsPlumb.div.style.left = (p.component.x + p.d.minx) + "px"; + this._jsPlumb.div.style.top = (p.component.y + p.d.miny) + "px"; + } + }); + + /* + * Class: Overlays.Custom + * A Custom overlay. You supply a 'create' function which returns some DOM element, and jsPlumb positions it. + * The 'create' function is passed a Connection or Endpoint. + */ + /* + * Function: Constructor + * + * Parameters: + * create - function for jsPlumb to call that returns a DOM element. + * location - distance (as a decimal from 0 to 1 inclusive) marking where the label should sit on the connector. defaults to 0.5. + * id - optional id to use for later retrieval of this overlay. + * + */ + _jp.Overlays.Custom = function (params) { + this.type = "Custom"; + AbstractDOMOverlay.apply(this, arguments); + }; + _ju.extend(_jp.Overlays.Custom, AbstractDOMOverlay); + + _jp.Overlays.GuideLines = function () { + var self = this; + self.length = 50; + self.strokeWidth = 5; + this.type = "GuideLines"; + AbstractOverlay.apply(this, arguments); + _jp.jsPlumbUIComponent.apply(this, arguments); + this.draw = function (connector, currentConnectionPaintStyle) { + + var head = connector.pointAlongPathFrom(self.loc, self.length / 2), + mid = connector.pointOnPath(self.loc), + tail = _jg.pointOnLine(head, mid, self.length), + tailLine = _jg.perpendicularLineTo(head, tail, 40), + headLine = _jg.perpendicularLineTo(tail, head, 20); + + return { + connector: connector, + head: head, + tail: tail, + headLine: headLine, + tailLine: tailLine, + minX: Math.min(head.x, tail.x, headLine[0].x, headLine[1].x), + minY: Math.min(head.y, tail.y, headLine[0].y, headLine[1].y), + maxX: Math.max(head.x, tail.x, headLine[0].x, headLine[1].x), + maxY: Math.max(head.y, tail.y, headLine[0].y, headLine[1].y) + }; + }; + + // this.cleanup = function() { }; // nothing to clean up for GuideLines + }; + + /* + * Class: Overlays.Label + + */ + /* + * Function: Constructor + * + * Parameters: + * cssClass - optional css class string to append to css class. This string is appended "as-is", so you can of course have multiple classes + * defined. This parameter is preferred to using labelStyle, borderWidth and borderStyle. + * label - the label to paint. May be a string or a function that returns a string. Nothing will be painted if your label is null or your + * label function returns null. empty strings _will_ be painted. + * location - distance (as a decimal from 0 to 1 inclusive) marking where the label should sit on the connector. defaults to 0.5. + * id - optional id to use for later retrieval of this overlay. + * + * + */ + _jp.Overlays.Label = function (params) { + this.labelStyle = params.labelStyle; + + var labelWidth = null, labelHeight = null, labelText = null, labelPadding = null; + this.cssClass = this.labelStyle != null ? this.labelStyle.cssClass : null; + var p = _jp.extend({ + create: function () { + return _jp.createElement("div"); + }}, params); + _jp.Overlays.Custom.call(this, p); + this.type = "Label"; + this.label = params.label || ""; + this.labelText = null; + if (this.labelStyle) { + var el = this.getElement(); + this.labelStyle.font = this.labelStyle.font || "12px sans-serif"; + el.style.font = this.labelStyle.font; + el.style.color = this.labelStyle.color || "black"; + if (this.labelStyle.fill) { + el.style.background = this.labelStyle.fill; + } + if (this.labelStyle.borderWidth > 0) { + var dStyle = this.labelStyle.borderStyle ? this.labelStyle.borderStyle : "black"; + el.style.border = this.labelStyle.borderWidth + "px solid " + dStyle; + } + if (this.labelStyle.padding) { + el.style.padding = this.labelStyle.padding; + } + } + + }; + _ju.extend(_jp.Overlays.Label, _jp.Overlays.Custom, { + cleanup: function (force) { + if (force) { + this.div = null; + this.label = null; + this.labelText = null; + this.cssClass = null; + this.labelStyle = null; + } + }, + getLabel: function () { + return this.label; + }, + /* + * Function: setLabel + * sets the label's, um, label. you would think i'd call this function + * 'setText', but you can pass either a Function or a String to this, so + * it makes more sense as 'setLabel'. This uses innerHTML on the label div, so keep + * that in mind if you need escaped HTML. + */ + setLabel: function (l) { + this.label = l; + this.labelText = null; + this.clearCachedDimensions(); + this.update(); + this.component.repaint(); + }, + getDimensions: function () { + this.update(); + return AbstractDOMOverlay.prototype.getDimensions.apply(this, arguments); + }, + update: function () { + if (typeof this.label === "function") { + var lt = this.label(this); + this.getElement().innerHTML = lt.replace(/\r\n/g, "<br/>"); + } + else { + if (this.labelText == null) { + this.labelText = this.label; + this.getElement().innerHTML = this.labelText.replace(/\r\n/g, "<br/>"); + } + } + }, + updateFrom:function(d) { + if(d.label != null){ + this.setLabel(d.label); + } + } + }); + + // ********************************* END OF OVERLAY DEFINITIONS *********************************************************************** + +}).call(typeof window !== 'undefined' ? window : this); + +/* + * Copyright (c) 2010 - 2018 jsPlumb (hello@jsplumbtoolkit.com) + * + * https://jsplumbtoolkit.com + * https://github.com/jsplumb/jsplumb + * + * Dual licensed under the MIT and GPL2 licenses. + */ +;(function() { + "use strict"; + + var root = this, + _ju = root.jsPlumbUtil, + _jpi = root.jsPlumbInstance; + + var GROUP_COLLAPSED_CLASS = "jtk-group-collapsed"; + var GROUP_EXPANDED_CLASS = "jtk-group-expanded"; + var GROUP_CONTAINER_SELECTOR = "[jtk-group-content]"; + var ELEMENT_DRAGGABLE_EVENT = "elementDraggable"; + var STOP = "stop"; + var REVERT = "revert"; + var GROUP_MANAGER = "_groupManager"; + var GROUP = "_jsPlumbGroup"; + var GROUP_DRAG_SCOPE = "_jsPlumbGroupDrag"; + var EVT_CHILD_ADDED = "group:addMember"; + var EVT_CHILD_REMOVED = "group:removeMember"; + var EVT_GROUP_ADDED = "group:add"; + var EVT_GROUP_REMOVED = "group:remove"; + var EVT_EXPAND = "group:expand"; + var EVT_COLLAPSE = "group:collapse"; + var EVT_GROUP_DRAG_STOP = "groupDragStop"; + var EVT_CONNECTION_MOVED = "connectionMoved"; + var EVT_INTERNAL_CONNECTION_DETACHED = "internal.connectionDetached"; + + var CMD_REMOVE_ALL = "removeAll"; + var CMD_ORPHAN_ALL = "orphanAll"; + var CMD_SHOW = "show"; + var CMD_HIDE = "hide"; + + var GroupManager = function(_jsPlumb) { + var _managedGroups = {}, _connectionSourceMap = {}, _connectionTargetMap = {}, self = this; + + _jsPlumb.bind("connection", function(p) { + if (p.source[GROUP] != null && p.target[GROUP] != null && p.source[GROUP] === p.target[GROUP]) { + _connectionSourceMap[p.connection.id] = p.source[GROUP]; + _connectionTargetMap[p.connection.id] = p.source[GROUP]; + } + else { + if (p.source[GROUP] != null) { + _ju.suggest(p.source[GROUP].connections.source, p.connection); + _connectionSourceMap[p.connection.id] = p.source[GROUP]; + } + if (p.target[GROUP] != null) { + _ju.suggest(p.target[GROUP].connections.target, p.connection); + _connectionTargetMap[p.connection.id] = p.target[GROUP]; + } + } + }); + + function _cleanupDetachedConnection(conn) { + delete conn.proxies; + var group = _connectionSourceMap[conn.id], f; + if (group != null) { + f = function(c) { return c.id === conn.id; }; + _ju.removeWithFunction(group.connections.source, f); + _ju.removeWithFunction(group.connections.target, f); + delete _connectionSourceMap[conn.id]; + } + + group = _connectionTargetMap[conn.id]; + if (group != null) { + f = function(c) { return c.id === conn.id; }; + _ju.removeWithFunction(group.connections.source, f); + _ju.removeWithFunction(group.connections.target, f); + delete _connectionTargetMap[conn.id]; + } + } + + _jsPlumb.bind(EVT_INTERNAL_CONNECTION_DETACHED, function(p) { + _cleanupDetachedConnection(p.connection); + }); + + _jsPlumb.bind(EVT_CONNECTION_MOVED, function(p) { + var connMap = p.index === 0 ? _connectionSourceMap : _connectionTargetMap; + var group = connMap[p.connection.id]; + if (group) { + var list = group.connections[p.index === 0 ? "source" : "target"]; + var idx = list.indexOf(p.connection); + if (idx !== -1) { + list.splice(idx, 1); + } + } + }); + + this.addGroup = function(group) { + _jsPlumb.addClass(group.getEl(), GROUP_EXPANDED_CLASS); + _managedGroups[group.id] = group; + group.manager = this; + _updateConnectionsForGroup(group); + _jsPlumb.fire(EVT_GROUP_ADDED, { group:group }); + }; + + this.addToGroup = function(group, el, doNotFireEvent) { + group = this.getGroup(group); + if (group) { + var groupEl = group.getEl(); + + if (el._isJsPlumbGroup) { + return; + } + var currentGroup = el._jsPlumbGroup; + // if already a member of this group, do nothing + if (currentGroup !== group) { + var elpos = _jsPlumb.getOffset(el, true); + var cpos = group.collapsed ? _jsPlumb.getOffset(groupEl, true) : _jsPlumb.getOffset(group.getDragArea(), true); + + // otherwise, transfer to this group. + if (currentGroup != null) { + currentGroup.remove(el, false, doNotFireEvent, false, group); + self.updateConnectionsForGroup(currentGroup); + } + group.add(el, doNotFireEvent/*, currentGroup*/); + + var handleDroppedConnections = function (list, index) { + var oidx = index === 0 ? 1 : 0; + list.each(function (c) { + c.setVisible(false); + if (c.endpoints[oidx].element._jsPlumbGroup === group) { + c.endpoints[oidx].setVisible(false); + self.expandConnection(c, oidx, group); + } + else { + c.endpoints[index].setVisible(false); + self.collapseConnection(c, index, group); + } + }); + }; + + if (group.collapsed) { + handleDroppedConnections(_jsPlumb.select({source: el}), 0); + handleDroppedConnections(_jsPlumb.select({target: el}), 1); + } + + var elId = _jsPlumb.getId(el); + _jsPlumb.dragManager.setParent(el, elId, groupEl, _jsPlumb.getId(groupEl), elpos); + + var newPosition = { left: elpos.left - cpos.left, top: elpos.top - cpos.top }; + + _jsPlumb.setPosition(el, newPosition); + + _jsPlumb.dragManager.revalidateParent(el, elId, elpos); + + self.updateConnectionsForGroup(group); + + _jsPlumb.revalidate(elId); + + if (!doNotFireEvent) { + var p = {group: group, el: el, pos:newPosition}; + if (currentGroup) { + p.sourceGroup = currentGroup; + } + _jsPlumb.fire(EVT_CHILD_ADDED, p); + } + } + } + }; + + this.removeFromGroup = function(group, el, doNotFireEvent) { + group = this.getGroup(group); + if (group) { + group.remove(el, null, doNotFireEvent); + } + }; + + this.getGroup = function(groupId) { + var group = groupId; + if (_ju.isString(groupId)) { + group = _managedGroups[groupId]; + if (group == null) { + throw new TypeError("No such group [" + groupId + "]"); + } + } + return group; + }; + + this.getGroups = function() { + var o = []; + for (var g in _managedGroups) { + o.push(_managedGroups[g]); + } + return o; + }; + + this.removeGroup = function(group, deleteMembers, manipulateDOM, doNotFireEvent) { + group = this.getGroup(group); + this.expandGroup(group, true); // this reinstates any original connections and removes all proxies, but does not fire an event. + var newPositions = group[deleteMembers ? CMD_REMOVE_ALL : CMD_ORPHAN_ALL](manipulateDOM, doNotFireEvent); + _jsPlumb.remove(group.getEl()); + delete _managedGroups[group.id]; + delete _jsPlumb._groups[group.id]; + _jsPlumb.fire(EVT_GROUP_REMOVED, { group:group }); + return newPositions; // this will be null in the case or remove, but be a map of {id->[x,y]} in the case of orphan + }; + + this.removeAllGroups = function(deleteMembers, manipulateDOM, doNotFireEvent) { + for (var g in _managedGroups) { + this.removeGroup(_managedGroups[g], deleteMembers, manipulateDOM, doNotFireEvent); + } + }; + + function _setVisible(group, state) { + var m = group.getMembers(); + for (var i = 0; i < m.length; i++) { + _jsPlumb[state ? CMD_SHOW : CMD_HIDE](m[i], true); + } + } + + var _collapseConnection = this.collapseConnection = function(c, index, group) { + + var proxyEp, groupEl = group.getEl(), groupElId = _jsPlumb.getId(groupEl), + originalElementId = c.endpoints[index].elementId; + + var otherEl = c.endpoints[index === 0 ? 1 : 0].element; + if (otherEl[GROUP] && (!otherEl[GROUP].shouldProxy() && otherEl[GROUP].collapsed)) { + return; + } + + c.proxies = c.proxies || []; + if(c.proxies[index]) { + proxyEp = c.proxies[index].ep; + }else { + proxyEp = _jsPlumb.addEndpoint(groupEl, { + endpoint:group.getEndpoint(c, index), + anchor:group.getAnchor(c, index), + parameters:{ + isProxyEndpoint:true + } + }); + } + proxyEp.setDeleteOnEmpty(true); + + // for this index, stash proxy info: the new EP, the original EP. + c.proxies[index] = { ep:proxyEp, originalEp: c.endpoints[index] }; + + // and advise the anchor manager + if (index === 0) { + // TODO why are there two differently named methods? Why is there not one method that says "some end of this + // connection changed (you give the index), and here's the new element and element id." + _jsPlumb.anchorManager.sourceChanged(originalElementId, groupElId, c, groupEl); + } + else { + _jsPlumb.anchorManager.updateOtherEndpoint(c.endpoints[0].elementId, originalElementId, groupElId, c); + c.target = groupEl; + c.targetId = groupElId; + } + + + // detach the original EP from the connection. + c.proxies[index].originalEp.detachFromConnection(c, null, true); + + // set the proxy as the new ep + proxyEp.connections = [ c ]; + c.endpoints[index] = proxyEp; + + c.setVisible(true); + }; + + this.collapseGroup = function(group) { + group = this.getGroup(group); + if (group == null || group.collapsed) { + return; + } + var groupEl = group.getEl(); + + // todo remove old proxy endpoints first, just in case? + //group.proxies.length = 0; + + // hide all connections + _setVisible(group, false); + + if (group.shouldProxy()) { + // collapses all connections in a group. + var _collapseSet = function (conns, index) { + for (var i = 0; i < conns.length; i++) { + var c = conns[i]; + _collapseConnection(c, index, group); + } + }; + + // setup proxies for sources and targets + _collapseSet(group.connections.source, 0); + _collapseSet(group.connections.target, 1); + } + + group.collapsed = true; + _jsPlumb.removeClass(groupEl, GROUP_EXPANDED_CLASS); + _jsPlumb.addClass(groupEl, GROUP_COLLAPSED_CLASS); + _jsPlumb.revalidate(groupEl); + _jsPlumb.fire(EVT_COLLAPSE, { group:group }); + }; + + var _expandConnection = this.expandConnection = function(c, index, group) { + + // if no proxies or none for this end of the connection, abort. + if (c.proxies == null || c.proxies[index] == null) { + return; + } + + var groupElId = _jsPlumb.getId(group.getEl()), + originalElement = c.proxies[index].originalEp.element, + originalElementId = c.proxies[index].originalEp.elementId; + + c.endpoints[index] = c.proxies[index].originalEp; + // and advise the anchor manager + if (index === 0) { + // TODO why are there two differently named methods? Why is there not one method that says "some end of this + // connection changed (you give the index), and here's the new element and element id." + _jsPlumb.anchorManager.sourceChanged(groupElId, originalElementId, c, originalElement); + } + else { + _jsPlumb.anchorManager.updateOtherEndpoint(c.endpoints[0].elementId, groupElId, originalElementId, c); + c.target = originalElement; + c.targetId = originalElementId; + } + + // detach the proxy EP from the connection (which will cause it to be removed as we no longer need it) + c.proxies[index].ep.detachFromConnection(c, null); + + c.proxies[index].originalEp.addConnection(c); + + // cleanup + delete c.proxies[index]; + }; + + this.expandGroup = function(group, doNotFireEvent) { + + group = this.getGroup(group); + + if (group == null || !group.collapsed) { + return; + } + var groupEl = group.getEl(); + + _setVisible(group, true); + + if (group.shouldProxy()) { + // collapses all connections in a group. + var _expandSet = function (conns, index) { + for (var i = 0; i < conns.length; i++) { + var c = conns[i]; + _expandConnection(c, index, group); + } + }; + + // setup proxies for sources and targets + _expandSet(group.connections.source, 0); + _expandSet(group.connections.target, 1); + } + + group.collapsed = false; + _jsPlumb.addClass(groupEl, GROUP_EXPANDED_CLASS); + _jsPlumb.removeClass(groupEl, GROUP_COLLAPSED_CLASS); + _jsPlumb.revalidate(groupEl); + this.repaintGroup(group); + if (!doNotFireEvent) { + _jsPlumb.fire(EVT_EXPAND, { group: group}); + } + }; + + this.repaintGroup = function(group) { + group = this.getGroup(group); + var m = group.getMembers(); + for (var i = 0; i < m.length; i++) { + _jsPlumb.revalidate(m[i]); + } + }; + + // TODO refactor this with the code that responds to `connection` events. + function _updateConnectionsForGroup(group) { + var members = group.getMembers(); + var c1 = _jsPlumb.getConnections({source:members, scope:"*"}, true); + var c2 = _jsPlumb.getConnections({target:members, scope:"*"}, true); + var processed = {}; + group.connections.source.length = 0; + group.connections.target.length = 0; + var oneSet = function(c) { + for (var i = 0; i < c.length; i++) { + if (processed[c[i].id]) { + continue; + } + processed[c[i].id] = true; + if (c[i].source._jsPlumbGroup === group) { + if (c[i].target._jsPlumbGroup !== group) { + group.connections.source.push(c[i]); + } + _connectionSourceMap[c[i].id] = group; + } + else if (c[i].target._jsPlumbGroup === group) { + group.connections.target.push(c[i]); + _connectionTargetMap[c[i].id] = group; + } + } + }; + oneSet(c1); oneSet(c2); + } + + this.updateConnectionsForGroup = _updateConnectionsForGroup; + this.refreshAllGroups = function() { + for (var g in _managedGroups) { + _updateConnectionsForGroup(_managedGroups[g]); + _jsPlumb.dragManager.updateOffsets(_jsPlumb.getId(_managedGroups[g].getEl())); + } + }; + }; + + /** + * + * @param {jsPlumbInstance} _jsPlumb Associated jsPlumb instance. + * @param {Object} params + * @param {Element} params.el The DOM element representing the Group. + * @param {String} [params.id] Optional ID for the Group. A UUID will be assigned as the Group's ID if you do not provide one. + * @param {Boolean} [params.constrain=false] If true, child elements will not be able to be dragged outside of the Group container. + * @param {Boolean} [params.revert=true] By default, child elements revert to the container if dragged outside. You can change this by setting `revert:false`. This behaviour is also overridden if you set `orphan` or `prune`. + * @param {Boolean} [params.orphan=false] If true, child elements dropped outside of the Group container will be removed from the Group (but not from the DOM). + * @param {Boolean} [params.prune=false] If true, child elements dropped outside of the Group container will be removed from the Group and also from the DOM. + * @param {Boolean} [params.dropOverride=false] If true, a child element that has been dropped onto some other Group will not be subject to the controls imposed by `prune`, `revert` or `orphan`. + * @constructor + */ + var Group = function(_jsPlumb, params) { + var self = this; + var el = params.el; + this.getEl = function() { return el; }; + this.id = params.id || _ju.uuid(); + el._isJsPlumbGroup = true; + + var getDragArea = this.getDragArea = function() { + var da = _jsPlumb.getSelector(el, GROUP_CONTAINER_SELECTOR); + return da && da.length > 0 ? da[0] : el; + }; + + var ghost = params.ghost === true; + var constrain = ghost || (params.constrain === true); + var revert = params.revert !== false; + var orphan = params.orphan === true; + var prune = params.prune === true; + var dropOverride = params.dropOverride === true; + var proxied = params.proxied !== false; + var elements = []; + this.connections = { source:[], target:[], internal:[] }; + + // this function, and getEndpoint below, are stubs for a future setup in which we can choose endpoint + // and anchor based upon the connection and the index (source/target) of the endpoint to be proxied. + this.getAnchor = function(conn, endpointIndex) { + return params.anchor || "Continuous"; + }; + + this.getEndpoint = function(conn, endpointIndex) { + return params.endpoint || [ "Dot", { radius:10 }]; + }; + + this.collapsed = false; + if (params.draggable !== false) { + var opts = { + stop:function(params) { + _jsPlumb.fire(EVT_GROUP_DRAG_STOP, jsPlumb.extend(params, {group:self})); + }, + scope:GROUP_DRAG_SCOPE + }; + if (params.dragOptions) { + root.jsPlumb.extend(opts, params.dragOptions); + } + _jsPlumb.draggable(params.el, opts); + } + if (params.droppable !== false) { + _jsPlumb.droppable(params.el, { + drop:function(p) { + var el = p.drag.el; + if (el._isJsPlumbGroup) { + return; + } + var currentGroup = el._jsPlumbGroup; + if (currentGroup !== self) { + if (currentGroup != null) { + if (currentGroup.overrideDrop(el, self)) { + return; + } + } + _jsPlumb.getGroupManager().addToGroup(self, el, false); + } + + } + }); + } + var _each = function(_el, fn) { + var els = _el.nodeType == null ? _el : [ _el ]; + for (var i = 0; i < els.length; i++) { + fn(els[i]); + } + }; + + this.overrideDrop = function(_el, targetGroup) { + return dropOverride && (revert || prune || orphan); + }; + + this.add = function(_el, doNotFireEvent/*, sourceGroup*/) { + var dragArea = getDragArea(); + _each(_el, function(__el) { + + if (__el._jsPlumbGroup != null) { + if (__el._jsPlumbGroup === self) { + return; + } else { + __el._jsPlumbGroup.remove(__el, true, doNotFireEvent, false); + } + } + + __el._jsPlumbGroup = self; + elements.push(__el); + // test if draggable and add handlers if so. + if (_jsPlumb.isAlreadyDraggable(__el)) { + _bindDragHandlers(__el); + } + + if (__el.parentNode !== dragArea) { + dragArea.appendChild(__el); + } + + // if (!doNotFireEvent) { + // var p = {group: self, el: __el}; + // if (sourceGroup) { + // p.sourceGroup = sourceGroup; + // } + // //_jsPlumb.fire(EVT_CHILD_ADDED, p); + // } + }); + + _jsPlumb.getGroupManager().updateConnectionsForGroup(self); + }; + + this.remove = function(el, manipulateDOM, doNotFireEvent, doNotUpdateConnections, targetGroup) { + + _each(el, function(__el) { + delete __el._jsPlumbGroup; + _ju.removeWithFunction(elements, function(e) { + return e === __el; + }); + + if (manipulateDOM) { + try { self.getDragArea().removeChild(__el); } + catch (e) { + jsPlumbUtil.log("Could not remove element from Group " + e); + } + } + _unbindDragHandlers(__el); + if (!doNotFireEvent) { + var p = {group: self, el: __el}; + if (targetGroup) { + p.targetGroup = targetGroup; + } + _jsPlumb.fire(EVT_CHILD_REMOVED, p); + } + }); + if (!doNotUpdateConnections) { + _jsPlumb.getGroupManager().updateConnectionsForGroup(self); + } + }; + this.removeAll = function(manipulateDOM, doNotFireEvent) { + for (var i = 0, l = elements.length; i < l; i++) { + var el = elements[0]; + self.remove(el, manipulateDOM, doNotFireEvent, true); + _jsPlumb.remove(el, true); + } + elements.length = 0; + _jsPlumb.getGroupManager().updateConnectionsForGroup(self); + }; + this.orphanAll = function() { + var orphanedPositions = {}; + for (var i = 0; i < elements.length; i++) { + var newPosition = _orphan(elements[i]); + orphanedPositions[newPosition[0]] = newPosition[1]; + } + elements.length = 0; + + return orphanedPositions; + }; + this.getMembers = function() { return elements; }; + + el[GROUP] = this; + + _jsPlumb.bind(ELEMENT_DRAGGABLE_EVENT, function(dragParams) { + // if its for the current group, + if (dragParams.el._jsPlumbGroup === this) { + _bindDragHandlers(dragParams.el); + } + }.bind(this)); + + function _findParent(_el) { + return _el.offsetParent; + } + + function _isInsideParent(_el, pos) { + var p = _findParent(_el), + s = _jsPlumb.getSize(p), + ss = _jsPlumb.getSize(_el), + leftEdge = pos[0], + rightEdge = leftEdge + ss[0], + topEdge = pos[1], + bottomEdge = topEdge + ss[1]; + + return rightEdge > 0 && leftEdge < s[0] && bottomEdge > 0 && topEdge < s[1]; + } + + // + // orphaning an element means taking it out of the group and adding it to the main jsplumb container. + // we return the new calculated position from this method and the element's id. + // + function _orphan(_el) { + var id = _jsPlumb.getId(_el); + var pos = _jsPlumb.getOffset(_el); + _el.parentNode.removeChild(_el); + _jsPlumb.getContainer().appendChild(_el); + _jsPlumb.setPosition(_el, pos); + delete _el._jsPlumbGroup; + _unbindDragHandlers(_el); + _jsPlumb.dragManager.clearParent(_el, id); + return [id, pos]; + } + + // + // remove an element from the group, then either prune it from the jsplumb instance, or just orphan it. + // + function _pruneOrOrphan(p) { + var orphanedPosition = null; + if (!_isInsideParent(p.el, p.pos)) { + var group = p.el._jsPlumbGroup; + if (prune) { + _jsPlumb.remove(p.el); + } else { + orphanedPosition = _orphan(p.el); + } + + group.remove(p.el); + } + + return orphanedPosition; + } + + // + // redraws the element + // + function _revalidate(_el) { + var id = _jsPlumb.getId(_el); + _jsPlumb.revalidate(_el); + _jsPlumb.dragManager.revalidateParent(_el, id); + } + + // + // unbind the group specific drag/revert handlers. + // + function _unbindDragHandlers(_el) { + if (!_el._katavorioDrag) { + return; + } + if (prune || orphan) { + _el._katavorioDrag.off(STOP, _pruneOrOrphan); + } + if (!prune && !orphan && revert) { + _el._katavorioDrag.off(REVERT, _revalidate); + _el._katavorioDrag.setRevert(null); + } + } + + function _bindDragHandlers(_el) { + if (!_el._katavorioDrag) { + return; + } + if (prune || orphan) { + _el._katavorioDrag.on(STOP, _pruneOrOrphan); + } + + if (constrain) { + _el._katavorioDrag.setConstrain(true); + } + + if (ghost) { + _el._katavorioDrag.setUseGhostProxy(true); + } + + if (!prune && !orphan && revert) { + _el._katavorioDrag.on(REVERT, _revalidate); + _el._katavorioDrag.setRevert(function(__el, pos) { + return !_isInsideParent(__el, pos); + }); + } + } + + this.shouldProxy = function() { + return proxied; + }; + + _jsPlumb.getGroupManager().addGroup(this); + }; + + /** + * Adds a group to the jsPlumb instance. + * @method addGroup + * @param {Object} params + * @return {Group} The newly created Group. + */ + _jpi.prototype.addGroup = function(params) { + var j = this; + j._groups = j._groups || {}; + if (j._groups[params.id] != null) { + throw new TypeError("cannot create Group [" + params.id + "]; a Group with that ID exists"); + } + if (params.el[GROUP] != null) { + throw new TypeError("cannot create Group [" + params.id + "]; the given element is already a Group"); + } + var group = new Group(j, params); + j._groups[group.id] = group; + if (params.collapsed) { + this.collapseGroup(group); + } + return group; + }; + + /** + * Add an element to a group. + * @method addToGroup + * @param {String} group Group, or ID of the group, to add the element to. + * @param {Element} el Element to add to the group. + */ + _jpi.prototype.addToGroup = function(group, el, doNotFireEvent) { + + var _one = function(_el) { + var id = this.getId(_el); + this.manage(id, _el); + this.getGroupManager().addToGroup(group, _el, doNotFireEvent); + }.bind(this); + + if (Array.isArray(el)) { + for (var i = 0; i < el.length; i++) { + _one(el[i]); + } + } else { + _one(el); + } + }; + + /** + * Remove an element from a group. + * @method removeFromGroup + * @param {String} group Group, or ID of the group, to remove the element from. + * @param {Element} el Element to add to the group. + */ + _jpi.prototype.removeFromGroup = function(group, el, doNotFireEvent) { + this.getGroupManager().removeFromGroup(group, el, doNotFireEvent); + }; + + /** + * Remove a group, and optionally remove its members from the jsPlumb instance. + * @method removeGroup + * @param {String|Group} group Group to delete, or ID of Group to delete. + * @param {Boolean} [deleteMembers=false] If true, group members will be removed along with the group. Otherwise they will + * just be 'orphaned' (returned to the main container). + * @returns {Map[String, Position}} When deleteMembers is false, this method returns a map of {id->position} + */ + _jpi.prototype.removeGroup = function(group, deleteMembers, manipulateDOM, doNotFireEvent) { + return this.getGroupManager().removeGroup(group, deleteMembers, manipulateDOM, doNotFireEvent); + }; + + /** + * Remove all groups, and optionally remove their members from the jsPlumb instance. + * @method removeAllGroup + * @param {Boolean} [deleteMembers=false] If true, group members will be removed along with the groups. Otherwise they will + * just be 'orphaned' (returned to the main container). + */ + _jpi.prototype.removeAllGroups = function(deleteMembers, manipulateDOM, doNotFireEvent) { + this.getGroupManager().removeAllGroups(deleteMembers, manipulateDOM, doNotFireEvent); + }; + + /** + * Get a Group + * @method getGroup + * @param {String} groupId ID of the group to get + * @return {Group} Group with the given ID, null if not found. + */ + _jpi.prototype.getGroup = function(groupId) { + return this.getGroupManager().getGroup(groupId); + }; + + /** + * Gets all the Groups managed by the jsPlumb instance. + * @returns {Group[]} List of Groups. Empty if none. + */ + _jpi.prototype.getGroups = function() { + return this.getGroupManager().getGroups(); + }; + + /** + * Expands a group element. jsPlumb doesn't do "everything" for you here, because what it means to expand a Group + * will vary from application to application. jsPlumb does these things: + * + * - Hides any connections that are internal to the group (connections between members, and connections from member of + * the group to the group itself) + * - Proxies all connections for which the source or target is a member of the group. + * - Hides the proxied connections. + * - Adds the jtk-group-expanded class to the group's element + * - Removes the jtk-group-collapsed class from the group's element. + * + * @method expandGroup + * @param {String|Group} group Group to expand, or ID of Group to expand. + */ + _jpi.prototype.expandGroup = function(group) { + this.getGroupManager().expandGroup(group); + }; + + /** + * Collapses a group element. jsPlumb doesn't do "everything" for you here, because what it means to collapse a Group + * will vary from application to application. jsPlumb does these things: + * + * - Shows any connections that are internal to the group (connections between members, and connections from member of + * the group to the group itself) + * - Removes proxies for all connections for which the source or target is a member of the group. + * - Shows the previously proxied connections. + * - Adds the jtk-group-collapsed class to the group's element + * - Removes the jtk-group-expanded class from the group's element. + * + * @method expandGroup + * @param {String|Group} group Group to expand, or ID of Group to expand. + */ + _jpi.prototype.collapseGroup = function(groupId) { + this.getGroupManager().collapseGroup(groupId); + }; + + + _jpi.prototype.repaintGroup = function(group) { + this.getGroupManager().repaintGroup(group); + }; + + /** + * Collapses or expands a group element depending on its current state. See notes in the collapseGroup and expandGroup method. + * + * @method toggleGroup + * @param {String|Group} group Group to expand/collapse, or ID of Group to expand/collapse. + */ + _jpi.prototype.toggleGroup = function(group) { + group = this.getGroupManager().getGroup(group); + if (group != null) { + this.getGroupManager()[group.collapsed ? "expandGroup" : "collapseGroup"](group); + } + }; + + // + // lazy init a group manager for the given jsplumb instance. + // + _jpi.prototype.getGroupManager = function() { + var mgr = this[GROUP_MANAGER]; + if (mgr == null) { + mgr = this[GROUP_MANAGER] = new GroupManager(this); + } + return mgr; + }; + + _jpi.prototype.removeGroupManager = function() { + delete this[GROUP_MANAGER]; + }; + + /** + * Gets the Group that the given element belongs to, null if none. + * @method getGroupFor + * @param {String|Element} el Element, or element ID. + * @returns {Group} A Group, if found, or null. + */ + _jpi.prototype.getGroupFor = function(el) { + el = this.getElement(el); + if (el) { + return el[GROUP]; + } + }; + +}).call(typeof window !== 'undefined' ? window : this); + + +/* + * This file contains the 'flowchart' connectors, consisting of vertical and horizontal line segments. + * + * Copyright (c) 2010 - 2018 jsPlumb (hello@jsplumbtoolkit.com) + * + * https://jsplumbtoolkit.com + * https://github.com/jsplumb/jsplumb + * + * Dual licensed under the MIT and GPL2 licenses. + */ +; +(function () { + + "use strict"; + var root = this, _jp = root.jsPlumb, _ju = root.jsPlumbUtil; + var STRAIGHT = "Straight"; + var ARC = "Arc"; + + var Flowchart = function (params) { + this.type = "Flowchart"; + params = params || {}; + params.stub = params.stub == null ? 30 : params.stub; + var segments, + _super = _jp.Connectors.AbstractConnector.apply(this, arguments), + midpoint = params.midpoint == null ? 0.5 : params.midpoint, + alwaysRespectStubs = params.alwaysRespectStubs === true, + lastx = null, lasty = null, lastOrientation, + cornerRadius = params.cornerRadius != null ? params.cornerRadius : 0, + + // TODO now common between this and AbstractBezierEditor; refactor into superclass? + loopbackRadius = params.loopbackRadius || 25, + isLoopbackCurrently = false, + + sgn = function (n) { + return n < 0 ? -1 : n === 0 ? 0 : 1; + }, + segmentDirections = function(segment) { + return [ + sgn( segment[2] - segment[0] ), + sgn( segment[3] - segment[1] ) + ]; + }, + /** + * helper method to add a segment. + */ + addSegment = function (segments, x, y, paintInfo) { + if (lastx === x && lasty === y) { + return; + } + var lx = lastx == null ? paintInfo.sx : lastx, + ly = lasty == null ? paintInfo.sy : lasty, + o = lx === x ? "v" : "h"; + + lastx = x; + lasty = y; + segments.push([ lx, ly, x, y, o ]); + }, + segLength = function (s) { + return Math.sqrt(Math.pow(s[0] - s[2], 2) + Math.pow(s[1] - s[3], 2)); + }, + _cloneArray = function (a) { + var _a = []; + _a.push.apply(_a, a); + return _a; + }, + writeSegments = function (conn, segments, paintInfo) { + var current = null, next, currentDirection, nextDirection; + for (var i = 0; i < segments.length - 1; i++) { + + current = current || _cloneArray(segments[i]); + next = _cloneArray(segments[i + 1]); + + currentDirection = segmentDirections(current); + nextDirection = segmentDirections(next); + + if (cornerRadius > 0 && current[4] !== next[4]) { + + var minSegLength = Math.min(segLength(current), segLength(next)); + var radiusToUse = Math.min(cornerRadius, minSegLength / 2); + + current[2] -= currentDirection[0] * radiusToUse; + current[3] -= currentDirection[1] * radiusToUse; + next[0] += nextDirection[0] * radiusToUse; + next[1] += nextDirection[1] * radiusToUse; + + var ac = (currentDirection[1] === nextDirection[0] && nextDirection[0] === 1) || + ((currentDirection[1] === nextDirection[0] && nextDirection[0] === 0) && currentDirection[0] !== nextDirection[1]) || + (currentDirection[1] === nextDirection[0] && nextDirection[0] === -1), + sgny = next[1] > current[3] ? 1 : -1, + sgnx = next[0] > current[2] ? 1 : -1, + sgnEqual = sgny === sgnx, + cx = (sgnEqual && ac || (!sgnEqual && !ac)) ? next[0] : current[2], + cy = (sgnEqual && ac || (!sgnEqual && !ac)) ? current[3] : next[1]; + + _super.addSegment(conn, STRAIGHT, { + x1: current[0], y1: current[1], x2: current[2], y2: current[3] + }); + + _super.addSegment(conn, ARC, { + r: radiusToUse, + x1: current[2], + y1: current[3], + x2: next[0], + y2: next[1], + cx: cx, + cy: cy, + ac: ac + }); + } + else { + // dx + dy are used to adjust for line width. + var dx = (current[2] === current[0]) ? 0 : (current[2] > current[0]) ? (paintInfo.lw / 2) : -(paintInfo.lw / 2), + dy = (current[3] === current[1]) ? 0 : (current[3] > current[1]) ? (paintInfo.lw / 2) : -(paintInfo.lw / 2); + + _super.addSegment(conn, STRAIGHT, { + x1: current[0] - dx, y1: current[1] - dy, x2: current[2] + dx, y2: current[3] + dy + }); + } + current = next; + } + if (next != null) { + // last segment + _super.addSegment(conn, STRAIGHT, { + x1: next[0], y1: next[1], x2: next[2], y2: next[3] + }); + } + }; + + this._compute = function (paintInfo, params) { + + segments = []; + lastx = null; + lasty = null; + lastOrientation = null; + + var commonStubCalculator = function () { + return [paintInfo.startStubX, paintInfo.startStubY, paintInfo.endStubX, paintInfo.endStubY]; + }, + stubCalculators = { + perpendicular: commonStubCalculator, + orthogonal: commonStubCalculator, + opposite: function (axis) { + var pi = paintInfo, + idx = axis === "x" ? 0 : 1, + areInProximity = { + "x": function () { + return ( (pi.so[idx] === 1 && ( + ( (pi.startStubX > pi.endStubX) && (pi.tx > pi.startStubX) ) || + ( (pi.sx > pi.endStubX) && (pi.tx > pi.sx))))) || + + ( (pi.so[idx] === -1 && ( + ( (pi.startStubX < pi.endStubX) && (pi.tx < pi.startStubX) ) || + ( (pi.sx < pi.endStubX) && (pi.tx < pi.sx))))); + }, + "y": function () { + return ( (pi.so[idx] === 1 && ( + ( (pi.startStubY > pi.endStubY) && (pi.ty > pi.startStubY) ) || + ( (pi.sy > pi.endStubY) && (pi.ty > pi.sy))))) || + + ( (pi.so[idx] === -1 && ( + ( (pi.startStubY < pi.endStubY) && (pi.ty < pi.startStubY) ) || + ( (pi.sy < pi.endStubY) && (pi.ty < pi.sy))))); + } + }; + + if (!alwaysRespectStubs && areInProximity[axis]()) { + return { + "x": [(paintInfo.sx + paintInfo.tx) / 2, paintInfo.startStubY, (paintInfo.sx + paintInfo.tx) / 2, paintInfo.endStubY], + "y": [paintInfo.startStubX, (paintInfo.sy + paintInfo.ty) / 2, paintInfo.endStubX, (paintInfo.sy + paintInfo.ty) / 2] + }[axis]; + } + else { + return [paintInfo.startStubX, paintInfo.startStubY, paintInfo.endStubX, paintInfo.endStubY]; + } + } + }; + + // calculate Stubs. + var stubs = stubCalculators[paintInfo.anchorOrientation](paintInfo.sourceAxis), + idx = paintInfo.sourceAxis === "x" ? 0 : 1, + oidx = paintInfo.sourceAxis === "x" ? 1 : 0, + ss = stubs[idx], + oss = stubs[oidx], + es = stubs[idx + 2], + oes = stubs[oidx + 2]; + + // add the start stub segment. use stubs for loopback as it will look better, with the loop spaced + // away from the element. + addSegment(segments, stubs[0], stubs[1], paintInfo); + + // if its a loopback and we should treat it differently. + // if (false && params.sourcePos[0] === params.targetPos[0] && params.sourcePos[1] === params.targetPos[1]) { + // + // // we use loopbackRadius here, as statemachine connectors do. + // // so we go radius to the left from stubs[0], then upwards by 2*radius, to the right by 2*radius, + // // down by 2*radius, left by radius. + // addSegment(segments, stubs[0] - loopbackRadius, stubs[1], paintInfo); + // addSegment(segments, stubs[0] - loopbackRadius, stubs[1] - (2 * loopbackRadius), paintInfo); + // addSegment(segments, stubs[0] + loopbackRadius, stubs[1] - (2 * loopbackRadius), paintInfo); + // addSegment(segments, stubs[0] + loopbackRadius, stubs[1], paintInfo); + // addSegment(segments, stubs[0], stubs[1], paintInfo); + // + // } + // else { + + + var midx = paintInfo.startStubX + ((paintInfo.endStubX - paintInfo.startStubX) * midpoint), + midy = paintInfo.startStubY + ((paintInfo.endStubY - paintInfo.startStubY) * midpoint); + + var orientations = {x: [0, 1], y: [1, 0]}, + lineCalculators = { + perpendicular: function (axis) { + var pi = paintInfo, + sis = { + x: [ + [[1, 2, 3, 4], null, [2, 1, 4, 3]], + null, + [[4, 3, 2, 1], null, [3, 4, 1, 2]] + ], + y: [ + [[3, 2, 1, 4], null, [2, 3, 4, 1]], + null, + [[4, 1, 2, 3], null, [1, 4, 3, 2]] + ] + }, + stubs = { + x: [[pi.startStubX, pi.endStubX], null, [pi.endStubX, pi.startStubX]], + y: [[pi.startStubY, pi.endStubY], null, [pi.endStubY, pi.startStubY]] + }, + midLines = { + x: [[midx, pi.startStubY], [midx, pi.endStubY]], + y: [[pi.startStubX, midy], [pi.endStubX, midy]] + }, + linesToEnd = { + x: [[pi.endStubX, pi.startStubY]], + y: [[pi.startStubX, pi.endStubY]] + }, + startToEnd = { + x: [[pi.startStubX, pi.endStubY], [pi.endStubX, pi.endStubY]], + y: [[pi.endStubX, pi.startStubY], [pi.endStubX, pi.endStubY]] + }, + startToMidToEnd = { + x: [[pi.startStubX, midy], [pi.endStubX, midy], [pi.endStubX, pi.endStubY]], + y: [[midx, pi.startStubY], [midx, pi.endStubY], [pi.endStubX, pi.endStubY]] + }, + otherStubs = { + x: [pi.startStubY, pi.endStubY], + y: [pi.startStubX, pi.endStubX] + }, + soIdx = orientations[axis][0], toIdx = orientations[axis][1], + _so = pi.so[soIdx] + 1, + _to = pi.to[toIdx] + 1, + otherFlipped = (pi.to[toIdx] === -1 && (otherStubs[axis][1] < otherStubs[axis][0])) || (pi.to[toIdx] === 1 && (otherStubs[axis][1] > otherStubs[axis][0])), + stub1 = stubs[axis][_so][0], + stub2 = stubs[axis][_so][1], + segmentIndexes = sis[axis][_so][_to]; + + if (pi.segment === segmentIndexes[3] || (pi.segment === segmentIndexes[2] && otherFlipped)) { + return midLines[axis]; + } + else if (pi.segment === segmentIndexes[2] && stub2 < stub1) { + return linesToEnd[axis]; + } + else if ((pi.segment === segmentIndexes[2] && stub2 >= stub1) || (pi.segment === segmentIndexes[1] && !otherFlipped)) { + return startToMidToEnd[axis]; + } + else if (pi.segment === segmentIndexes[0] || (pi.segment === segmentIndexes[1] && otherFlipped)) { + return startToEnd[axis]; + } + }, + orthogonal: function (axis, startStub, otherStartStub, endStub, otherEndStub) { + var pi = paintInfo, + extent = { + "x": pi.so[0] === -1 ? Math.min(startStub, endStub) : Math.max(startStub, endStub), + "y": pi.so[1] === -1 ? Math.min(startStub, endStub) : Math.max(startStub, endStub) + }[axis]; + + return { + "x": [ + [extent, otherStartStub], + [extent, otherEndStub], + [endStub, otherEndStub] + ], + "y": [ + [otherStartStub, extent], + [otherEndStub, extent], + [otherEndStub, endStub] + ] + }[axis]; + }, + opposite: function (axis, ss, oss, es) { + var pi = paintInfo, + otherAxis = {"x": "y", "y": "x"}[axis], + dim = {"x": "height", "y": "width"}[axis], + comparator = pi["is" + axis.toUpperCase() + "GreaterThanStubTimes2"]; + + if (params.sourceEndpoint.elementId === params.targetEndpoint.elementId) { + var _val = oss + ((1 - params.sourceEndpoint.anchor[otherAxis]) * params.sourceInfo[dim]) + _super.maxStub; + return { + "x": [ + [ss, _val], + [es, _val] + ], + "y": [ + [_val, ss], + [_val, es] + ] + }[axis]; + + } + else if (!comparator || (pi.so[idx] === 1 && ss > es) || (pi.so[idx] === -1 && ss < es)) { + return { + "x": [ + [ss, midy], + [es, midy] + ], + "y": [ + [midx, ss], + [midx, es] + ] + }[axis]; + } + else if ((pi.so[idx] === 1 && ss < es) || (pi.so[idx] === -1 && ss > es)) { + return { + "x": [ + [midx, pi.sy], + [midx, pi.ty] + ], + "y": [ + [pi.sx, midy], + [pi.tx, midy] + ] + }[axis]; + } + } + }; + + // compute the rest of the line + var p = lineCalculators[paintInfo.anchorOrientation](paintInfo.sourceAxis, ss, oss, es, oes); + if (p) { + for (var i = 0; i < p.length; i++) { + addSegment(segments, p[i][0], p[i][1], paintInfo); + } + } + + // line to end stub + addSegment(segments, stubs[2], stubs[3], paintInfo); + + //} + + // end stub to end (common) + addSegment(segments, paintInfo.tx, paintInfo.ty, paintInfo); + + + + // write out the segments. + writeSegments(this, segments, paintInfo); + + }; + }; + + _jp.Connectors.Flowchart = Flowchart; + _ju.extend(_jp.Connectors.Flowchart, _jp.Connectors.AbstractConnector); + +}).call(typeof window !== 'undefined' ? window : this); +/* + * This file contains the code for the Bezier connector type. + * + * Copyright (c) 2010 - 2018 jsPlumb (hello@jsplumbtoolkit.com) + * + * https://jsplumbtoolkit.com + * https://github.com/jsplumb/jsplumb + * + * Dual licensed under the MIT and GPL2 licenses. + */ +; +(function () { + + "use strict"; + var root = this, _jp = root.jsPlumb, _ju = root.jsPlumbUtil; + + _jp.Connectors.AbstractBezierConnector = function(params) { + params = params || {}; + var showLoopback = params.showLoopback !== false, + curviness = params.curviness || 10, + margin = params.margin || 5, + proximityLimit = params.proximityLimit || 80, + clockwise = params.orientation && params.orientation === "clockwise", + loopbackRadius = params.loopbackRadius || 25, + isLoopbackCurrently = false, + _super; + + this._compute = function (paintInfo, p) { + + var sp = p.sourcePos, + tp = p.targetPos, + _w = Math.abs(sp[0] - tp[0]), + _h = Math.abs(sp[1] - tp[1]); + + if (!showLoopback || (p.sourceEndpoint.elementId !== p.targetEndpoint.elementId)) { + isLoopbackCurrently = false; + this._computeBezier(paintInfo, p, sp, tp, _w, _h); + } else { + isLoopbackCurrently = true; + // a loopback connector. draw an arc from one anchor to the other. + var x1 = p.sourcePos[0], y1 = p.sourcePos[1] - margin, + cx = x1, cy = y1 - loopbackRadius, + // canvas sizing stuff, to ensure the whole painted area is visible. + _x = cx - loopbackRadius, + _y = cy - loopbackRadius; + + _w = 2 * loopbackRadius; + _h = 2 * loopbackRadius; + + paintInfo.points[0] = _x; + paintInfo.points[1] = _y; + paintInfo.points[2] = _w; + paintInfo.points[3] = _h; + + // ADD AN ARC SEGMENT. + _super.addSegment(this, "Arc", { + loopback: true, + x1: (x1 - _x) + 4, + y1: y1 - _y, + startAngle: 0, + endAngle: 2 * Math.PI, + r: loopbackRadius, + ac: !clockwise, + x2: (x1 - _x) - 4, + y2: y1 - _y, + cx: cx - _x, + cy: cy - _y + }); + } + }; + + _super = _jp.Connectors.AbstractConnector.apply(this, arguments); + return _super; + }; + _ju.extend(_jp.Connectors.AbstractBezierConnector, _jp.Connectors.AbstractConnector); + + var Bezier = function (params) { + params = params || {}; + this.type = "Bezier"; + + var _super = _jp.Connectors.AbstractBezierConnector.apply(this, arguments), + majorAnchor = params.curviness || 150, + minorAnchor = 10; + + this.getCurviness = function () { + return majorAnchor; + }; + + this._findControlPoint = function (point, sourceAnchorPosition, targetAnchorPosition, sourceEndpoint, targetEndpoint, soo, too) { + // determine if the two anchors are perpendicular to each other in their orientation. we swap the control + // points around if so (code could be tightened up) + var perpendicular = soo[0] !== too[0] || soo[1] === too[1], + p = []; + + if (!perpendicular) { + if (soo[0] === 0) { + p.push(sourceAnchorPosition[0] < targetAnchorPosition[0] ? point[0] + minorAnchor : point[0] - minorAnchor); + } + else { + p.push(point[0] - (majorAnchor * soo[0])); + } + + if (soo[1] === 0) { + p.push(sourceAnchorPosition[1] < targetAnchorPosition[1] ? point[1] + minorAnchor : point[1] - minorAnchor); + } + else { + p.push(point[1] + (majorAnchor * too[1])); + } + } + else { + if (too[0] === 0) { + p.push(targetAnchorPosition[0] < sourceAnchorPosition[0] ? point[0] + minorAnchor : point[0] - minorAnchor); + } + else { + p.push(point[0] + (majorAnchor * too[0])); + } + + if (too[1] === 0) { + p.push(targetAnchorPosition[1] < sourceAnchorPosition[1] ? point[1] + minorAnchor : point[1] - minorAnchor); + } + else { + p.push(point[1] + (majorAnchor * soo[1])); + } + } + + return p; + }; + + this._computeBezier = function (paintInfo, p, sp, tp, _w, _h) { + + var _CP, _CP2, + _sx = sp[0] < tp[0] ? _w : 0, + _sy = sp[1] < tp[1] ? _h : 0, + _tx = sp[0] < tp[0] ? 0 : _w, + _ty = sp[1] < tp[1] ? 0 : _h; + + _CP = this._findControlPoint([_sx, _sy], sp, tp, p.sourceEndpoint, p.targetEndpoint, paintInfo.so, paintInfo.to); + _CP2 = this._findControlPoint([_tx, _ty], tp, sp, p.targetEndpoint, p.sourceEndpoint, paintInfo.to, paintInfo.so); + + + _super.addSegment(this, "Bezier", { + x1: _sx, y1: _sy, x2: _tx, y2: _ty, + cp1x: _CP[0], cp1y: _CP[1], cp2x: _CP2[0], cp2y: _CP2[1] + }); + }; + + + }; + + _jp.Connectors.Bezier = Bezier; + _ju.extend(Bezier, _jp.Connectors.AbstractBezierConnector); + +}).call(typeof window !== 'undefined' ? window : this); +/* + * This file contains the state machine connectors, which extend AbstractBezierConnector. + * + * Copyright (c) 2010 - 2018 jsPlumb (hello@jsplumbtoolkit.com) + * + * https://jsplumbtoolkit.com + * https://github.com/jsplumb/jsplumb + * + * Dual licensed under the MIT and GPL2 licenses. + */ +; +(function () { + + "use strict"; + var root = this, _jp = root.jsPlumb, _ju = root.jsPlumbUtil; + + var _segment = function (x1, y1, x2, y2) { + if (x1 <= x2 && y2 <= y1) { + return 1; + } + else if (x1 <= x2 && y1 <= y2) { + return 2; + } + else if (x2 <= x1 && y2 >= y1) { + return 3; + } + return 4; + }, + + // the control point we will use depends on the faces to which each end of the connection is assigned, specifically whether or not the + // two faces are parallel or perpendicular. if they are parallel then the control point lies on the midpoint of the axis in which they + // are parellel and varies only in the other axis; this variation is proportional to the distance that the anchor points lie from the + // center of that face. if the two faces are perpendicular then the control point is at some distance from both the midpoints; the amount and + // direction are dependent on the orientation of the two elements. 'seg', passed in to this method, tells you which segment the target element + // lies in with respect to the source: 1 is top right, 2 is bottom right, 3 is bottom left, 4 is top left. + // + // sourcePos and targetPos are arrays of info about where on the source and target each anchor is located. their contents are: + // + // 0 - absolute x + // 1 - absolute y + // 2 - proportional x in element (0 is left edge, 1 is right edge) + // 3 - proportional y in element (0 is top edge, 1 is bottom edge) + // + _findControlPoint = function (midx, midy, segment, sourceEdge, targetEdge, dx, dy, distance, proximityLimit) { + // TODO (maybe) + // - if anchor pos is 0.5, make the control point take into account the relative position of the elements. + if (distance <= proximityLimit) { + return [midx, midy]; + } + + if (segment === 1) { + if (sourceEdge[3] <= 0 && targetEdge[3] >= 1) { + return [ midx + (sourceEdge[2] < 0.5 ? -1 * dx : dx), midy ]; + } + else if (sourceEdge[2] >= 1 && targetEdge[2] <= 0) { + return [ midx, midy + (sourceEdge[3] < 0.5 ? -1 * dy : dy) ]; + } + else { + return [ midx + (-1 * dx) , midy + (-1 * dy) ]; + } + } + else if (segment === 2) { + if (sourceEdge[3] >= 1 && targetEdge[3] <= 0) { + return [ midx + (sourceEdge[2] < 0.5 ? -1 * dx : dx), midy ]; + } + else if (sourceEdge[2] >= 1 && targetEdge[2] <= 0) { + return [ midx, midy + (sourceEdge[3] < 0.5 ? -1 * dy : dy) ]; + } + else { + return [ midx + dx, midy + (-1 * dy) ]; + } + } + else if (segment === 3) { + if (sourceEdge[3] >= 1 && targetEdge[3] <= 0) { + return [ midx + (sourceEdge[2] < 0.5 ? -1 * dx : dx), midy ]; + } + else if (sourceEdge[2] <= 0 && targetEdge[2] >= 1) { + return [ midx, midy + (sourceEdge[3] < 0.5 ? -1 * dy : dy) ]; + } + else { + return [ midx + (-1 * dx) , midy + (-1 * dy) ]; + } + } + else if (segment === 4) { + if (sourceEdge[3] <= 0 && targetEdge[3] >= 1) { + return [ midx + (sourceEdge[2] < 0.5 ? -1 * dx : dx), midy ]; + } + else if (sourceEdge[2] <= 0 && targetEdge[2] >= 1) { + return [ midx, midy + (sourceEdge[3] < 0.5 ? -1 * dy : dy) ]; + } + else { + return [ midx + dx , midy + (-1 * dy) ]; + } + } + + }; + + var StateMachine = function (params) { + params = params || {}; + this.type = "StateMachine"; + + var _super = _jp.Connectors.AbstractBezierConnector.apply(this, arguments), + curviness = params.curviness || 10, + margin = params.margin || 5, + proximityLimit = params.proximityLimit || 80, + clockwise = params.orientation && params.orientation === "clockwise", + _controlPoint; + + this._computeBezier = function(paintInfo, params, sp, tp, w, h) { + var _sx = params.sourcePos[0] < params.targetPos[0] ? 0 : w, + _sy = params.sourcePos[1] < params.targetPos[1] ? 0 : h, + _tx = params.sourcePos[0] < params.targetPos[0] ? w : 0, + _ty = params.sourcePos[1] < params.targetPos[1] ? h : 0; + + // now adjust for the margin + if (params.sourcePos[2] === 0) { + _sx -= margin; + } + if (params.sourcePos[2] === 1) { + _sx += margin; + } + if (params.sourcePos[3] === 0) { + _sy -= margin; + } + if (params.sourcePos[3] === 1) { + _sy += margin; + } + if (params.targetPos[2] === 0) { + _tx -= margin; + } + if (params.targetPos[2] === 1) { + _tx += margin; + } + if (params.targetPos[3] === 0) { + _ty -= margin; + } + if (params.targetPos[3] === 1) { + _ty += margin; + } + + // + // these connectors are quadratic bezier curves, having a single control point. if both anchors + // are located at 0.5 on their respective faces, the control point is set to the midpoint and you + // get a straight line. this is also the case if the two anchors are within 'proximityLimit', since + // it seems to make good aesthetic sense to do that. outside of that, the control point is positioned + // at 'curviness' pixels away along the normal to the straight line connecting the two anchors. + // + // there may be two improvements to this. firstly, we might actually support the notion of avoiding nodes + // in the UI, or at least making a good effort at doing so. if a connection would pass underneath some node, + // for example, we might increase the distance the control point is away from the midpoint in a bid to + // steer it around that node. this will work within limits, but i think those limits would also be the likely + // limits for, once again, aesthetic good sense in the layout of a chart using these connectors. + // + // the second possible change is actually two possible changes: firstly, it is possible we should gradually + // decrease the 'curviness' as the distance between the anchors decreases; start tailing it off to 0 at some + // point (which should be configurable). secondly, we might slightly increase the 'curviness' for connectors + // with respect to how far their anchor is from the center of its respective face. this could either look cool, + // or stupid, and may indeed work only in a way that is so subtle as to have been a waste of time. + // + + var _midx = (_sx + _tx) / 2, + _midy = (_sy + _ty) / 2, + segment = _segment(_sx, _sy, _tx, _ty), + distance = Math.sqrt(Math.pow(_tx - _sx, 2) + Math.pow(_ty - _sy, 2)), + cp1x, cp2x, cp1y, cp2y; + + + // calculate the control point. this code will be where we'll put in a rudimentary element avoidance scheme; it + // will work by extending the control point to force the curve to be, um, curvier. + _controlPoint = _findControlPoint(_midx, + _midy, + segment, + params.sourcePos, + params.targetPos, + curviness, curviness, + distance, + proximityLimit); + + cp1x = _controlPoint[0]; + cp2x = _controlPoint[0]; + cp1y = _controlPoint[1]; + cp2y = _controlPoint[1]; + + _super.addSegment(this, "Bezier", { + x1: _tx, y1: _ty, x2: _sx, y2: _sy, + cp1x: cp1x, cp1y: cp1y, + cp2x: cp2x, cp2y: cp2y + }); + }; + }; + + _jp.Connectors.StateMachine = StateMachine; + _ju.extend(StateMachine, _jp.Connectors.AbstractBezierConnector); + +}).call(typeof window !== 'undefined' ? window : this); +/* + * This file contains the 'flowchart' connectors, consisting of vertical and horizontal line segments. + * + * Copyright (c) 2010 - 2018 jsPlumb (hello@jsplumbtoolkit.com) + * + * https://jsplumbtoolkit.com + * https://github.com/jsplumb/jsplumb + * + * Dual licensed under the MIT and GPL2 licenses. + */ +; +(function () { + + "use strict"; + var root = this, _jp = root.jsPlumb, _ju = root.jsPlumbUtil; + var STRAIGHT = "Straight"; + + var Straight = function (params) { + this.type = STRAIGHT; + var _super = _jp.Connectors.AbstractConnector.apply(this, arguments); + + this._compute = function (paintInfo, _) { + _super.addSegment(this, STRAIGHT, {x1: paintInfo.sx, y1: paintInfo.sy, x2: paintInfo.startStubX, y2: paintInfo.startStubY}); + _super.addSegment(this, STRAIGHT, {x1: paintInfo.startStubX, y1: paintInfo.startStubY, x2: paintInfo.endStubX, y2: paintInfo.endStubY}); + _super.addSegment(this, STRAIGHT, {x1: paintInfo.endStubX, y1: paintInfo.endStubY, x2: paintInfo.tx, y2: paintInfo.ty}); + }; + }; + + _jp.Connectors.Straight = Straight; + _ju.extend(Straight, _jp.Connectors.AbstractConnector); + +}).call(typeof window !== 'undefined' ? window : this); +/* + * This file contains the SVG renderers. + * + * Copyright (c) 2010 - 2018 jsPlumb (hello@jsplumbtoolkit.com) + * + * https://jsplumbtoolkit.com + * https://github.com/jsplumb/jsplumb + * + * Dual licensed under the MIT and GPL2 licenses. + */ +; +(function () { + +// ************************** SVG utility methods ******************************************** + + "use strict"; + var root = this, _jp = root.jsPlumb, _ju = root.jsPlumbUtil; + + var svgAttributeMap = { + "stroke-linejoin": "stroke-linejoin", + "stroke-dashoffset": "stroke-dashoffset", + "stroke-linecap": "stroke-linecap" + }, + STROKE_DASHARRAY = "stroke-dasharray", + DASHSTYLE = "dashstyle", + LINEAR_GRADIENT = "linearGradient", + RADIAL_GRADIENT = "radialGradient", + DEFS = "defs", + FILL = "fill", + STOP = "stop", + STROKE = "stroke", + STROKE_WIDTH = "stroke-width", + STYLE = "style", + NONE = "none", + JSPLUMB_GRADIENT = "jsplumb_gradient_", + LINE_WIDTH = "strokeWidth", + ns = { + svg: "http://www.w3.org/2000/svg" + }, + _attr = function (node, attributes) { + for (var i in attributes) { + node.setAttribute(i, "" + attributes[i]); + } + }, + _node = function (name, attributes) { + attributes = attributes || {}; + attributes.version = "1.1"; + attributes.xmlns = ns.svg; + return _jp.createElementNS(ns.svg, name, null, null, attributes); + }, + _pos = function (d) { + return "position:absolute;left:" + d[0] + "px;top:" + d[1] + "px"; + }, + _clearGradient = function (parent) { + var els = parent.querySelectorAll(" defs,linearGradient,radialGradient"); + for (var i = 0; i < els.length; i++) { + els[i].parentNode.removeChild(els[i]); + } + }, + _updateGradient = function (parent, node, style, dimensions, uiComponent) { + var id = JSPLUMB_GRADIENT + uiComponent._jsPlumb.instance.idstamp(); + // first clear out any existing gradient + _clearGradient(parent); + // this checks for an 'offset' property in the gradient, and in the absence of it, assumes + // we want a linear gradient. if it's there, we create a radial gradient. + // it is possible that a more explicit means of defining the gradient type would be + // better. relying on 'offset' means that we can never have a radial gradient that uses + // some default offset, for instance. + // issue 244 suggested the 'gradientUnits' attribute; without this, straight/flowchart connectors with gradients would + // not show gradients when the line was perfectly horizontal or vertical. + var g; + if (!style.gradient.offset) { + g = _node(LINEAR_GRADIENT, {id: id, gradientUnits: "userSpaceOnUse"}); + } + else { + g = _node(RADIAL_GRADIENT, { id: id }); + } + + var defs = _node(DEFS); + parent.appendChild(defs); + defs.appendChild(g); + + // the svg radial gradient seems to treat stops in the reverse + // order to how canvas does it. so we want to keep all the maths the same, but + // iterate the actual style declarations in reverse order, if the x indexes are not in order. + for (var i = 0; i < style.gradient.stops.length; i++) { + var styleToUse = uiComponent.segment === 1 || uiComponent.segment === 2 ? i : style.gradient.stops.length - 1 - i, + stopColor = style.gradient.stops[styleToUse][1], + s = _node(STOP, {"offset": Math.floor(style.gradient.stops[i][0] * 100) + "%", "stop-color": stopColor}); + + g.appendChild(s); + } + var applyGradientTo = style.stroke ? STROKE : FILL; + node.setAttribute(applyGradientTo, "url(#" + id + ")"); + }, + _applyStyles = function (parent, node, style, dimensions, uiComponent) { + + node.setAttribute(FILL, style.fill ? style.fill : NONE); + node.setAttribute(STROKE, style.stroke ? style.stroke : NONE); + + if (style.gradient) { + _updateGradient(parent, node, style, dimensions, uiComponent); + } + else { + // make sure we clear any existing gradient + _clearGradient(parent); + node.setAttribute(STYLE, ""); + } + + if (style.strokeWidth) { + node.setAttribute(STROKE_WIDTH, style.strokeWidth); + } + + // in SVG there is a stroke-dasharray attribute we can set, and its syntax looks like + // the syntax in VML but is actually kind of nasty: values are given in the pixel + // coordinate space, whereas in VML they are multiples of the width of the stroked + // line, which makes a lot more sense. for that reason, jsPlumb is supporting both + // the native svg 'stroke-dasharray' attribute, and also the 'dashstyle' concept from + // VML, which will be the preferred method. the code below this converts a dashstyle + // attribute given in terms of stroke width into a pixel representation, by using the + // stroke's lineWidth. + if (style[DASHSTYLE] && style[LINE_WIDTH] && !style[STROKE_DASHARRAY]) { + var sep = style[DASHSTYLE].indexOf(",") === -1 ? " " : ",", + parts = style[DASHSTYLE].split(sep), + styleToUse = ""; + parts.forEach(function (p) { + styleToUse += (Math.floor(p * style.strokeWidth) + sep); + }); + node.setAttribute(STROKE_DASHARRAY, styleToUse); + } + else if (style[STROKE_DASHARRAY]) { + node.setAttribute(STROKE_DASHARRAY, style[STROKE_DASHARRAY]); + } + + // extra attributes such as join type, dash offset. + for (var i in svgAttributeMap) { + if (style[i]) { + node.setAttribute(svgAttributeMap[i], style[i]); + } + } + }, + _appendAtIndex = function (svg, path, idx) { + if (svg.childNodes.length > idx) { + svg.insertBefore(path, svg.childNodes[idx]); + } + else { + svg.appendChild(path); + } + }; + + /** + utility methods for other objects to use. + */ + _ju.svg = { + node: _node, + attr: _attr, + pos: _pos + }; + + // ************************** / SVG utility methods ******************************************** + + /* + * Base class for SVG components. + */ + var SvgComponent = function (params) { + var pointerEventsSpec = params.pointerEventsSpec || "all", renderer = {}; + + _jp.jsPlumbUIComponent.apply(this, params.originalArgs); + this.canvas = null; + this.path = null; + this.svg = null; + this.bgCanvas = null; + + var clazz = params.cssClass + " " + (params.originalArgs[0].cssClass || ""), + svgParams = { + "style": "", + "width": 0, + "height": 0, + "pointer-events": pointerEventsSpec, + "position": "absolute" + }; + + this.svg = _node("svg", svgParams); + + if (params.useDivWrapper) { + this.canvas = _jp.createElement("div", { position : "absolute" }); + _ju.sizeElement(this.canvas, 0, 0, 1, 1); + this.canvas.className = clazz; + } + else { + _attr(this.svg, { "class": clazz }); + this.canvas = this.svg; + } + + params._jsPlumb.appendElement(this.canvas, params.originalArgs[0].parent); + if (params.useDivWrapper) { + this.canvas.appendChild(this.svg); + } + + var displayElements = [ this.canvas ]; + this.getDisplayElements = function () { + return displayElements; + }; + + this.appendDisplayElement = function (el) { + displayElements.push(el); + }; + + this.paint = function (style, anchor, extents) { + if (style != null) { + + var xy = [ this.x, this.y ], wh = [ this.w, this.h ], p; + if (extents != null) { + if (extents.xmin < 0) { + xy[0] += extents.xmin; + } + if (extents.ymin < 0) { + xy[1] += extents.ymin; + } + wh[0] = extents.xmax + ((extents.xmin < 0) ? -extents.xmin : 0); + wh[1] = extents.ymax + ((extents.ymin < 0) ? -extents.ymin : 0); + } + + if (params.useDivWrapper) { + _ju.sizeElement(this.canvas, xy[0], xy[1], wh[0], wh[1]); + xy[0] = 0; + xy[1] = 0; + p = _pos([ 0, 0 ]); + } + else { + p = _pos([ xy[0], xy[1] ]); + } + + renderer.paint.apply(this, arguments); + + _attr(this.svg, { + "style": p, + "width": wh[0] || 0, + "height": wh[1] || 0 + }); + } + }; + + return { + renderer: renderer + }; + }; + + _ju.extend(SvgComponent, _jp.jsPlumbUIComponent, { + cleanup: function (force) { + if (force || this.typeId == null) { + if (this.canvas) { + this.canvas._jsPlumb = null; + } + if (this.svg) { + this.svg._jsPlumb = null; + } + if (this.bgCanvas) { + this.bgCanvas._jsPlumb = null; + } + + if (this.canvas && this.canvas.parentNode) { + this.canvas.parentNode.removeChild(this.canvas); + } + if (this.bgCanvas && this.bgCanvas.parentNode) { + this.canvas.parentNode.removeChild(this.canvas); + } + + this.svg = null; + this.canvas = null; + this.path = null; + this.group = null; + } + else { + // if not a forced cleanup, just detach from DOM for now. + if (this.canvas && this.canvas.parentNode) { + this.canvas.parentNode.removeChild(this.canvas); + } + if (this.bgCanvas && this.bgCanvas.parentNode) { + this.bgCanvas.parentNode.removeChild(this.bgCanvas); + } + } + }, + reattach:function(instance) { + var c = instance.getContainer(); + if (this.canvas && this.canvas.parentNode == null) { + c.appendChild(this.canvas); + } + if (this.bgCanvas && this.bgCanvas.parentNode == null) { + c.appendChild(this.bgCanvas); + } + }, + setVisible: function (v) { + if (this.canvas) { + this.canvas.style.display = v ? "block" : "none"; + } + } + }); + + /* + * Base class for SVG connectors. + */ + _jp.ConnectorRenderers.svg = function (params) { + var self = this, + _super = SvgComponent.apply(this, [ + { + cssClass: params._jsPlumb.connectorClass, + originalArgs: arguments, + pointerEventsSpec: "none", + _jsPlumb: params._jsPlumb + } + ]); + + _super.renderer.paint = function (style, anchor, extents) { + + var segments = self.getSegments(), p = "", offset = [0, 0]; + if (extents.xmin < 0) { + offset[0] = -extents.xmin; + } + if (extents.ymin < 0) { + offset[1] = -extents.ymin; + } + + if (segments.length > 0) { + + p = self.getPathData(); + + var a = { + d: p, + transform: "translate(" + offset[0] + "," + offset[1] + ")", + "pointer-events": params["pointer-events"] || "visibleStroke" + }, + outlineStyle = null, + d = [self.x, self.y, self.w, self.h]; + + // outline style. actually means drawing an svg object underneath the main one. + if (style.outlineStroke) { + var outlineWidth = style.outlineWidth || 1, + outlineStrokeWidth = style.strokeWidth + (2 * outlineWidth); + outlineStyle = _jp.extend({}, style); + delete outlineStyle.gradient; + outlineStyle.stroke = style.outlineStroke; + outlineStyle.strokeWidth = outlineStrokeWidth; + + if (self.bgPath == null) { + self.bgPath = _node("path", a); + _jp.addClass(self.bgPath, _jp.connectorOutlineClass); + _appendAtIndex(self.svg, self.bgPath, 0); + } + else { + _attr(self.bgPath, a); + } + + _applyStyles(self.svg, self.bgPath, outlineStyle, d, self); + } + + if (self.path == null) { + self.path = _node("path", a); + _appendAtIndex(self.svg, self.path, style.outlineStroke ? 1 : 0); + } + else { + _attr(self.path, a); + } + + _applyStyles(self.svg, self.path, style, d, self); + } + }; + }; + _ju.extend(_jp.ConnectorRenderers.svg, SvgComponent); + +// ******************************* svg segment renderer ***************************************************** + + +// ******************************* /svg segments ***************************************************** + + /* + * Base class for SVG endpoints. + */ + var SvgEndpoint = _jp.SvgEndpoint = function (params) { + var _super = SvgComponent.apply(this, [ + { + cssClass: params._jsPlumb.endpointClass, + originalArgs: arguments, + pointerEventsSpec: "all", + useDivWrapper: true, + _jsPlumb: params._jsPlumb + } + ]); + + _super.renderer.paint = function (style) { + var s = _jp.extend({}, style); + if (s.outlineStroke) { + s.stroke = s.outlineStroke; + } + + if (this.node == null) { + this.node = this.makeNode(s); + this.svg.appendChild(this.node); + } + else if (this.updateNode != null) { + this.updateNode(this.node); + } + _applyStyles(this.svg, this.node, s, [ this.x, this.y, this.w, this.h ], this); + _pos(this.node, [ this.x, this.y ]); + }.bind(this); + + }; + _ju.extend(SvgEndpoint, SvgComponent); + + /* + * SVG Dot Endpoint + */ + _jp.Endpoints.svg.Dot = function () { + _jp.Endpoints.Dot.apply(this, arguments); + SvgEndpoint.apply(this, arguments); + this.makeNode = function (style) { + return _node("circle", { + "cx": this.w / 2, + "cy": this.h / 2, + "r": this.radius + }); + }; + this.updateNode = function (node) { + _attr(node, { + "cx": this.w / 2, + "cy": this.h / 2, + "r": this.radius + }); + }; + }; + _ju.extend(_jp.Endpoints.svg.Dot, [_jp.Endpoints.Dot, SvgEndpoint]); + + /* + * SVG Rectangle Endpoint + */ + _jp.Endpoints.svg.Rectangle = function () { + _jp.Endpoints.Rectangle.apply(this, arguments); + SvgEndpoint.apply(this, arguments); + this.makeNode = function (style) { + return _node("rect", { + "width": this.w, + "height": this.h + }); + }; + this.updateNode = function (node) { + _attr(node, { + "width": this.w, + "height": this.h + }); + }; + }; + _ju.extend(_jp.Endpoints.svg.Rectangle, [_jp.Endpoints.Rectangle, SvgEndpoint]); + + /* + * SVG Image Endpoint is the default image endpoint. + */ + _jp.Endpoints.svg.Image = _jp.Endpoints.Image; + /* + * Blank endpoint in svg renderer is the default Blank endpoint. + */ + _jp.Endpoints.svg.Blank = _jp.Endpoints.Blank; + /* + * Label overlay in svg renderer is the default Label overlay. + */ + _jp.Overlays.svg.Label = _jp.Overlays.Label; + /* + * Custom overlay in svg renderer is the default Custom overlay. + */ + _jp.Overlays.svg.Custom = _jp.Overlays.Custom; + + var AbstractSvgArrowOverlay = function (superclass, originalArgs) { + superclass.apply(this, originalArgs); + _jp.jsPlumbUIComponent.apply(this, originalArgs); + this.isAppendedAtTopLevel = false; + var self = this; + this.path = null; + this.paint = function (params, containerExtents) { + // only draws on connections, not endpoints. + if (params.component.svg && containerExtents) { + if (this.path == null) { + this.path = _node("path", { + "pointer-events": "all" + }); + params.component.svg.appendChild(this.path); + if (this.elementCreated) { + this.elementCreated(this.path, params.component); + } + + this.canvas = params.component.svg; // for the sake of completeness; this behaves the same as other overlays + } + var clazz = originalArgs && (originalArgs.length === 1) ? (originalArgs[0].cssClass || "") : "", + offset = [0, 0]; + + if (containerExtents.xmin < 0) { + offset[0] = -containerExtents.xmin; + } + if (containerExtents.ymin < 0) { + offset[1] = -containerExtents.ymin; + } + + _attr(this.path, { + "d": makePath(params.d), + "class": clazz, + stroke: params.stroke ? params.stroke : null, + fill: params.fill ? params.fill : null, + transform: "translate(" + offset[0] + "," + offset[1] + ")" + }); + } + }; + var makePath = function (d) { + return (isNaN(d.cxy.x) || isNaN(d.cxy.y)) ? "" : "M" + d.hxy.x + "," + d.hxy.y + + " L" + d.tail[0].x + "," + d.tail[0].y + + " L" + d.cxy.x + "," + d.cxy.y + + " L" + d.tail[1].x + "," + d.tail[1].y + + " L" + d.hxy.x + "," + d.hxy.y; + }; + this.transfer = function(target) { + if (target.canvas && this.path && this.path.parentNode) { + this.path.parentNode.removeChild(this.path); + target.canvas.appendChild(this.path); + } + }; + }; + _ju.extend(AbstractSvgArrowOverlay, [_jp.jsPlumbUIComponent, _jp.Overlays.AbstractOverlay], { + cleanup: function (force) { + if (this.path != null) { + if (force) { + this._jsPlumb.instance.removeElement(this.path); + } + else { + if (this.path.parentNode) { + this.path.parentNode.removeChild(this.path); + } + } + } + }, + reattach:function(instance, component) { + if (this.path && component.canvas) { + component.canvas.appendChild(this.path); + } + }, + setVisible: function (v) { + if (this.path != null) { + (this.path.style.display = (v ? "block" : "none")); + } + } + }); + + _jp.Overlays.svg.Arrow = function () { + AbstractSvgArrowOverlay.apply(this, [_jp.Overlays.Arrow, arguments]); + }; + _ju.extend(_jp.Overlays.svg.Arrow, [ _jp.Overlays.Arrow, AbstractSvgArrowOverlay ]); + + _jp.Overlays.svg.PlainArrow = function () { + AbstractSvgArrowOverlay.apply(this, [_jp.Overlays.PlainArrow, arguments]); + }; + _ju.extend(_jp.Overlays.svg.PlainArrow, [ _jp.Overlays.PlainArrow, AbstractSvgArrowOverlay ]); + + _jp.Overlays.svg.Diamond = function () { + AbstractSvgArrowOverlay.apply(this, [_jp.Overlays.Diamond, arguments]); + }; + _ju.extend(_jp.Overlays.svg.Diamond, [ _jp.Overlays.Diamond, AbstractSvgArrowOverlay ]); + + // a test + _jp.Overlays.svg.GuideLines = function () { + var path = null, self = this, p1_1, p1_2; + _jp.Overlays.GuideLines.apply(this, arguments); + this.paint = function (params, containerExtents) { + if (path == null) { + path = _node("path"); + params.connector.svg.appendChild(path); + self.attachListeners(path, params.connector); + self.attachListeners(path, self); + + p1_1 = _node("path"); + params.connector.svg.appendChild(p1_1); + self.attachListeners(p1_1, params.connector); + self.attachListeners(p1_1, self); + + p1_2 = _node("path"); + params.connector.svg.appendChild(p1_2); + self.attachListeners(p1_2, params.connector); + self.attachListeners(p1_2, self); + } + + var offset = [0, 0]; + if (containerExtents.xmin < 0) { + offset[0] = -containerExtents.xmin; + } + if (containerExtents.ymin < 0) { + offset[1] = -containerExtents.ymin; + } + + _attr(path, { + "d": makePath(params.head, params.tail), + stroke: "red", + fill: null, + transform: "translate(" + offset[0] + "," + offset[1] + ")" + }); + + _attr(p1_1, { + "d": makePath(params.tailLine[0], params.tailLine[1]), + stroke: "blue", + fill: null, + transform: "translate(" + offset[0] + "," + offset[1] + ")" + }); + + _attr(p1_2, { + "d": makePath(params.headLine[0], params.headLine[1]), + stroke: "green", + fill: null, + transform: "translate(" + offset[0] + "," + offset[1] + ")" + }); + }; + + var makePath = function (d1, d2) { + return "M " + d1.x + "," + d1.y + + " L" + d2.x + "," + d2.y; + }; + }; + _ju.extend(_jp.Overlays.svg.GuideLines, _jp.Overlays.GuideLines); +}).call(typeof window !== 'undefined' ? window : this); + +/* + * This file contains code used when jsPlumb is being rendered in a DOM. + * + * Copyright (c) 2010 - 2019 jsPlumb (hello@jsplumbtoolkit.com) + * + * https://jsplumbtoolkit.com + * https://github.com/jsplumb/jsplumb + * + * Dual licensed under the MIT and GPL2 licenses. + */ +; +(function () { + + "use strict"; + + var root = this, _jp = root.jsPlumb, _ju = root.jsPlumbUtil, + _jk = root.Katavorio, _jg = root.Biltong; + + var _getEventManager = function(instance) { + var e = instance._mottle; + if (!e) { + e = instance._mottle = new root.Mottle(); + } + return e; + }; + + var _getDragManager = function (instance, category) { + + category = category || "main"; + var key = "_katavorio_" + category; + var k = instance[key], + e = instance.getEventManager(); + + if (!k) { + k = new _jk({ + bind: e.on, + unbind: e.off, + getSize: _jp.getSize, + getConstrainingRectangle:function(el) { + return [ el.parentNode.scrollWidth, el.parentNode.scrollHeight ]; + }, + getPosition: function (el, relativeToRoot) { + // if this is a nested draggable then compute the offset against its own offsetParent, otherwise + // compute against the Container's origin. see also the getUIPosition method below. + var o = instance.getOffset(el, relativeToRoot, el._katavorioDrag ? el.offsetParent : null); + return [o.left, o.top]; + }, + setPosition: function (el, xy) { + el.style.left = xy[0] + "px"; + el.style.top = xy[1] + "px"; + }, + addClass: _jp.addClass, + removeClass: _jp.removeClass, + intersects: _jg.intersects, + indexOf: function(l, i) { return l.indexOf(i); }, + scope:instance.getDefaultScope(), + css: { + noSelect: instance.dragSelectClass, + droppable: "jtk-droppable", + draggable: "jtk-draggable", + drag: "jtk-drag", + selected: "jtk-drag-selected", + active: "jtk-drag-active", + hover: "jtk-drag-hover", + ghostProxy:"jtk-ghost-proxy" + } + }); + k.setZoom(instance.getZoom()); + instance[key] = k; + instance.bind("zoom", k.setZoom); + } + return k; + }; + + var _dragStart=function(params) { + var options = params.el._jsPlumbDragOptions; + var cont = true; + if (options.canDrag) { + cont = options.canDrag(); + } + if (cont) { + this.setHoverSuspended(true); + this.select({source: params.el}).addClass(this.elementDraggingClass + " " + this.sourceElementDraggingClass, true); + this.select({target: params.el}).addClass(this.elementDraggingClass + " " + this.targetElementDraggingClass, true); + this.setConnectionBeingDragged(true); + } + return cont; + }; + var _dragMove=function(params) { + var ui = this.getUIPosition(arguments, this.getZoom()); + if (ui != null) { + var o = params.el._jsPlumbDragOptions; + this.draw(params.el, ui, null, true); + if (o._dragging) { + this.addClass(params.el, "jtk-dragged"); + } + o._dragging = true; + } + }; + var _dragStop=function(params) { + var elements = params.selection, uip; + + var _one = function (_e) { + if (_e[1] != null) { + // run the reported offset through the code that takes parent containers + // into account, to adjust if necessary (issue 554) + uip = this.getUIPosition([{ + el:_e[2].el, + pos:[_e[1].left, _e[1].top] + }]); + this.draw(_e[2].el, uip); + } + + delete _e[0]._jsPlumbDragOptions._dragging; + + this.removeClass(_e[0], "jtk-dragged"); + this.select({source: _e[2].el}).removeClass(this.elementDraggingClass + " " + this.sourceElementDraggingClass, true); + this.select({target: _e[2].el}).removeClass(this.elementDraggingClass + " " + this.targetElementDraggingClass, true); + this.getDragManager().dragEnded(_e[2].el); + }.bind(this); + + for (var i = 0; i < elements.length; i++) { + _one(elements[i]); + } + + this.setHoverSuspended(false); + this.setConnectionBeingDragged(false); + }; + + var _animProps = function (o, p) { + var _one = function (pName) { + if (p[pName] != null) { + if (_ju.isString(p[pName])) { + var m = p[pName].match(/-=/) ? -1 : 1, + v = p[pName].substring(2); + return o[pName] + (m * v); + } + else { + return p[pName]; + } + } + else { + return o[pName]; + } + }; + return [ _one("left"), _one("top") ]; + }; + + var _genLoc = function (prefix, e) { + if (e == null) { + return [ 0, 0 ]; + } + var ts = _touches(e), t = _getTouch(ts, 0); + return [t[prefix + "X"], t[prefix + "Y"]]; + }, + _pageLocation = _genLoc.bind(this, "page"), + _screenLocation = _genLoc.bind(this, "screen"), + _clientLocation = _genLoc.bind(this, "client"), + _getTouch = function (touches, idx) { + return touches.item ? touches.item(idx) : touches[idx]; + }, + _touches = function (e) { + return e.touches && e.touches.length > 0 ? e.touches : + e.changedTouches && e.changedTouches.length > 0 ? e.changedTouches : + e.targetTouches && e.targetTouches.length > 0 ? e.targetTouches : + [ e ]; + }; + + /** + Manages dragging for some instance of jsPlumb. + + TODO instead of this being accessed directly, it should subscribe to events on the jsPlumb instance: every method + in here is called directly by jsPlumb. But what should happen is that we have unpublished events that this listens + to. The only trick is getting one of these instantiated with every jsPlumb instance: it needs to have a hook somehow. + Basically the general idea is to pull ALL the drag code out (prototype method registrations plus this) into a + dedicated drag script), that does not necessarily need to be included. + + + */ + var DragManager = function (_currentInstance) { + var _draggables = {}, _dlist = [], _delements = {}, _elementsWithEndpoints = {}, + // elementids mapped to the draggable to which they belong. + _draggablesForElements = {}; + + /** + register some element as draggable. right now the drag init stuff is done elsewhere, and it is + possible that will continue to be the case. + */ + this.register = function (el) { + var id = _currentInstance.getId(el), + parentOffset; + + if (!_draggables[id]) { + _draggables[id] = el; + _dlist.push(el); + _delements[id] = {}; + } + + // look for child elements that have endpoints and register them against this draggable. + var _oneLevel = function (p) { + if (p) { + for (var i = 0; i < p.childNodes.length; i++) { + if (p.childNodes[i].nodeType !== 3 && p.childNodes[i].nodeType !== 8) { + var cEl = jsPlumb.getElement(p.childNodes[i]), + cid = _currentInstance.getId(p.childNodes[i], null, true); + if (cid && _elementsWithEndpoints[cid] && _elementsWithEndpoints[cid] > 0) { + if (!parentOffset) { + parentOffset = _currentInstance.getOffset(el); + } + var cOff = _currentInstance.getOffset(cEl); + _delements[id][cid] = { + id: cid, + offset: { + left: cOff.left - parentOffset.left, + top: cOff.top - parentOffset.top + } + }; + _draggablesForElements[cid] = id; + } + _oneLevel(p.childNodes[i]); + } + } + } + }; + + _oneLevel(el); + }; + + // refresh the offsets for child elements of this element. + this.updateOffsets = function (elId, childOffsetOverrides) { + if (elId != null) { + childOffsetOverrides = childOffsetOverrides || {}; + var domEl = jsPlumb.getElement(elId), + id = _currentInstance.getId(domEl), + children = _delements[id], + parentOffset; + + if (children) { + for (var i in children) { + if (children.hasOwnProperty(i)) { + var cel = jsPlumb.getElement(i), + cOff = childOffsetOverrides[i] || _currentInstance.getOffset(cel); + + // do not update if we have a value already and we'd just be writing 0,0 + if (cel.offsetParent == null && _delements[id][i] != null) { + continue; + } + + if (!parentOffset) { + parentOffset = _currentInstance.getOffset(domEl); + } + + _delements[id][i] = { + id: i, + offset: { + left: cOff.left - parentOffset.left, + top: cOff.top - parentOffset.top + } + }; + _draggablesForElements[i] = id; + } + } + } + } + }; + + /** + notification that an endpoint was added to the given el. we go up from that el's parent + node, looking for a parent that has been registered as a draggable. if we find one, we add this + el to that parent's list of elements to update on drag (if it is not there already) + */ + this.endpointAdded = function (el, id) { + + id = id || _currentInstance.getId(el); + + var b = document.body, + p = el.parentNode; + + _elementsWithEndpoints[id] = _elementsWithEndpoints[id] ? _elementsWithEndpoints[id] + 1 : 1; + + while (p != null && p !== b) { + var pid = _currentInstance.getId(p, null, true); + if (pid && _draggables[pid]) { + var pLoc = _currentInstance.getOffset(p); + + if (_delements[pid][id] == null) { + var cLoc = _currentInstance.getOffset(el); + _delements[pid][id] = { + id: id, + offset: { + left: cLoc.left - pLoc.left, + top: cLoc.top - pLoc.top + } + }; + _draggablesForElements[id] = pid; + } + break; + } + p = p.parentNode; + } + }; + + this.endpointDeleted = function (endpoint) { + if (_elementsWithEndpoints[endpoint.elementId]) { + _elementsWithEndpoints[endpoint.elementId]--; + if (_elementsWithEndpoints[endpoint.elementId] <= 0) { + for (var i in _delements) { + if (_delements.hasOwnProperty(i) && _delements[i]) { + delete _delements[i][endpoint.elementId]; + delete _draggablesForElements[endpoint.elementId]; + } + } + } + } + }; + + this.changeId = function (oldId, newId) { + _delements[newId] = _delements[oldId]; + _delements[oldId] = {}; + _draggablesForElements[newId] = _draggablesForElements[oldId]; + _draggablesForElements[oldId] = null; + }; + + this.getElementsForDraggable = function (id) { + return _delements[id]; + }; + + this.elementRemoved = function (elementId) { + var elId = _draggablesForElements[elementId]; + if (elId) { + delete _delements[elId][elementId]; + delete _draggablesForElements[elementId]; + } + }; + + this.reset = function () { + _draggables = {}; + _dlist = []; + _delements = {}; + _elementsWithEndpoints = {}; + }; + + // + // notification drag ended. We check automatically if need to update some + // ancestor's offsets. + // + this.dragEnded = function (el) { + if (el.offsetParent != null) { + var id = _currentInstance.getId(el), + ancestor = _draggablesForElements[id]; + + if (ancestor) { + this.updateOffsets(ancestor); + } + } + }; + + this.setParent = function (el, elId, p, pId, currentChildLocation) { + var current = _draggablesForElements[elId]; + if (!_delements[pId]) { + _delements[pId] = {}; + } + var pLoc = _currentInstance.getOffset(p), + cLoc = currentChildLocation || _currentInstance.getOffset(el); + + if (current && _delements[current]) { + delete _delements[current][elId]; + } + + _delements[pId][elId] = { + id:elId, + offset : { + left: cLoc.left - pLoc.left, + top: cLoc.top - pLoc.top + } + }; + _draggablesForElements[elId] = pId; + }; + + this.clearParent = function(el, elId) { + var current = _draggablesForElements[elId]; + if (current) { + delete _delements[current][elId]; + delete _draggablesForElements[elId]; + } + }; + + this.revalidateParent = function(el, elId, childOffset) { + var current = _draggablesForElements[elId]; + if (current) { + var co = {}; + co[elId] = childOffset; + this.updateOffsets(current, co); + _currentInstance.revalidate(current); + } + }; + + this.getDragAncestor = function (el) { + var de = jsPlumb.getElement(el), + id = _currentInstance.getId(de), + aid = _draggablesForElements[id]; + + if (aid) { + return jsPlumb.getElement(aid); + } + else { + return null; + } + }; + + }; + + var _setClassName = function (el, cn, classList) { + cn = _ju.fastTrim(cn); + if (typeof el.className.baseVal !== "undefined") { + el.className.baseVal = cn; + } + else { + el.className = cn; + } + + // recent (i currently have 61.0.3163.100) version of chrome do not update classList when you set the base val + // of an svg element's className. in the long run we'd like to move to just using classList anyway + try { + var cl = el.classList; + if (cl != null) { + while (cl.length > 0) { + cl.remove(cl.item(0)); + } + for (var i = 0; i < classList.length; i++) { + if (classList[i]) { + cl.add(classList[i]); + } + } + } + } + catch(e) { + // not fatal + _ju.log("JSPLUMB: cannot set class list", e); + } + }, + _getClassName = function (el) { + return (typeof el.className.baseVal === "undefined") ? el.className : el.className.baseVal; + }, + _classManip = function (el, classesToAdd, classesToRemove) { + classesToAdd = classesToAdd == null ? [] : _ju.isArray(classesToAdd) ? classesToAdd : classesToAdd.split(/\s+/); + classesToRemove = classesToRemove == null ? [] : _ju.isArray(classesToRemove) ? classesToRemove : classesToRemove.split(/\s+/); + + var className = _getClassName(el), + curClasses = className.split(/\s+/); + + var _oneSet = function (add, classes) { + for (var i = 0; i < classes.length; i++) { + if (add) { + if (curClasses.indexOf(classes[i]) === -1) { + curClasses.push(classes[i]); + } + } + else { + var idx = curClasses.indexOf(classes[i]); + if (idx !== -1) { + curClasses.splice(idx, 1); + } + } + } + }; + + _oneSet(true, classesToAdd); + _oneSet(false, classesToRemove); + + _setClassName(el, curClasses.join(" "), curClasses); + }; + + root.jsPlumb.extend(root.jsPlumbInstance.prototype, { + + headless: false, + + pageLocation: _pageLocation, + screenLocation: _screenLocation, + clientLocation: _clientLocation, + + getDragManager:function() { + if (this.dragManager == null) { + this.dragManager = new DragManager(this); + } + + return this.dragManager; + }, + + recalculateOffsets:function(elId) { + this.getDragManager().updateOffsets(elId); + }, + + createElement:function(tag, style, clazz, atts) { + return this.createElementNS(null, tag, style, clazz, atts); + }, + + createElementNS:function(ns, tag, style, clazz, atts) { + var e = ns == null ? document.createElement(tag) : document.createElementNS(ns, tag); + var i; + style = style || {}; + for (i in style) { + e.style[i] = style[i]; + } + + if (clazz) { + e.className = clazz; + } + + atts = atts || {}; + for (i in atts) { + e.setAttribute(i, "" + atts[i]); + } + + return e; + }, + + getAttribute: function (el, attName) { + return el.getAttribute != null ? el.getAttribute(attName) : null; + }, + + setAttribute: function (el, a, v) { + if (el.setAttribute != null) { + el.setAttribute(a, v); + } + }, + + setAttributes: function (el, atts) { + for (var i in atts) { + if (atts.hasOwnProperty(i)) { + el.setAttribute(i, atts[i]); + } + } + }, + appendToRoot: function (node) { + document.body.appendChild(node); + }, + getRenderModes: function () { + return [ "svg" ]; + }, + getClass:_getClassName, + addClass: function (el, clazz) { + jsPlumb.each(el, function (e) { + _classManip(e, clazz); + }); + }, + hasClass: function (el, clazz) { + el = jsPlumb.getElement(el); + if (el.classList) { + return el.classList.contains(clazz); + } + else { + return _getClassName(el).indexOf(clazz) !== -1; + } + }, + removeClass: function (el, clazz) { + jsPlumb.each(el, function (e) { + _classManip(e, null, clazz); + }); + }, + toggleClass:function(el, clazz) { + if (jsPlumb.hasClass(el, clazz)) { + jsPlumb.removeClass(el, clazz); + } else { + jsPlumb.addClass(el, clazz); + } + }, + updateClasses: function (el, toAdd, toRemove) { + jsPlumb.each(el, function (e) { + _classManip(e, toAdd, toRemove); + }); + }, + setClass: function (el, clazz) { + if (clazz != null) { + jsPlumb.each(el, function (e) { + _setClassName(e, clazz, clazz.split(/\s+/)); + }); + } + }, + setPosition: function (el, p) { + el.style.left = p.left + "px"; + el.style.top = p.top + "px"; + }, + getPosition: function (el) { + var _one = function (prop) { + var v = el.style[prop]; + return v ? v.substring(0, v.length - 2) : 0; + }; + return { + left: _one("left"), + top: _one("top") + }; + }, + getStyle:function(el, prop) { + if (typeof window.getComputedStyle !== 'undefined') { + return getComputedStyle(el, null).getPropertyValue(prop); + } else { + return el.currentStyle[prop]; + } + }, + getSelector: function (ctx, spec) { + var sel = null; + if (arguments.length === 1) { + sel = ctx.nodeType != null ? ctx : document.querySelectorAll(ctx); + } + else { + sel = ctx.querySelectorAll(spec); + } + + return sel; + }, + getOffset:function(el, relativeToRoot, container) { + el = jsPlumb.getElement(el); + container = container || this.getContainer(); + var out = { + left: el.offsetLeft, + top: el.offsetTop + }, + op = (relativeToRoot || (container != null && (el !== container && el.offsetParent !== container))) ? el.offsetParent : null, + _maybeAdjustScroll = function(offsetParent) { + if (offsetParent != null && offsetParent !== document.body && (offsetParent.scrollTop > 0 || offsetParent.scrollLeft > 0)) { + out.left -= offsetParent.scrollLeft; + out.top -= offsetParent.scrollTop; + } + }.bind(this); + + while (op != null) { + out.left += op.offsetLeft; + out.top += op.offsetTop; + _maybeAdjustScroll(op); + op = relativeToRoot ? op.offsetParent : + op.offsetParent === container ? null : op.offsetParent; + } + + // if container is scrolled and the element (or its offset parent) is not absolute or fixed, adjust accordingly. + if (container != null && !relativeToRoot && (container.scrollTop > 0 || container.scrollLeft > 0)) { + var pp = el.offsetParent != null ? this.getStyle(el.offsetParent, "position") : "static", + p = this.getStyle(el, "position"); + if (p !== "absolute" && p !== "fixed" && pp !== "absolute" && pp !== "fixed") { + out.left -= container.scrollLeft; + out.top -= container.scrollTop; + } + } + return out; + }, + // + // return x+y proportion of the given element's size corresponding to the location of the given event. + // + getPositionOnElement: function (evt, el, zoom) { + var box = typeof el.getBoundingClientRect !== "undefined" ? el.getBoundingClientRect() : { left: 0, top: 0, width: 0, height: 0 }, + body = document.body, + docElem = document.documentElement, + scrollTop = window.pageYOffset || docElem.scrollTop || body.scrollTop, + scrollLeft = window.pageXOffset || docElem.scrollLeft || body.scrollLeft, + clientTop = docElem.clientTop || body.clientTop || 0, + clientLeft = docElem.clientLeft || body.clientLeft || 0, + pst = 0, + psl = 0, + top = box.top + scrollTop - clientTop + (pst * zoom), + left = box.left + scrollLeft - clientLeft + (psl * zoom), + cl = jsPlumb.pageLocation(evt), + w = box.width || (el.offsetWidth * zoom), + h = box.height || (el.offsetHeight * zoom), + x = (cl[0] - left) / w, + y = (cl[1] - top) / h; + + return [ x, y ]; + }, + + /** + * Gets the absolute position of some element as read from the left/top properties in its style. + * @method getAbsolutePosition + * @param {Element} el The element to retrieve the absolute coordinates from. **Note** this is a DOM element, not a selector from the underlying library. + * @return {Number[]} [left, top] pixel values. + */ + getAbsolutePosition: function (el) { + var _one = function (s) { + var ss = el.style[s]; + if (ss) { + return parseFloat(ss.substring(0, ss.length - 2)); + } + }; + return [ _one("left"), _one("top") ]; + }, + + /** + * Sets the absolute position of some element by setting the left/top properties in its style. + * @method setAbsolutePosition + * @param {Element} el The element to set the absolute coordinates on. **Note** this is a DOM element, not a selector from the underlying library. + * @param {Number[]} xy x and y coordinates + * @param {Number[]} [animateFrom] Optional previous xy to animate from. + * @param {Object} [animateOptions] Options for the animation. + */ + setAbsolutePosition: function (el, xy, animateFrom, animateOptions) { + if (animateFrom) { + this.animate(el, { + left: "+=" + (xy[0] - animateFrom[0]), + top: "+=" + (xy[1] - animateFrom[1]) + }, animateOptions); + } + else { + el.style.left = xy[0] + "px"; + el.style.top = xy[1] + "px"; + } + }, + /** + * gets the size for the element, in an array : [ width, height ]. + */ + getSize: function (el) { + return [ el.offsetWidth, el.offsetHeight ]; + }, + getWidth: function (el) { + return el.offsetWidth; + }, + getHeight: function (el) { + return el.offsetHeight; + }, + getRenderMode : function() { return "svg"; }, + draggable : function (el, options) { + var info; + el = _ju.isArray(el) || (el.length != null && !_ju.isString(el)) ? el: [ el ]; + Array.prototype.slice.call(el).forEach(function(_el) { + info = this.info(_el); + if (info.el) { + this._initDraggableIfNecessary(info.el, true, options, info.id, true); + } + }.bind(this)); + return this; + }, + initDraggable: function (el, options, category) { + _getDragManager(this, category).draggable(el, options); + el._jsPlumbDragOptions = options; + }, + destroyDraggable: function (el, category) { + _getDragManager(this, category).destroyDraggable(el); + delete el._jsPlumbDragOptions; + }, + unbindDraggable: function (el, evt, fn, category) { + _getDragManager(this, category).destroyDraggable(el, evt, fn); + }, + setDraggable : function (element, draggable) { + return jsPlumb.each(element, function (el) { + if (this.isDragSupported(el)) { + this._draggableStates[this.getAttribute(el, "id")] = draggable; + this.setElementDraggable(el, draggable); + } + }.bind(this)); + }, + _draggableStates : {}, + /* + * toggles the draggable state of the given element(s). + * el is either an id, or an element object, or a list of ids/element objects. + */ + toggleDraggable : function (el) { + var state; + jsPlumb.each(el, function (el) { + var elId = this.getAttribute(el, "id"); + state = this._draggableStates[elId] == null ? false : this._draggableStates[elId]; + state = !state; + this._draggableStates[elId] = state; + this.setDraggable(el, state); + return state; + }.bind(this)); + return state; + }, + _initDraggableIfNecessary : function (element, isDraggable, dragOptions, id, fireEvent) { + // TODO FIRST: move to DragManager. including as much of the decision to init dragging as possible. + if (!jsPlumb.headless) { + var _draggable = isDraggable == null ? false : isDraggable; + if (_draggable) { + if (jsPlumb.isDragSupported(element, this)) { + var options = dragOptions || this.Defaults.DragOptions; + options = jsPlumb.extend({}, options); // make a copy. + if (!jsPlumb.isAlreadyDraggable(element, this)) { + var dragEvent = jsPlumb.dragEvents.drag, + stopEvent = jsPlumb.dragEvents.stop, + startEvent = jsPlumb.dragEvents.start; + + this.manage(id, element); + + options[startEvent] = _ju.wrap(options[startEvent], _dragStart.bind(this)); + + options[dragEvent] = _ju.wrap(options[dragEvent], _dragMove.bind(this)); + + options[stopEvent] = _ju.wrap(options[stopEvent], _dragStop.bind(this)); + + var elId = this.getId(element); // need ID + + this._draggableStates[elId] = true; + var draggable = this._draggableStates[elId]; + + options.disabled = draggable == null ? false : !draggable; + this.initDraggable(element, options); + this.getDragManager().register(element); + if (fireEvent) { + this.fire("elementDraggable", {el:element, options:options}); + } + } + else { + // already draggable. attach any start, drag or stop listeners to the current Drag. + if (dragOptions.force) { + this.initDraggable(element, options); + } + } + } + } + } + }, + animationSupported:true, + getElement: function (el) { + if (el == null) { + return null; + } + // here we pluck the first entry if el was a list of entries. + // this is not my favourite thing to do, but previous versions of + // jsplumb supported jquery selectors, and it is possible a selector + // will be passed in here. + el = typeof el === "string" ? el : el.length != null && el.enctype == null ? el[0] : el; + return typeof el === "string" ? document.getElementById(el) : el; + }, + removeElement: function (element) { + _getDragManager(this).elementRemoved(element); + this.getEventManager().remove(element); + }, + // + // this adapter supports a rudimentary animation function. no easing is supported. only + // left/top properties are supported. property delta args are expected to be in the form + // + // +=x.xxxx + // + // or + // + // -=x.xxxx + // + doAnimate: function (el, properties, options) { + options = options || {}; + var o = this.getOffset(el), + ap = _animProps(o, properties), + ldist = ap[0] - o.left, + tdist = ap[1] - o.top, + d = options.duration || 250, + step = 15, steps = d / step, + linc = (step / d) * ldist, + tinc = (step / d) * tdist, + idx = 0, + _int = setInterval(function () { + _jp.setPosition(el, { + left: o.left + (linc * (idx + 1)), + top: o.top + (tinc * (idx + 1)) + }); + if (options.step != null) { + options.step(idx, Math.ceil(steps)); + } + idx++; + if (idx >= steps) { + window.clearInterval(_int); + if (options.complete != null) { + options.complete(); + } + } + }, step); + }, + // DRAG/DROP + + + destroyDroppable: function (el, category) { + _getDragManager(this, category).destroyDroppable(el); + }, + unbindDroppable: function (el, evt, fn, category) { + _getDragManager(this, category).destroyDroppable(el, evt, fn); + }, + + droppable :function(el, options) { + el = _ju.isArray(el) || (el.length != null && !_ju.isString(el)) ? el: [ el ]; + var info; + options = options || {}; + options.allowLoopback = false; + Array.prototype.slice.call(el).forEach(function(_el) { + info = this.info(_el); + if (info.el) { + this.initDroppable(info.el, options); + } + }.bind(this)); + return this; + }, + + initDroppable: function (el, options, category) { + _getDragManager(this, category).droppable(el, options); + }, + isAlreadyDraggable: function (el) { + return el._katavorioDrag != null; + }, + isDragSupported: function (el, options) { + return true; + }, + isDropSupported: function (el, options) { + return true; + }, + isElementDraggable: function (el) { + el = _jp.getElement(el); + return el._katavorioDrag && el._katavorioDrag.isEnabled(); + }, + getDragObject: function (eventArgs) { + return eventArgs[0].drag.getDragElement(); + }, + getDragScope: function (el) { + return el._katavorioDrag && el._katavorioDrag.scopes.join(" ") || ""; + }, + getDropEvent: function (args) { + return args[0].e; + }, + getUIPosition: function (eventArgs, zoom) { + // here the position reported to us by Katavorio is relative to the element's offsetParent. For top + // level nodes that is fine, but if we have a nested draggable then its offsetParent is actually + // not going to be the jsplumb container; it's going to be some child of that element. In that case + // we want to adjust the UI position to account for the offsetParent's position relative to the Container + // origin. + var el = eventArgs[0].el; + if (el.offsetParent == null) { + return null; + } + var finalPos = eventArgs[0].finalPos || eventArgs[0].pos; + var p = { left:finalPos[0], top:finalPos[1] }; + if (el._katavorioDrag && el.offsetParent !== this.getContainer()) { + var oc = this.getOffset(el.offsetParent); + p.left += oc.left; + p.top += oc.top; + } + return p; + }, + setDragFilter: function (el, filter, _exclude) { + if (el._katavorioDrag) { + el._katavorioDrag.setFilter(filter, _exclude); + } + }, + setElementDraggable: function (el, draggable) { + el = _jp.getElement(el); + if (el._katavorioDrag) { + el._katavorioDrag.setEnabled(draggable); + } + }, + setDragScope: function (el, scope) { + if (el._katavorioDrag) { + el._katavorioDrag.k.setDragScope(el, scope); + } + }, + setDropScope:function(el, scope) { + if (el._katavorioDrop && el._katavorioDrop.length > 0) { + el._katavorioDrop[0].k.setDropScope(el, scope); + } + }, + addToPosse:function(el, spec) { + var specs = Array.prototype.slice.call(arguments, 1); + var dm = _getDragManager(this); + _jp.each(el, function(_el) { + _el = [ _jp.getElement(_el) ]; + _el.push.apply(_el, specs ); + dm.addToPosse.apply(dm, _el); + }); + }, + setPosse:function(el, spec) { + var specs = Array.prototype.slice.call(arguments, 1); + var dm = _getDragManager(this); + _jp.each(el, function(_el) { + _el = [ _jp.getElement(_el) ]; + _el.push.apply(_el, specs ); + dm.setPosse.apply(dm, _el); + }); + }, + removeFromPosse:function(el, posseId) { + var specs = Array.prototype.slice.call(arguments, 1); + var dm = _getDragManager(this); + _jp.each(el, function(_el) { + _el = [ _jp.getElement(_el) ]; + _el.push.apply(_el, specs ); + dm.removeFromPosse.apply(dm, _el); + }); + }, + removeFromAllPosses:function(el) { + var dm = _getDragManager(this); + _jp.each(el, function(_el) { dm.removeFromAllPosses(_jp.getElement(_el)); }); + }, + setPosseState:function(el, posseId, state) { + var dm = _getDragManager(this); + _jp.each(el, function(_el) { dm.setPosseState(_jp.getElement(_el), posseId, state); }); + }, + dragEvents: { + 'start': 'start', 'stop': 'stop', 'drag': 'drag', 'step': 'step', + 'over': 'over', 'out': 'out', 'drop': 'drop', 'complete': 'complete', + 'beforeStart':'beforeStart' + }, + animEvents: { + 'step': "step", 'complete': 'complete' + }, + stopDrag: function (el) { + if (el._katavorioDrag) { + el._katavorioDrag.abort(); + } + }, + addToDragSelection: function (spec) { + _getDragManager(this).select(spec); + }, + removeFromDragSelection: function (spec) { + _getDragManager(this).deselect(spec); + }, + clearDragSelection: function () { + _getDragManager(this).deselectAll(); + }, + trigger: function (el, event, originalEvent, payload) { + this.getEventManager().trigger(el, event, originalEvent, payload); + }, + doReset:function() { + // look for katavorio instances and reset each one if found. + for (var key in this) { + if (key.indexOf("_katavorio_") === 0) { + this[key].reset(); + } + } + }, + getEventManager:function() { + return _getEventManager(this); + }, + on : function(el, event, callback) { + // TODO: here we would like to map the tap event if we know its + // an internal bind to a click. we have to know its internal because only + // then can we be sure that the UP event wont be consumed (tap is a synthesized + // event from a mousedown followed by a mouseup). + //event = { "click":"tap", "dblclick":"dbltap"}[event] || event; + this.getEventManager().on.apply(this, arguments); + return this; + }, + off : function(el, event, callback) { + this.getEventManager().off.apply(this, arguments); + return this; + } + + }); + + var ready = function (f) { + var _do = function () { + if (/complete|loaded|interactive/.test(document.readyState) && typeof(document.body) !== "undefined" && document.body != null) { + f(); + } + else { + setTimeout(_do, 9); + } + }; + + _do(); + }; + ready(_jp.init); + +}).call(typeof window !== 'undefined' ? window : this); diff --git a/simulation/js/main.js b/simulation/js/main.js new file mode 100644 index 0000000..4dbe1cf --- /dev/null +++ b/simulation/js/main.js @@ -0,0 +1 @@ +//Your JavaScript goes in here diff --git a/simulation/js/monostablecal.js b/simulation/js/monostablecal.js new file mode 100644 index 0000000..3b6ae22 --- /dev/null +++ b/simulation/js/monostablecal.js @@ -0,0 +1,300 @@ +var rlslider,cldslider; + + +function resChange() { + rlslider = document.getElementById("res1").value; + document.getElementById("res").value = rlslider; +} + +function capldChange() { + cldslider = document.getElementById("capa1").value; + document.getElementById("capac1").value = cldslider; +} + +function vinChange(){ + var vi=document.getElementById("vdc").value; + document.getElementById("dc").value=vi; + +} +function tinChange(){ + var tinp=document.getElementById("tinrange").value; + document.getElementById("timeprdata").value=tinp; +} + + var r1; + var c1; + var vcc; + + var tin=20; //ms + var tout;//ms //pulse width + var datapoints=[]; + var datapoints1=[]; + var datapoints2=[]; + var to=tin; + var toff; + + function voutput(){ + + + vcc=document.getElementById("dc").value; + var vo=vcc; + toff=0.25*tin; + r1=document.getElementById("res").value*Math.pow(10,3); + c1=document.getElementById("capac1").value*Math.pow(10,-6); + tout=1.1*parseFloat(r1)*parseFloat(c1)*Math.pow(10,3);//ms //pulse width + + var i,j=0; + + + for(i=0;i<=3;i=i+1){ + for(j=0;j<=to;j=j+0.1){ + if(j<(tout)){ //11ms + + datapoints.push({x:j+(to*i),y:parseInt(vcc)}); + + } + else if(j<to){ //20ms + + datapoints.push({x:j+(to*i),y:0}); + + } + } + } + console.log(datapoints); + + //plot1(); //output + vcapacitor(); + for(i=0;i<=3;i=i+1){ + for(j=0;j<=to;j=j+0.1){ + if(j<(toff)){ //5ms + + datapoints1.push({x:j+(to*i),y:0}); + + } + else if(j<tin){ //20ms + + datapoints1.push({x:j+(to*i),y:parseInt(vcc)}); + + } + } + } + console.log(datapoints1); + + //plot2();//input*/ + document.getElementById("toff").value=toff; + document.getElementById("tout").value=tout; + document.getElementById("voutput").value=vo; + + } + + function vcapacitor(){ + + for(i=0;i<=3;i=i+1){ + var ct=tin*Math.pow(10,-3); + + for(var j=0.1*Math.pow(10,-3);j<=ct;j=j+(0.1*Math.pow(10,-3))){ + if(j<(tout*Math.pow(10,-3))){ + var vc=vcc*(1-Math.exp(-(j)/((r1)*c1*1))); + datapoints2.push({x:(j+(ct*i))*Math.pow(10,3),y:parseFloat(vc)}); + + } + else if(j<to){ + + datapoints2.push({x:(j+(ct*i))*Math.pow(10,3),y:0}); + + } + } + + } + console.log(datapoints2); + //plotcapacitor(); + + //alert(ct); //11ms // + } + function showDiv(){ + var w = document.getElementById("graphplot").options[document.getElementById("graphplot").selectedIndex].value; + if(w==0){ + document.getElementById("demo").innerHTML = "Choose to plot"; + document.getElementById("graphplot").style.borderColor = "red"; + } + else if(w==1){ + document.getElementById("demo").innerHTML = "Trigger input voltage"; + //document.getElementById("demo").style.borderColor = "green"; + document.getElementById('chartContainer').style.display = "block"; + document.getElementById('chartContainers').style.display = "none"; + document.getElementById("chartContainers").innerHTML = ""; + document.getElementById('chartContainerc').style.display = "none"; + document.getElementById("chartContainerc").innerHTML = ""; + plotinput(); + + //dataPoints = []; + } + else if(w==2){ + document.getElementById("demo").innerHTML = "Output voltage"; + document.getElementById('chartContainers').style.display = "block"; + document.getElementById('chartContainer').style.display = "none"; + document.getElementById("chartContainer").innerHTML = ""; + document.getElementById('chartContainerc').style.display = "none"; + document.getElementById("chartContainerc").innerHTML = ""; + + + //dataPointsth = []; + plotoutput(); + } + else if(w==3){ + document.getElementById("demo").innerHTML = "Capacitor voltage"; + document.getElementById('chartContainerc').style.display = "block"; + document.getElementById('chartContainer').style.display = "none"; + document.getElementById("chartContainer").innerHTML = ""; + document.getElementById('chartContainers').style.display = "none"; + document.getElementById("chartContainers").innerHTML = ""; + + //dataPointsth = []; + plotcapacitor(); + } + } + + +var chart,charts,chartc; + +function plotoutput(){ + chart = new CanvasJS.Chart("chartContainers", { + theme: "theme1", //theme1 + // backgroundColor: "#bdf5bd", + title: { + text: "" + }, + // animationEnabled: true, + // change to true + legend: { + verticalAlign: "bottom", + horizontalAlign: "center", + }, + axisX: { + title: " Vout Time (ms) ", + //valueFormatString: "#,##0.##", + //labelFormatter: addSymbols, + //includeZero: false, + }, + axisY: { + title: "Output Voltage (V)", + }, + data: [ + { + type: "stepLine", + + dataPoints: datapoints + } + ] + }); + + chart.render(); + +} + + +function plotinput(){ +charts = new CanvasJS.Chart("chartContainer", { + theme: "theme1", //theme1 + // backgroundColor: "#bdf5bd", + title: { + text: "" + }, + // animationEnabled: true, + // change to true + legend: { + verticalAlign: "bottom", + horizontalAlign: "center", + }, + axisX: { + title: " Vin Time (ms) ", + //valueFormatString: "#,##0.##", + //labelFormatter: addSymbols, + //includeZero: false, + }, + axisY: { + title: "Trigger input Voltage (V)", + }, + data: [ + { + type: "stepLine", + + dataPoints: datapoints1 + } + ] + }); + + charts.render(); + + // document.getElementById("demos").innerHTML = "Print It <br><br>Take another sets of readings for different R1 and Rf"; + +} + +function plotcapacitor(){ +chartc = new CanvasJS.Chart("chartContainerc", { + theme: "theme1", //theme1 + // backgroundColor: "#bdf5bd", + title: { + text: "" + }, + // animationEnabled: true, + // change to true + legend: { + verticalAlign: "bottom", + horizontalAlign: "center", + }, + axisX: { + title: "Time (ms) ", + //valueFormatString: "#,##0.##", + //labelFormatter: addSymbols, + //includeZero: false, + }, + axisY: { + title: "Capacitor Voltage (Vc)", + }, + data: [ + { + type: "spline", + + dataPoints: datapoints2 + } + ] + }); + + chartc.render(); + + // document.getElementById("demos").innerHTML = "Print It <br><br>Take another sets of readings for different R1 and Rf"; + +} +//--------------------clear all data-----------------------------------// + +function cleard(){ + + + dataPoints = []; + dataPoints1 = []; + dataPoints2 = []; +//--------------------------text box clearing---------------------------// + + document.getElementById("res1").value=""; + document.getElementById("res").value="" ; + document.getElementById("capa1").value=""; + document.getElementById("capac1").value = "";; + document.getElementById("vdc").value=""; + document.getElementById("dc").value=""; + document.getElementById("tinrange").value=""; + document.getElementById("timeprdata").value=""; + document.getElementById("toff").value=""; + document.getElementById("tout").value=""; + document.getElementById("voutput").value=""; + + document.getElementById("demo").innerHTML = ""; + document.getElementById("demos").innerHTML = ""; + + + document.getElementById("chartContainer").innerHTML = ""; + document.getElementById("chartContainers").innerHTML = ""; + document.getElementById("chartContainerc").innerHTML = ""; + +} + \ No newline at end of file diff --git a/simulation/littledot.png b/simulation/littledot.png new file mode 100644 index 0000000000000000000000000000000000000000..d3becf40c78fedbf357b33622e7105d16e83d12a GIT binary patch literal 1289 zcmV+k1@`)hP)<h;3K|Lk000e1NJLTq0015U0015c1^@s6J20-I00001b5ch_0Itp) z=>Px#24YJ`L;%JBSpXgebdFd6000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2igS? z6gfEBA#;uZ000?uMObu0Z*6U5Zgc=ca%Ew3Wn>_CX>@2HM@dakSAh-}000DJNkl<Z zNXN}rL2nyH6#iy**RB&ganux{kW?j<BGEKaZi#3E5(t3={D!C(Bn}k^E?nrbQV-lX z<N`Tz;RkTx0F@G?Ktu#wP$D%l0jh*JspHtY^WN)W-a6}*-K4FMur%7)_3nK8eeaw1 z-WojJ&*aYKSr<6%zSHiPv%X091b_yB&CK(F0)TU%@-)C%Fst_lI?`)UFa|(6T;^I| z@bDCtp^gYZ5kNslq%QykO8~?=+IsGE^km<UvDJkO0L}pz08j=n2%x0b(q|oj7Jy>_ zM*tcCntCmLF+PoPDsP|+2LKEMr~;_odi~|uH?KT5H!)nAt`y9qOX9eG)T(Xo9c_HK zxx2cw_V+q~x{d=~tKG|VrUz)KOa}ps02uw?+Ssd~ymfW)()r4~2!n~hlz@^1>=KZR z;gSUR|81;%@#A01-)<fL4qz9+zN!$bGN}nWaYDv0k;*v&;KHqi%dg#jZ|3gk(BP#Y z3}K9VO8gou3}HVik)2o=A9!1sHrM}Y?PcOmd9ww5B(4A$egEq7*FJl9>TV&5iZ%!l zL<JZT4<rm>0t*8~NR@zaICDO_v3=NH+d4?<8MAf8+UBGV6}Swb`tia`i`Jl+0<lX# z!VpMGSebVYfB~#E#Sdqyi|UQCt{G-SYcrr(Cl7u!e{ptvxHvD&U?vZm#NZ@>kb|&O z)&dp*L?C(u1Y_lJ{^r#1ta_!8+5ZOFNk-}dfYKW;R_BBWOim4?z&d9l5IG1Fppr`( zZ>4{IyfmkNNr5|9VNUAQT<6Bhg=r${7|9R;#sUzPoz&e9Oavi<SI2_`z}R3gt$RMo zkwh=x06<s{d7Q~-KVgQkCs7gc@^=(re-tK&keAy4<;ad_Qf*)0t{*uEV+@1?h-JVS z7^BaLXO=Q0Wlhe3iBC3-Ia_s-OtN=}$L(4bG6@?%Y~X=m0OL(0LJ$&V?!fGspV%8{ z#9Y(FLHWwn3pfGL+TK6js6=+sScX_qV1JiroQ2uT%>;I?BXJs%og>=NoSo!>Z7z?J zrnlqo?;oy`i$RHZGbKJPI+vd7(K(QF-pMAL6b1Kc%~dTPv98_03i?!~X#GK}`Od}C z<#L1x?^N;IMos1A^;@Vbm^$4#ax0(yu=_QDJpd0igQfYpD|3nd(bm#dU)rcIJI8HF z6NvMBnwh}NURq`6ldeZ4miE#w^<}M6jXY?+NaWibvvrU(jgifn3&k7Ony~Xvmt&1y z^Ts2R_E*0h-2Uc|#?KkHt;ba-^e~#NKWOjO9=f$xMhc^qqMh(qCIfCdY<C)N<@2BR z?<nZ5GHzyyg!Jn&O|DpUH3B!MhGwt7Ffcb(4yT6-!6bv@M$EOH25sE?v$^`^uZQ_Y zpqZ0d9@pOH3r0ytSw|^TZIJQBvBtBZ^Q@cm-Dh9me$8G{=e?S}L|-7^?Dg!m&41k9 zO278jJVQfoa?QN-0F(dSC(K!a&+^O@eYiaWw!+F~Yx3bv00000NkvXXu0mjfA8=27 literal 0 HcmV?d00001 diff --git a/simulation/monostable_multivibrator.html b/simulation/monostable_multivibrator.html new file mode 100644 index 0000000..9a9b818 --- /dev/null +++ b/simulation/monostable_multivibrator.html @@ -0,0 +1,184 @@ + +<!--DOCTYPE html> +<!--Document Name:monostable.html + Author:Sukriti---> +<html> + <head> + <title>Monostable Multivibrator using 555</title> + <meta charset="windows-1252"> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <script type="text/javascript" async + src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-AMS-MML_HTMLorMML"> +</script> + + +<!---- library file -----> + <script src="./js/canvasjs.min.js"></script> + <script class="include" type="text/javascript" src="./js/jquery_files/jquery.min.js"></script> + <script class="include" type="text/javascript" src="./js/jquery_files/jquery.jqplot.min.js"></script> + + <script src="./js/graph.ob.js"></script> + <script src="./js/graph_use.ob.js"></script> + <!--script src="https://d3js.org/d3.v5.min.js"></script--> +<!--------------------------> + + + + <link rel="stylesheet" type="text/css" href="./css/monostable_astable.css"> + + <link rel="stylesheet" href="./css/cktconnection_monostable.css"> + + + + </head> + <body data-demo-id="animation"; style="width:100%"> + <header class="default" id="experiment-header"> + <!--div class="logo" id="experiment-header-logo" style="text-align:center"> + + <img src="./image/logo.jpg" style="height:150px;width:1075px;"></div--> + </header> + + <div id="dialogoverlay"></div> + <div id="dialogbox"> + <div> + <div id="dialogboxhead"></div> + <div id="dialogboxbody"></div> + <div id="dialogboxfoot"></div> + </div> + </div> + <!--div class="jtk-demo-main" --> + <!-- demo --> + + <div id="whole_body" style=" background-color:white;position:relative; margin-left:auto; margin-right:auto; top:0px;height:930px; width:1075px;"> + <div style="font-size:30px; text-align:center;padding-right:50px; height:60px"> <b> </b></div> + + <div id="ckt_values1" style="left: 220px; position: relative; top: 20px;"> + <p> + <img src="images/monostable.png" width=350px; height=350px;/> + + +<div class="jtk-demo-canvas canvas-wide animation-demo jtk-surface jtk-surface-nopan" id="canvas"> + <div class="littledot" id="ld1"></br><a href="#" class="cmdLink detach" rel="ld1"></a></div> + <div class="littledot" id="ld2"></br><a href="#" class="cmdLink detach" rel="ld2"></a></div> + <div class="littledot" id="ld3"></br><a href="#" class="cmdLink detach" rel="ld3"></a></div> + <div class="littledot" id="ld4"></br><a href="#" class="cmdLink detach" rel="ld4"></a></div> + <div class="littledot" id="ld5"></br><a href="#" class="cmdLink detach" rel="ld5"></a></div> + <div class="littledot" id="ld6"></br><a href="#" class="cmdLink detach" rel="ld6"></a></div> + <div class="littledot" id="ld7"></br><a href="#" class="cmdLink detach" rel="ld7"></a></div> + <div class="littledot" id="ld8"></br><a href="#" class="cmdLink detach" rel="ld8"></a></div> + <div class="littledot" id="ld9"></br><a href="#" class="cmdLink detach" rel="ld9">9</a></div> + <div class="littledot" id="ld10"></br><a href="#" class="cmdLink detach" rel="ld10">10</a></div> + <div class="littledot" id="ld11"></br><a href="#" class="cmdLink detach" rel="ld11">11</a></div> + <div class="littledot" id="ld12"></br><a href="#" class="cmdLink detach" rel="ld12">12</a></div> + <div class="littledot" id="ld13"></br><a href="#" class="cmdLink detach" rel="ld13">13</a></div> + <div class="littledot" id="ld14"></br><a href="#" class="cmdLink detach" rel="ld14">14</a></div> + <div class="littledot" id="ld15"></br><a href="#" class="cmdLink detach" rel="ld15">15</a></div> + <div class="littledot" id="ld16"></br><a href="#" class="cmdLink detach" rel="ld16">16</a></div> + <div class="littledot" id="ld17"></br><a href="#" class="cmdLink detach" rel="ld17">17</a></div> + +</div> +<script src="./js/jsplumb1.js"></script> + + + + + <input type="text" value="" id="dc" placeholder="Volt" style="background-color:#e6f5ff;position:absolute; top:20px; left:100px; width:50px" readonly/> + <input type ="text" value="" id="capac1" placeholder="Capacitance" style="background-color:#e6f5ff;position:absolute; top:240px; left:-30px; width:40px"readonly /> + <input type ="text" value="" id="res" placeholder="Resistance" style="background-color:#e6f5ff;position:absolute; top:110px; left:-20px; width:40px"readonly /> + <input type="number" value="" id ='voutput' placeholder="output Volt" style="background-color:#e6f5ff;position:absolute; top:152px; right:635px; width:70px" readonly/> + <input type="number" value="" id ='timeprdata' placeholder="Time period" style="background-color:#e6f5ff;position:absolute; top:152px; right:635px; width:70px" readonly/> + <input type="text" value="" id='tout' placeholder="Tout" style="background-color:#e6f5ff;position:absolute; top:212px; right:635px; width:70px" readonly/> + <input type="text" value="" id='toff' placeholder="Toff" style="background-color:#e6f5ff;position:absolute; top:242px; right:635px; width:70px" readonly/> + + </div><!---div ckt---> + + <div id="cntrwrap" style="position:absolute;border: 2px solid #3385ff; top:50px;width:380px;height:170px;right:12px;"> + + <div id="cntrlr" style="position:absolute; background-color:#3385ff; height:50px; top:0px; right:0px; width:380px;font-size: 16px;font-weight: bold;"><p style="text-align:center;padding-right:210px;color:white"><b>CONTROLS</b></p> + </div> + + + + + <div id="slide" style=" position:absolute; top:60px; right:0px; width:380px; border-radius: 10px;"> + +    Resistance (R<sub>a</sub>) : <input type="range" name="resis" id="res1" min="1" max="10" step="1" value="1" oninput="resChange()" style="width:150px;cursor:pointer;"> kΩ<br> +    Capacitance (C) : <input type="range" name="capa" id="capa1" min="1" max="10" step="1" value="1" oninput="capldChange()" style="width:150px;cursor:pointer;"> µf<br> +    Supply voltage (V<sub>cc</sub>) :     <input type="range" name="inpdc" id="vdc" min="0" max="15" step="1" value="0" oninput="vinChange()" style="width:130px;cursor:pointer;"> Volt<br> +    Time period (T<sub>in</sub>) :     <input type="range" name="timeprange" id="tinrange" min="10" max="100" step="10" value="0" oninput="tinChange()" style="width:150px;cursor:pointer;"> mSec<br> + + <br> + + <input type="button" id="clr" value="Clear" onclick="cleard()" disabled="true" style="position:absolute; top:120px; width:100px; right:30px;cursor:pointer; " /> +<button type="button" onclick="voutput()" id ="calculte" disabled="true" style="position:absolute; top:120px; width:100px; right:280px;cursor:pointer; "/> Calculate </button> + + <select name="graphplot" id="graphplot" disabled="true" onclick="showDiv()" style="cursor: pointer; background-color:#85D2EE;position:absolute; right:140px; width:127px"> + <option value="0">Plot</option> +<option value="1" >Trigger input voltage</option> +<option value="2">Output Voltage</option> +<option value="3">Capacitor Voltage</option> +</select><br> + <button id="check-button" style="position:absolute; top:160px; width:100px; right:140px;cursor:pointer; ">Check connection</button> + <button id="delete-connct" onclick="deleteconnection()" style="position:absolute; top:160px; width:100px; right:30px;cursor:pointer; ">Delete all connection</button> + <!--input id="reset" type="reset" onclick="window.location.href = 'index.html';" value="Reset"--> + + </div> + </div> + <div id="msg" style="position:absolute;top:350px;right:50px;width:270px;height:150px;"> + <p id="demo" style="color:red;"></p> + <p id="demos" style="color:green;"></p> + + </div> + + <div id="description" style="background-color: #3385ff; position:absolute; top:50px; left:10px; width:307px;font-size: 16px;font-weight: bold;"> + + + <div class="dropdown"> + <p style="text-align:center;padding-right:150px;color:white"> INSTRUCTION</p> + <div class="dropdown-content"> + <ol type="1"> + <li>Connect the components as mentioned below:<br> + L1-L12, L14-L12, L16-L12, L4-L9, L8-L9, L9-L10, L3-L17, L11-L13, L7-L11, L6-L13, L5-L15.(For eg. click on 1 and then drag to 12 and so on.)</li> + <li> Click on 'Check Connection' button to check the connections.</li> + <li> If connected wrong, click on the wrong connection. Else click on 'Delete all connection' button to erase all the connections. </li> + <li>Intially set R <sub>a</sub>=10 kΩ, C=1 µf, V<sub>cc</sub>=5 V, T<sub>in</sub> = 20 msec. </li> + <li> Click on "Calculate" button.</li> + <li>Now note the output voltage. </li> + <li>Click on "Plot" button to plot, Trigger Input Voltage, Output Voltage, Capacitance Voltage</li> + <li>Click on "Clear" button to clear the data.</li> + <li>Repeat the experiment for another set of resistance value and capacitance value. </li> + <li>Set the Resistance (R <sub>a</sub>) value (1 kΩ - 10 kΩ).</li> + <li>Set the Capacitance (C) value .</li> + <li>Set supply voltage (V<sub>cc</sub>).</li> + + </ol> + + </div> + </div> + </div> + + + <div id="grpwrap" style="position:absolute;border: 2px solid #3385ff; top:550px;width:1050px;height:360px;left:10px"> + <div style="position:absolute; font-size:16px; top:0px;left:0px; height:50px;background-color:#3385ff; width:1050px;font-weight: bold;"><p> <b style="text-align:center;padding-right:910px;color:white"> GRAPH PLOT</b></p> + <div class="tooltip" ><button id="calci" onclick="printf()" style="position:absolute;padding-right:40px; cursor:pointer;top:13px;right:20px;width:5px;height:25px;border:none; background-color:#3385ff;"> + <img src="./images/Print Filled.png" alt="Save icon" style="width:20px;height:20px;top:13px;"/></button> + <span class="tooltiptext">Print</span></div> + + + <div id="chartContainer" style="display:block;position:absolute; top:50px; left:0px; height:300px; width:1050px;"> </div><!---output voltage--> + <div id="chartContainers" style="display:block;position:absolute; top:50px; left:0px; height:300px; width:1050px;"> </div><!--trigger input voltage-----> + <div id="chartContainerc" style="display:block;position:absolute; top:50px; left:0px; height:300px; width:1050px;"> </div><!-- capacitor voltage--> + </div> + + <div id="lab-footer" style="height:20px;width:1310px;text-align: center;padding:bottom"> + <div style="margin-left:40%; margin-right:40% "> + Copyright © 2011 Indian Institute of Technology Kharagpur,<a href="license/index.html" target="_blank" style="margin:auto"> Licensing Terms </a> + </div> + </div> + <script src="./js/monostablecal.js"></script> + + <script src="./js/cktconnection_monostable.js"></script> + + <script src="../assets/js/iframeResize.js"></script></body> + +</html> diff --git a/sw.js b/sw.js new file mode 100644 index 0000000..8aa3392 --- /dev/null +++ b/sw.js @@ -0,0 +1,15 @@ +importScripts('https://storage.googleapis.com/workbox-cdn/releases/6.2.0/workbox-sw.js'); + +workbox.precaching.precacheAndRoute([{"revision":"7cc40c199d128af6b01e74a28c5900b0","url":"assets/css/bootstrap.min.css"},{"revision":"b1e92a5593c58e6832c7f6dce30a06ce","url":"assets/css/common-styles-responsive.css"},{"revision":"77f3d6639e02a6b774981b1ad75806f5","url":"assets/css/common-styles.css"},{"revision":"22d85286c513f3d4038c42b486ea1bf6","url":"assets/css/fontawesome.min.css"},{"revision":"613745964e452941615d4e3d1a387ab7","url":"assets/css/github-markdown.min.css"},{"revision":"a394012067cf46c79ab70d75f9caf500","url":"assets/css/katex.min.css"},{"revision":"6d9501ec2a9a6e52b90a8d27340202b6","url":"assets/css/vlabs-style.css"},{"revision":"269550530cc127b6aa5a35925a7de6ce","url":"assets/fonts/font-awesome-4.7.0/css/font-awesome.min.css"},{"revision":"912ec66d7572ff821749319396470bde","url":"assets/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.svg"},{"revision":"ff2be0cf35ad764cfcc9779f148aa8ac","url":"assets/images/favicon.png"},{"revision":"59cbb9b31115938b15a1786dcedd7796","url":"assets/images/logo-new.png"},{"revision":"97524ffa51690acdcb0e54a4f5b8502a","url":"assets/images/logo.png"},{"revision":"7d45f6653f4b7219600292be2d83f1b4","url":"assets/images/popout.png"},{"revision":"7924fe35ba7c22ce467efd504cce93d7","url":"assets/images/vlabs-color-small-moe.jpg"},{"revision":"cd2bcc63369f82702340cbc2281c38d1","url":"assets/js/assessment_v2.js"},{"revision":"0c6c2d6c8bd1ff223774dc9689ee7788","url":"assets/js/assessment.js"},{"revision":"315a02d258e75a35cd6575839161db03","url":"assets/js/event-handler.js"},{"revision":"0f6278fc4d074348edaba4042b4dd1f8","url":"assets/js/iframeResize.js"},{"revision":"4ae9cbf2f402c4a1dde3d8f0e3e8cf1b","url":"assets/js/instruction-box.js"},{"revision":"d9b11ca4d877c327889805b73bb79edd","url":"assets/js/jquery-3.4.1.slim.min.js"},{"revision":"bc2456c37c311bbdd25f4f54e0e8d1b9","url":"assets/js/toggleSidebar.js"},{"revision":"30ef592489ce0ac84ab367ce9eb0d597","url":"assets/js/webcomponents-loader.min.js"},{"revision":"0f2e317d41fb69dfb0270dbdf749e380","url":"assets/js/zero-md.min.js"},{"revision":"caf1062309e21ed583d00d24cac20912","url":"assets/katex_assets/katex.min.css"},{"revision":"47df049100c184c9a846c2ae3bf03b70","url":"contributors.html"},{"revision":"7d69a5a1634a8ac389a6873c7b4a3528","url":"feedback.html"},{"revision":"1493414fc582b560c9184b8a573fbf99","url":"images/mono_ckt_th.png"},{"revision":"4880eee39d4ec1d00cb39e98be4ba048","url":"images/monostable_prc.png"},{"revision":"97d465c18332e89237b81a1b2e56cdc5","url":"images/outputwavfrm_mono.png"},{"revision":"ba0b6e3362d40f33b60ff78e69ef849e","url":"images/pin-configuration-555-timer-8-pin.png"},{"revision":"7039380ac5ee24d9bcdba6e162c1ff62","url":"images/post_quiz1.png"},{"revision":"a379b02265da58f4a2a7ab204727c8c3","url":"index.html"},{"revision":"2ee6545e3fb65d07e7419214e91ff082","url":"performance-report.html"},{"revision":"914e243a5d6373b22585e9bdd0c25eef","url":"plugins/svc-rating/checkEventSubmission.js"},{"revision":"e99077e253b07129d0b9755e6a06f93f","url":"plugins/svc-rating/config.js"},{"revision":"40bc0d089f560247a1bfb0cd151232ad","url":"plugins/svc-rating/imageData.js"},{"revision":"a47af25e8d8500c59a6c26bac42a0cd9","url":"plugins/svc-rating/images/empty-star.svg"},{"revision":"6ad37561267a21d6bcb558f9c7c3fe8a","url":"plugins/svc-rating/images/half-star.svg"},{"revision":"7924fe35ba7c22ce467efd504cce93d7","url":"plugins/svc-rating/images/logo.jpg"},{"revision":"f2be5f1d57e0a2c690e34cf9095bed16","url":"plugins/svc-rating/images/mobile_rating_icon.png"},{"revision":"17c8ce8f2faa7937f7978a4dfb69df3a","url":"plugins/svc-rating/images/mobile-icon.svg"},{"revision":"96102a862f070a61a20193b621188ef3","url":"plugins/svc-rating/images/star.svg"},{"revision":"e083f28aa9e5a670a2e5de02197c261f","url":"plugins/svc-rating/index.html"},{"revision":"db18c05646b11f1fa66ef3ebb87116ca","url":"plugins/svc-rating/index.js"},{"revision":"fdc8b6772fb88081e86497fd2f75e20b","url":"plugins/svc-rating/package-lock.json"},{"revision":"7039ff00a75fd32443048e6ed0020a91","url":"plugins/svc-rating/package.json"},{"revision":"1ed592c19b20d396536ebd3611f3ef40","url":"plugins/svc-rating/rating-display.js"},{"revision":"0267f54f7993bcd47793dd7f7be56c92","url":"plugins/svc-rating/rating-submit.js"},{"revision":"57e53998ce85ab911eea27fdc421480d","url":"plugins/svc-rating/rating.js"},{"revision":"1bb81f97b0723bfdd89184d485a0ecad","url":"plugins/tool-performance/config.json"},{"revision":"3062d3749c84c5dc3fc7013e11376fce","url":"plugins/tool-performance/css/main.css"},{"revision":"8ec7b430663c34b8e9882c923e34e86e","url":"plugins/tool-performance/index.html"},{"revision":"6fc8455688b00e5dd6d392b61743473a","url":"plugins/tool-performance/js/api/gsc.js"},{"revision":"d62937417a11fee561c78bf3b145d85d","url":"plugins/tool-performance/js/api/lighthouse.js"},{"revision":"d42b124fa3c85371ea563f49f38e5a3d","url":"plugins/tool-performance/js/commonData.js"},{"revision":"11e328184e68c05f60030c19aa4efca9","url":"plugins/tool-performance/js/main.js"},{"revision":"66d4aa241bb986851066c1684270d236","url":"plugins/tool-performance/js/parse.js"},{"revision":"3f82067c934ff332a430c76f9e37b260","url":"plugins/tool-performance/js/populate/gsc.js"},{"revision":"9e183c67dc9157cd26b8a076ccf04d69","url":"plugins/tool-performance/js/populate/lighthouse.js"},{"revision":"1709dc5f9149e869449dcb2b7a8b3a20","url":"plugins/tool-performance/js/util.js"},{"revision":"1bb81f97b0723bfdd89184d485a0ecad","url":"plugins/tool-validation/config.json"},{"revision":"95c086500b7a5941bd950f22c888cc41","url":"plugins/tool-validation/css/main.css"},{"revision":"8c8a8e5422cc687a53deffd1326e5556","url":"plugins/tool-validation/index.html"},{"revision":"a35ebe17ce73daf38433381fbe0071de","url":"plugins/tool-validation/js/link_validation.js"},{"revision":"acc595e531160409a0194bf7190696d0","url":"plugins/tool-validation/js/main.js"},{"revision":"49049daf46cd95b6d8754b4df6cd57b2","url":"plugins/tool-validation/package-lock.json"},{"revision":"3e614b98b80bb07eef3338b563d697af","url":"plugins/tool-validation/package.json"},{"revision":"8152d158177e7b9c7d9c230120270557","url":"posttest.html"},{"revision":"c413e25edddcc28ea285246cfdb26634","url":"posttest.json"},{"revision":"7e407d01a0373ef5a61a80927161b359","url":"pretest.html"},{"revision":"ab4359dc88e84c504c67d7987551d11e","url":"pretest.json"},{"revision":"e2ca2766ecd0cf445c5c3a47cca51478","url":"procedure.html"},{"revision":"f3ddabea9d05b19bc82998b0b27ae8ef","url":"references.html"},{"revision":"813118278266960c952082469a57199c","url":"simulation.html"},{"revision":"2c1c5bf87cf1ba2606905ed057982cbf","url":"simulation/css/cktconnection_monostable.css"},{"revision":"32c98a7488a20909017a578b74087c85","url":"simulation/css/main.css"},{"revision":"a20b424f245f5c1fe1ad8fc3f6961d7c","url":"simulation/css/monostable_astable.css"},{"revision":"a0da52d711b8d4def8e0953b88818746","url":"simulation/css/simulationtabcss.css"},{"revision":"ef00981ac164fccf7bd67d6695e939e1","url":"simulation/images/monostable.png"},{"revision":"1efa9140ddf6bafc8779c1b0a8a614d9","url":"simulation/images/Print Filled.png"},{"revision":"1d4800549d721dd40a18d92733306ec8","url":"simulation/index.html"},{"revision":"d60013ee8c250799852b56cdf19c7417","url":"simulation/js/canvasjs.min.js"},{"revision":"fc0f1acd190b7b31df41b2593dd1ec5f","url":"simulation/js/cktconnection_monostable.js"},{"revision":"ccdc26836d94879af7f9e199144b165c","url":"simulation/js/graph_use.ob.js"},{"revision":"4d0d94e07e95256e6174d2800c4fa1b7","url":"simulation/js/graph.ob.js"},{"revision":"c5b58cbfac36b593ba894ae14921835a","url":"simulation/js/jquery_files/jquery-1.7.1.min.js"},{"revision":"6b116287002ac0584edcac70eaf2599d","url":"simulation/js/jquery_files/jquery.jqplot.min.js"},{"revision":"6c89663bddd479cc7baee0826f93c968","url":"simulation/js/jquery_files/jquery.min.js"},{"revision":"dafee002a89aea41cff51e6ce3ce4d94","url":"simulation/js/jquery.knob.min.js"},{"revision":"de2a03f7c358bac31c706ebc72b752fd","url":"simulation/js/jsplumb1.js"},{"revision":"cbe21ee49f13dc9256c5e51e3bd11b8a","url":"simulation/js/main.js"},{"revision":"493a18f71e40995fc435cd6d5bce48e2","url":"simulation/js/monostablecal.js"},{"revision":"8bd02e17127050d90542608a1fb18659","url":"simulation/littledot.png"},{"revision":"0e8e478354688958485f326d914220f5","url":"simulation/monostable_multivibrator.html"},{"revision":"4ed3d7e55fa1b32f8bc1b327e936fa1a","url":"theory.html"},{"revision":"1cb772403dda1e3d7b33b7a88435d10c","url":"validator-report.html"}]); + +// Add runtime caching for images, fonts, js, css. +workbox.routing.registerRoute( + ({request}) => request.destination === 'script' || request.destination === 'style' || request.destination === 'font' || request.destination === 'image', + new workbox.strategies.CacheFirst() +); + +// Cache the json data from url https://github.com/exp-adder-circuit-iiith/pretest.json +// workbox.routing.registerRoute( +// ({url}) => url.origin === 'https://github.com' && url.pathname === '/exp-adder-circuit-iiith/pretest.json', +// new workbox.strategies.NetworkFirst() +// ); \ No newline at end of file diff --git a/theory.html b/theory.html new file mode 100644 index 0000000..d48db91 --- /dev/null +++ b/theory.html @@ -0,0 +1,462 @@ +<!DOCTYPE html><html lang="en"><head> + <!--Google Tag Manager--> + <script class="gtm"> + var dataLayer = [{ + 'labName': 'Virtual Lab', + 'discipline': 'Test', + 'college': 'IITKGP', + 'phase': 'Testing', + 'expName': 'MONOSTABLE MULTIVIBRATOR USING IC 555', + 'expShortName': 'monostable-multivibrator' + }]; + + (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': + new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], + j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= + 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); + })(window,document,'script','dataLayer','GTM-5NMQ9NQ'); + </script> + <!--End Google Tag Manager--> + <meta charset="utf-8"> + <meta http-equiv="X-UA-Compatible" content="IE=edge"> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <meta content="" name="description"> + <meta content="" name="author"> + + <meta name="experiment-short-name" content="monostable-multivibrator"> + <meta name="developer-institute" content="IITKGP"> + <meta name="learning-unit" content="MONOSTABLE MULTIVIBRATOR USING IC 555"> + <meta name="task-name" content="Theory"> + + <!-- For iPhone --> + <meta name="msapplication-TileColor" content="#4076e0"> + <!-- Chrome, Firefox OS and Opera --> + <meta name="theme-color" content="#4076e0"> + <!-- Windows Phone --> + <meta name="msapplication-navbutton-color" content="#4076e0"> + <title>Virtual Labs</title> + <link rel="shortcut icon" href="./assets/images/favicon.ico"> + <link rel="stylesheet" href="./assets/css/bootstrap.min.css"> + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/github-markdown-css/4.0.0/github-markdown.min.css" integrity="sha512-Oy18vBnbSJkXTndr2n6lDMO5NN31UljR8e/ICzVPrGpSud4Gkckb8yUpqhKuUNoE+o9gAb4O/rAxxw1ojyUVzg==" crossorigin="anonymous"> + <link href="https://fonts.googleapis.com/css2?family=Open+Sans&family=Raleway&display=swap" rel="stylesheet"> + <link rel="stylesheet" href="./assets/fonts/font-awesome-4.7.0/css/font-awesome.min.css"> + <link rel="stylesheet" href="./assets/css/github-markdown.min.css"> + <link rel="stylesheet" href="./assets/css/vlabs-style.css"> + <link rel="stylesheet" href="./assets/katex_assets/katex.min.css"> + + <script src="./assets/js/jquery-3.4.1.slim.min.js"></script> + <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.5.4/dist/umd/popper.min.js" integrity="sha384-q2kxQ16AaE6UbzuKqyBE9/u/KzioAlnx2maXQHiDX9d4/zp8Ok3f+M7DPm+Ib6IU" crossorigin="anonymous"></script> + <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/js/bootstrap.min.js" integrity="sha384-pQQkAEnwaBkjpqZ8RU1fF1AKtTcHJwFl3pblpTlHXybJjHpMYo79HY3hIi4NKxyj" crossorigin="anonymous"></script> + <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script> + <style> + h1 { + font-size: 1.8rem; + } + h2 { + font-size: 1.4rem; + } + h3 { + font-size: 1.2rem; + } + + h2, h3 { + font-weight: 800; + } + </style> + + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.2.1/css/all.min.css"></head> + <body class="p-0 container-fluid vlabs-page d-flex flex-column justify-content-between"> + <!--Google Tag Manager (noscript)--> + <noscript class="gtm"> + <iframe height="0" src="https://www.googletagmanager.com/ns.html?id=GTM-5NMQ9NQ" style="display:none;visibility:hidden" width="0"> + </iframe> + </noscript> + <!--End Google Tag Manager (noscript)--> + + <header class="vlabs-header sticky-top bg-white"> + <nav class="p-0 navbar navbar-light d-flex align-items-stretch"> + + <button class="navbar-toggler px-4" type="button" onclick="toggle()"> + <span class="navbar-toggler-icon"></span> + </button> + + <div class="d-flex justify-content-center"> + <a href="https://vlab.co.in" class="navbar-brand"> + <img src="./assets/images/vlabs-color-small-moe.jpg" alt="vlabs logo" class="vlabs-logo"> + </a> + </div> + + <div id="headerNavbar" class="d-none border-top flex-grow-1 d-lg-flex align-items-center justify-content-end"> + <div class="svc-rating-display"> + <rating-display spreadsheetid="1x12nhpp0QvnsA6x-O1sV4IA9SAbfVsq_wiexWkutOmU" sheetname="Experiment-Database" columnname="Experiment Short Name" columnvalue="monostable-multivibrator" imagesdirectory="./plugins/svc-rating/images/"> + </rating-display> + </div> <div class="svc-rating-submit"> + <rating-submit title="Rate" this="" experiment=""> + </rating-submit> + </div> <bug-report id="bug-report" title="[BUG REPORT] MONOSTABLE MULTIVIBRATOR USING IC 555" page-type="text" context-info="{"organisation":"Virtual Labs","developer_institute":"IITKGP","expname":"MONOSTABLE MULTIVIBRATOR USING IC 555","labname":"Virtual Lab","phase":"Testing"}" checkbox-json="{"text":["Insufficient Content"],"video":["Insufficient Content"],"assesment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"assessment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"simulation":["Simulation Not Working","Incorrect Results/Observations","Insufficient/Incorrect Instructions"],"DEFAULT":["Page Not Loading","Content Not Visible","Incorrect Content"]}" button_style="border: none; color: #fff; background-color: #288ec8; text-align: center; font-size: 1.05rem; border-radius: 1em;padding: 0.6em 1.2em; margin: 0 10px" position="override" custom_button_class="v-button"></bug-report> + </div> + </nav> + </header> + <div class="container-fluid flex-fill d-flex flex-column vlabs-page-main"> + <div class="row d-flex justify-content-between"> + <div class="flex-column"> + <div class="row py-4 px-4 breadcrumbs"> + <div class="title is-4 tools">Tools</div> + <span class="mx-2"> + <i aria-hidden="true" class="fa fa-angle-right"></i> + </span> + <a href="performance-report.html" class="my-2 mx-3" target="_blank"> + <button class="v-button">Performance Tool</button> + </a> + <a href="validator-report.html" class="my-2 mx-3" target="_blank"> + <button class="v-button">Validation Tool</button> + </a> + </div> + </div> + </div> + <div class="row flex-grow-1 d-flex flex-nowrap flex-column flex-lg-row"> + <div class="modal fade popupmenu" id="popupMenu" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true"> + <div class="modal-dialog modal-dialog-centered modal-dialog-scrollable"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title" id="exampleModalLabel"> + <a href="https://vlab.co.in" class="navbar-brand"> + <img src="./assets/images/vlabs-color-small-moe.jpg" alt="vlabs logo" class="vlabs-logo"> + </a> + </h5> + <button type="button" class="btn-close align-self-center" data-bs-dismiss="modal" aria-label="Close"></button> + </div> + <div class="modal-body nav-menu"> + <div> + <div class="d-flex nav-menu-body"> + <a href="index.html" class="p-2 "> + Aim + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="theory.html" class="p-2 current-item "> + Theory + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="pretest.html" class="p-2 "> + Pretest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="procedure.html" class="p-2 "> + Procedure + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="simulation.html" class="p-2 "> + Simulation + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="posttest.html" class="p-2 "> + Posttest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="references.html" class="p-2 "> + References + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="contributors.html" class="p-2 "> + Contributors + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="feedback.html" class="p-2 "> + Feedback + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + </div> + </div> + </div> + </div> + <div class="nav flex-column sidebar nav-menu flex-shrink-0 px-lg-4 align-items-center align-items-lg-start hidden d-none d-lg-flex" id="menu"> + <div> + <div class="d-flex nav-menu-body"> + <a href="index.html" class="p-2 "> + Aim + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="theory.html" class="p-2 current-item "> + Theory + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="pretest.html" class="p-2 "> + Pretest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="procedure.html" class="p-2 "> + Procedure + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="simulation.html" class="p-2 "> + Simulation + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="posttest.html" class="p-2 "> + Posttest + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="references.html" class="p-2 "> + References + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="contributors.html" class="p-2 "> + Contributors + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + <div> + <div class="d-flex nav-menu-body"> + <a href="feedback.html" class="p-2 "> + Feedback + </a> + + </div> + <div id="t-" class="collapse"> + <div class="px-3 d-flex flex-column tasks align-items-center align-items-lg-start"> + </div> + </div> + </div> + </div> <div class="vlabs-page-content px-5 pb-4 flex-grow-1 markdown-body"> + <div class="text-center fix-spacing"> + <h2 id="monostable-multivibrator-using-ic-555">Monostable Multivibrator using IC 555</h2> + + </div> + <h2 id="theory">Theory</h2> + <p>One of the most versatile linear ICs is the 555 times. It was first introduced in early 1970 by Signetic Corporation giving the name as SE/NE 555 timer. The 555 is a monolithic timing circuit that can produce highly stable time delays or oscillation. The timer basically operates in one of the two modes either as monostable or as an astable multivibrator.</p> + <p>A monostable multivibrator, often called a one-shot multivibrator, is a Pulse generating circuit in which the duration of the pulse is determined by the RC network connected externally to the 555 timer. In a stable or standby state the output of the circuit is approximately zero or at logic-low level. When an external trigger pulse is applied, the output is forced to go high (≅ Vcc). The time the output remains high is determined by the external RC network connected to the timer. AT the end of the timing interval, the output automatically reverts back to its logic-low stable state. The output remains low until the trigger pulse is again applied. Then the cycle repeats. The monostable circuit has only one stable state (output low), hence the name monostable. Normally, the output of the monostable multivibrator is low</p> + <h4 id="555-pin-configuration">555 pin configuration</h4> + <p>The 555 IC is available as an 8-pin metal can as given below.</p> + <div align="center"> + <img src="images/pin-configuration-555-timer-8-pin.png" width="50%"> + <p>Figure 1</p> + </div> + + <p><strong>Pin1 : Grounded Terminal</strong> All the voltages are measured w.r.t. this terminal.<br><strong>Pin2 : Trigger Terminal</strong> This pin is an inverting input to a comparator that is reponsible for transition of flip-flop from set to reset. The output of the timer depends on the amplitude of the external tigger pulse applied to this pin.<br><strong>Pin3 : Output Terminal</strong> Output of the timer is available at this pin. There are two ways in which a load can be connected to the output terminal either between pin 3 and ground pin or between pin 3 and supply pin.<br><strong>Pin4 : Reset Terminal</strong>To disable or reset the timer a negative pulse is applied to this pin due to which it is referred to as reset terminal. When this pin is not to be used, it should be connected to +Vcc to avoid any possibility pf false triggering.<br><strong>Pin5 : Control Voltage Terminal</strong> The function of this terminal is to control the threshold and trigger levels. Thus either the external voltage or apot connected to this pin determines the pulse width of the output waveform. The external voltage applied to this pin can also be used to modulate th eoutput waveform. When this pin is not used, it should be connected to ground through a 0.01uF to avoid any noice problem.<br><strong>Pin6 : Threshold Terminal</strong> This is the noninverting input terminal of comparator 1,which compares the voltage applied to this terminal with a refernce volatge of +2/3 V<sub>CC</sub>. The amplitude of the volatge applied to this terminal is responsible for the set state of flip flop.<br><strong>Pin7 : Discharge Terminal</strong> This pin is connected internally to the collector of transistor and mostly a capacitor is discharge terminal because when transistor saturates, capacitor discharges through the transistor. When the transistor is cutoff, the capacitor charges at a rate determined by external resistor and capacitor.<br><strong>Pin8 : Supply Terminal</strong> A supply voltage of +5V to +18V is applied to this terminal w.r.t. to ground pin.</p> + <h4 id="the-555-timer-as-a-monostable-multivibrator">The 555 Timer as a Monostable Multivibrator</h4> + <p>The schematic of a 555 timer in monostable mode of operation is shown in figure 2. The ciruit details are given below. Pin 1 is grounded. Trigger input is applied to pin 2. In quiescent condition of output this input is kept at +Vcc. To obtain transition of output from stable to quasistable state, a negative-going pulse of naroow width and amplitudeof greater than +2/3 Vcc + is applied to pin 2. Output is taken from pin 3. Pin 4 is usually connected to +Vcc + tp avoid reset. Pin 5 is grounded through a 0.01uF capacitor to avoid noise problem. Pin 6 is shorted to pin 7. A resistor R<sub>A</sub> + is connected between pins 6 and 8. At pin 7 a discharge capacitor is connected while pin 8 is connected to supply V<sub>CC</sub>.</p> + <div align="center"> + <img src="images/mono_ckt_th.png" width="50%"> + <p>Figure 2</p> + </div> + + <h4 id="monostable-operation">Monostable operation:</h4> + <p>According to Figure 1 initially when output is low, that is , the circuit is in a stable state, transistor Q1 is on and the capacitor C is shorted out of the ground. However, upon application of a negative trigger pulse to pin 2, transistor Q1 is turned off, which releases the short circuit across the external capacitor C and drives the output high. The capacitor C now starts charging up toward V<sub>CC</sub> through R<sub>A</sub>. However, when the voltage across the capacitor equals 2/3 V<sub>CC</sub>, comparator 1’s output switches from low to high, which in turn drives the output to its low state via the output of the flip-flop. At the same time, the output of the flip-flop turns transistor Q1 ON, and hence capacitor C rapidly discharges through the transistor. The output of the monostable remains low until a trigger pulse is again applied. Then the cycle reprats. Figure 3 shows the trigger input, output voltage, and capacitor voltage waveform. As shown here, the pulse width of the trigger input must be smaller than the expected pulse width of the output waveform. Also the trigger pulse must be a negative-going input signal with amplitude larger than 1/3 V<sub>CC</sub>.</p> + <div align="center"> + <img src="images/outputwavfrm_mono.png" width="50%"> + <p>Figure 3</p> + </div> + + <h4 id="applications-of-monostable-multivibrator">Applications of monostable multivibrator</h4> + <ol> + <li>The monostable multivibrator is used as delay and timing circuits.</li> + <li>It is also used for temporary memories.</li> + <li>It is often used to trigger another pulse generator.</li> + <li>It is used for regenerating old and worn out pulses.</li> + </ol> + + </div> + <div class="bug-report-mobile"> + <bug-report id="bug-report" title="[BUG REPORT] MONOSTABLE MULTIVIBRATOR USING IC 555" page-type="text" context-info="{"organisation":"Virtual Labs","developer_institute":"IITKGP","expname":"MONOSTABLE MULTIVIBRATOR USING IC 555","labname":"Virtual Lab","phase":"Testing"}" checkbox-json="{"text":["Insufficient Content"],"video":["Insufficient Content"],"assesment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"assessment":["Incorrect Options","Incorrect Answer","Incorrect Question"],"simulation":["Simulation Not Working","Incorrect Results/Observations","Insufficient/Incorrect Instructions"],"DEFAULT":["Page Not Loading","Content Not Visible","Incorrect Content"]}" position="override" button_style=" + position: fixed; + bottom: 20px; + right: 20px; + z-index: 1; + font-size: 0; + padding: 25px; + border-radius: 50%; + border: none; + background-color: #0fc0ff; + background-image: url(data:image/png;base64,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); + background-repeat: no-repeat; + background-position: center; + background-size: 30px; + filter: invert(1);"> + </bug-report> + </div> </div> + </div> + <footer class="text-light pt-2 vlabs-footer d-flex flex-column"> + <div class="row px-5 mx-0"> + <div class="col d-flex flex-column"> + <span class="font-weight-bold vlabs-footer-sect-name pb-2 mb-3">Community Links</span> + <a href="https://www.sakshat.ac.in/" class="text-light">Sakshat Portal</a> + <a href="http://outreach.vlabs.ac.in/" class="text-light">Outreach Portal</a> + <a href="https://vlab.co.in/faq" class="text-light">FAQ: Virtual Labs</a> + </div> + <div class="col d-flex flex-column"> + <span class="font-weight-bold vlabs-footer-sect-name pb-2 mb-3">Contact Us</span> + <span> Phone: General Information: 011-26582050 </span> + <span> Email: support@vlabs.ac.in </span> + </div> + <div class="col d-flex flex-column"> + <span class="font-weight-bold vlabs-footer-sect-name pb-2 mb-3">Follow Us</span> + <div class="social-links"> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #55acee;" href="https://twitter.com/TheVirtualLabs"> + <i class="fab fa-twitter"></i> + </a> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #3b5998;" href="https://www.facebook.com/Virtual-Labs-IIT-Delhi-301510159983871/"> + <i class="fab fa-facebook"></i> + </a> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #e52d27;" href="https://www.youtube.com/watch?v=asxRaOgk6a0"> + <i class="fab fa-youtube"></i> + </a> + <a class="p-2 mt-1 mr-2 d-inline-flex justify-content-center align-items-center" style="background: #2867B2;" href="https://in.linkedin.com/in/virtual-labs-008ba9136"> + <i class="fab fa-linkedin"></i> + </a> + </div> + </div> + </div> + <div class="m-0 py-2 text-center" style="font-family: "Open Sans", sans-serif; background: #212121;"> + <a class="text-primary font-weight-bold" href="https://www.gnu.org/licenses/agpl-3.0.en.html"> AGPL 3.0 </a> + & + <a class="text-primary font-weight-bold" href="https://creativecommons.org/licenses/by-nc-sa/4.0/"> Creative Commons (CC BY-NC-SA 4.0) </a> + </div> + </footer> + <script src="./assets/js/toggleSidebar.js"></script> + <script src="./assets/js/event-handler.js"></script> + + + <script> + if ('serviceWorker' in navigator) { + window.addEventListener('load', () => { + navigator.serviceWorker.register("sw.js"); + }); + } + </script> + + +<script type="module" src="https://virtual-labs.github.io/svc-bug-report/client/src/bug-report.js"></script><script type="module" src="plugins/svc-rating/index.js"></script><script type="module" src="plugins/svc-rating/config.js"></script><script type="module" src="https://apis.google.com/js/api.js"></script></body></html> \ No newline at end of file diff --git a/theory.md b/theory.md new file mode 100644 index 0000000..54a02ba --- /dev/null +++ b/theory.md @@ -0,0 +1,50 @@ +## Theory + +One of the most versatile linear ICs is the 555 times. It was first introduced in early 1970 by Signetic Corporation giving the name as SE/NE 555 timer. The 555 is a monolithic timing circuit that can produce highly stable time delays or oscillation. The timer basically operates in one of the two modes either as monostable or as an astable multivibrator. + +A monostable multivibrator, often called a one-shot multivibrator, is a Pulse generating circuit in which the duration of the pulse is determined by the RC network connected externally to the 555 timer. In a stable or standby state the output of the circuit is approximately zero or at logic-low level. When an external trigger pulse is applied, the output is forced to go high (≅ Vcc). The time the output remains high is determined by the external RC network connected to the timer. AT the end of the timing interval, the output automatically reverts back to its logic-low stable state. The output remains low until the trigger pulse is again applied. Then the cycle repeats. The monostable circuit has only one stable state (output low), hence the name monostable. Normally, the output of the monostable multivibrator is low + +#### 555 pin configuration + +The 555 IC is available as an 8-pin metal can as given below. + +<div align="center"> +<img src="images/pin-configuration-555-timer-8-pin.png" width="50%"> +<p>Figure 1</p> +</div> + +**Pin1 : Grounded Terminal** All the voltages are measured w.r.t. this terminal. +**Pin2 : Trigger Terminal** This pin is an inverting input to a comparator that is reponsible for transition of flip-flop from set to reset. The output of the timer depends on the amplitude of the external tigger pulse applied to this pin. +**Pin3 : Output Terminal** Output of the timer is available at this pin. There are two ways in which a load can be connected to the output terminal either between pin 3 and ground pin or between pin 3 and supply pin. +**Pin4 : Reset Terminal**To disable or reset the timer a negative pulse is applied to this pin due to which it is referred to as reset terminal. When this pin is not to be used, it should be connected to +Vcc to avoid any possibility pf false triggering. +**Pin5 : Control Voltage Terminal** The function of this terminal is to control the threshold and trigger levels. Thus either the external voltage or apot connected to this pin determines the pulse width of the output waveform. The external voltage applied to this pin can also be used to modulate th eoutput waveform. When this pin is not used, it should be connected to ground through a 0.01uF to avoid any noice problem. +**Pin6 : Threshold Terminal** This is the noninverting input terminal of comparator 1,which compares the voltage applied to this terminal with a refernce volatge of +2/3 V<sub>CC</sub>. The amplitude of the volatge applied to this terminal is responsible for the set state of flip flop. +**Pin7 : Discharge Terminal** This pin is connected internally to the collector of transistor and mostly a capacitor is discharge terminal because when transistor saturates, capacitor discharges through the transistor. When the transistor is cutoff, the capacitor charges at a rate determined by external resistor and capacitor. +**Pin8 : Supply Terminal** A supply voltage of +5V to +18V is applied to this terminal w.r.t. to ground pin. + +#### The 555 Timer as a Monostable Multivibrator + +The schematic of a 555 timer in monostable mode of operation is shown in figure 2. The ciruit details are given below. Pin 1 is grounded. Trigger input is applied to pin 2. In quiescent condition of output this input is kept at +Vcc. To obtain transition of output from stable to quasistable state, a negative-going pulse of naroow width and amplitudeof greater than +2/3 Vcc +is applied to pin 2. Output is taken from pin 3. Pin 4 is usually connected to +Vcc +tp avoid reset. Pin 5 is grounded through a 0.01uF capacitor to avoid noise problem. Pin 6 is shorted to pin 7. A resistor R<sub>A</sub> +is connected between pins 6 and 8. At pin 7 a discharge capacitor is connected while pin 8 is connected to supply V<sub>CC</sub>. + + +<div align="center"> +<img src="images/mono_ckt_th.png" width="50%"> +<p>Figure 2</p> +</div> + +#### Monostable operation: +According to Figure 1 initially when output is low, that is , the circuit is in a stable state, transistor Q1 is on and the capacitor C is shorted out of the ground. However, upon application of a negative trigger pulse to pin 2, transistor Q1 is turned off, which releases the short circuit across the external capacitor C and drives the output high. The capacitor C now starts charging up toward V<sub>CC</sub> through R<sub>A</sub>. However, when the voltage across the capacitor equals 2/3 V<sub>CC</sub>, comparator 1’s output switches from low to high, which in turn drives the output to its low state via the output of the flip-flop. At the same time, the output of the flip-flop turns transistor Q1 ON, and hence capacitor C rapidly discharges through the transistor. The output of the monostable remains low until a trigger pulse is again applied. Then the cycle reprats. Figure 3 shows the trigger input, output voltage, and capacitor voltage waveform. As shown here, the pulse width of the trigger input must be smaller than the expected pulse width of the output waveform. Also the trigger pulse must be a negative-going input signal with amplitude larger than 1/3 V<sub>CC</sub>. + +<div align="center"> +<img src="images/outputwavfrm_mono.png" width="50%"> +<p>Figure 3</p> +</div> + +#### Applications of monostable multivibrator +1. The monostable multivibrator is used as delay and timing circuits. +2. It is also used for temporary memories. +3. It is often used to trigger another pulse generator. +4. It is used for regenerating old and worn out pulses. \ No newline at end of file diff --git a/validate.log b/validate.log new file mode 100644 index 0000000..e67eb5d --- /dev/null +++ b/validate.log @@ -0,0 +1,14 @@ +{ + _: [], + f: [ + '/home/runner/work/exp-monostable-multivibrator-iitkgp/exp-monostable-multivibrator-iitkgp/experiment-descriptor.json' + ], + files: [ + '/home/runner/work/exp-monostable-multivibrator-iitkgp/exp-monostable-multivibrator-iitkgp/experiment-descriptor.json' + ], + '$0': 'validate' +} +Json Error: There are additional properties +Json Error: must match "then" schema +Failed while validating /home/runner/work/exp-monostable-multivibrator-iitkgp/exp-monostable-multivibrator-iitkgp/experiment-descriptor.json +Error: Schema is Invalid diff --git a/validator-report.html b/validator-report.html new file mode 100644 index 0000000..ac36a61 --- /dev/null +++ b/validator-report.html @@ -0,0 +1,163 @@ +<!DOCTYPE html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <meta http-equiv="X-UA-Compatible" content="IE=edge"> + <meta name="viewport" content="width=device-width, initial-scale=1.0"/> + <meta content="" name="description"/> + <meta content="" name="author"/> + + + <!-- For iPhone --> + <meta name="msapplication-TileColor" content="#4076e0"> + <!-- Chrome, Firefox OS and Opera --> + <meta name="theme-color" content="#4076e0"> + <!-- Windows Phone --> + <meta name="msapplication-navbutton-color" content="#4076e0"> + <title>Virtual Labs</title> + <link rel="shortcut icon" href="./assets/images/favicon.ico" /> + <link rel="stylesheet" href="./assets/css/bootstrap.min.css" /> + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/github-markdown-css/4.0.0/github-markdown.min.css" integrity="sha512-Oy18vBnbSJkXTndr2n6lDMO5NN31UljR8e/ICzVPrGpSud4Gkckb8yUpqhKuUNoE+o9gAb4O/rAxxw1ojyUVzg==" crossorigin="anonymous" /> + <link + href="https://fonts.googleapis.com/css2?family=Open+Sans&family=Raleway&display=swap" + rel="stylesheet" + /> + <link + rel="stylesheet" + href="./assets/fonts/font-awesome-4.7.0/css/font-awesome.min.css" + /> + <link rel="stylesheet" href="./assets/css/github-markdown.min.css" /> + <link rel="stylesheet" href="./assets/css/vlabs-style.css" /> + <link rel="stylesheet" href="./assets/katex_assets/katex.min.css" /> + + <script src="./assets/js/jquery-3.4.1.slim.min.js"></script> + <script + src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.5.4/dist/umd/popper.min.js" + integrity="sha384-q2kxQ16AaE6UbzuKqyBE9/u/KzioAlnx2maXQHiDX9d4/zp8Ok3f+M7DPm+Ib6IU" + crossorigin="anonymous" + ></script> + <script + src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/js/bootstrap.min.js" + integrity="sha384-pQQkAEnwaBkjpqZ8RU1fF1AKtTcHJwFl3pblpTlHXybJjHpMYo79HY3hIi4NKxyj" + crossorigin="anonymous" + ></script> + <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script> + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css"> + <link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/virtual-labs/virtual-style@0.0.6-b/css/style.min.css"> + <link rel="stylesheet" href="plugins/tool-validation/css/main.css"> + </head> + + <body> + <div> + <div class="columns is-mobile is-centered is-vcentered"> + <div class="column is-2"> + <a href="http://vlab.co.in" class="navbar-brand"> + <img src="./assets/images/vlabs-color-small-moe.jpg" alt="vlabs logo" class="vlabs-logo"> + </a> + </div> + <div class="column is-8 has-text-centered"> + <div class="title is-2"> + <h2 id="monostable-multivibrator-using-ic-555">Monostable Multivibrator using IC 555</h2> + + </div> + </div> + <div class="column is-2"> + </div> + </div> + </div> + + + <div class="columns is-mobile is-centered is-flex"> + <div class="column has-text-centered"> + <div class="title">Validator</div> + </div> + </div> + + + <div class="columns is-mobile is-centered is-flex"> + <div class="column is-4-desktop is-3-mobile is-3-tablet has-text-centered"> + <div class="panel"> + <label for="checkbox-eslint" class="v-checkbox"> + <input type="checkbox" id="checkbox-eslint" class="v-checkbox-input" checked onclick="toggleEslint()"> + ESLint + </label> + + <label for="checkbox-https" class="v-checkbox"> + <input type="checkbox" id="checkbox-https" class="v-checkbox-input" checked onclick="toggleHttps()"> + HTTPS + </label> + + <label for="checkbox-descriptor" class="v-checkbox"> + <input type="checkbox" id="checkbox-descriptor" class="v-checkbox-input" checked onclick="toggleDescriptor()"> + Descriptor + </label> + + <label for="checkbox-assesment" class="v-checkbox"> + <input type="checkbox" id="checkbox-assesment" class="v-checkbox-input" checked onclick="toggleAssesment()"> + Assesment + </label> + + + <div class="panel-label"> + Severity + </div> + <label for="checkbox-warning" class="v-checkbox"> + <input type="checkbox" id="checkbox-warning" class="v-checkbox-input" checked onclick="toggleWarning()"> + Warning + </label> + + <label for="checkbox-error" class="v-checkbox"> + <input type="checkbox" id="checkbox-error" class="v-checkbox-input" checked onclick="toggleError()"> + Error + </label> + + + <button class="v-button small-btn" onclick="collapseAll()">Collapse All</button> + </div> + </div> + <div class="column is-8-desktop is-9-mobile is-9-tablet has-text-centered"> + <div id="eslint" class="card"> + <div class="card-title"> + ESLint + </div> + <div id="eslint-collapse-icon" class="collapse-icon" onclick="collapseEslint()"> + <i class="fa fa-chevron-down"></i> + </div> + <div id="output-eslint" class="card-content"> + </div> + </div> + <div id="https" class="card"> + <div class="card-title"> + HTTPS + </div> + <div id="https-collapse-icon" class="collapse-icon" onclick="collapseHttps()"> + <i class="fa fa-chevron-down"></i> + </div> + <div id="output-https" class="card-content"> + </div> + </div> + <div id="descriptor" class="card"> + <div class="card-title"> + Experiment Descriptor + </div> + <div id="https-collapse-icon" class="collapse-icon" onclick="collapseDescriptor()"> + <i class="fa fa-chevron-down"></i> + </div> + <div id="output-descriptor" class="card-content"> + </div> + </div> + <div id="assesment" class="card"> + <div class="card-title"> + Assesment Task + </div> + <div id="https-collapse-icon" class="collapse-icon" onclick="collapseAssesment()"> + <i class="fa fa-chevron-down"></i> + </div> + <div id="output-assesment" class="card-content"> + </div> + </div> + </div> + </div> + <script type="module" src="plugins/tool-validation/js/main.js"></script> + </body> +</html>